VKSdk.initialize(VKSdkListener listener, String appId, VKAccessToken token);
VKSdk.authorize(String... scope);
VKSdk.authorize(String[] scope, boolean revoke, boolean forceOAuth);
@Override protected void onResume() { super.onResume(); VKUIHelper.onResume(this); } @Override protected void onDestroy() { super.onDestroy(); VKUIHelper.onDestroy(this); } @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { VKUIHelper.onActivityResult(requestCode, resultCode, data); }
public class LoginActivity extends Activity { private static String sTokenKey = "VK_ACCESS_TOKEN"; private static String[] sMyScope = new String[]{VKScope.FRIENDS, VKScope.WALL, VKScope.PHOTOS, VKScope.NOHTTPS}; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); VKSdk.initialize(sdkListener, "id_", VKAccessToken.tokenFromSharedPreferences(this, sTokenKey)); setContentView(R.layout.activity_login); VKSdk.authorize(sMyScope, true, false); } @Override protected void onResume() { super.onResume(); VKUIHelper.onResume(this); } @Override protected void onDestroy() { super.onDestroy(); VKUIHelper.onDestroy(this); } @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { VKUIHelper.onActivityResult(requestCode, resultCode, data); } private VKSdkListener sdkListener = new VKSdkListener() { @Override public void onCaptchaError(VKError captchaError) { new VKCaptchaDialog(captchaError).show(); } @Override public void onTokenExpired(VKAccessToken expiredToken) { VKSdk.authorize(sMyScope); } @Override public void onAccessDenied(VKError authorizationError) { new AlertDialog.Builder(LoginActivity.this) .setMessage(authorizationError.errorMessage) .show(); } @Override public void onReceiveNewToken(VKAccessToken newToken) { newToken.saveTokenToSharedPreferences(LoginActivity.this, sTokenKey); Intent i = new Intent(LoginActivity.this, MainActivity.class); startActivity(i); } @Override public void onAcceptUserToken(VKAccessToken token) { Intent i = new Intent(LoginActivity.this, MainActivity.class); startActivity(i); } }; }
VKRequest request = VKApi.users().get();
VKRequest request = new VKRequest("status.get");
VKRequest request = VKApi.users().get(VKParameters.from(VKApiConst.USER_IDS, "1,2"));
VKRequest request = new VKRequest("friends.get", VKParameters.from(VKApiConst.FIELDS, "sex,bdate,city"));
VKRequest request = VKApi.uploadWallPhotoRequest(VKUploadImage image, int user_id, int group_id); VKRequest request = VKApi.uploadAlbumPhotoRequest(VKUploadImage image, int album_id, int group_id); VKRequest request = VKApi.uploadWallPhotoRequest(File image, int user_id, int group_id); VKRequest request = VKApi.uploadAlbumPhotoRequest(File image, int album_id, int group_id);
// . API Error . // : 1. 0 infinity. request.attempts = 0; // (HTTPS). // false scope (nohttps). // : true. request.secure = false; // ( ). // false - . // : true. useSystemLanguage = false; // false , SDK. // : true. request.parseModel = false;
request.executeWithListener(VKRequestListener listener);
method request.executeWithListener(VKRequestListener listener);
request.executeWithListener(new VKRequestListener() { @Override public void onComplete(VKResponse response) { // response. } @Override public void onError(VKError error) { // . error. } @Override public void attemptFailed(VKRequest request, int attemptNumber, int totalAttempts) { // . . } });
VKBatchRequest batch_req = new VKBatchRequest(VKRequest... requests);
batch_req.executeWithListener(new VKBatchRequestListener() { @Override public void onComplete(VKResponse[] responses) { // responses ( , ) } @Override public void onError(VKError error) { // . error. } });
parseModel = false;
and independently process the received JSON. Otherwise, it is enough to bring the resulting object to the required type.
Source: https://habr.com/ru/post/209974/