初始化和登录

  1. 在此创建一个新应用程序: 创建应用程序
  2. 选择独立应用程序并通过短信确认应用程序创建。
  3. Android 的包名称填充为你当前的包名称。你可以在最初的 android 清单文件中获取你的包名。
  4. 通过在 shell / cmd 中执行此命令获取证书指纹
keytool -exportcert -alias androiddebugkey -keystore path-to-debug-or-production-keystore -list -v

你也可以通过 SDK 本身获取此指纹:

String[] fingerprints = VKUtil.getCertificateFingerprint(this, this.getPackageName());
Log.d("MainActivity", fingerprints[0]);
  1. 将收到的指纹添加到 Android 的签名证书指纹: Vk 应用程序设置中的字段(你输入包名称的位置)

  2. 然后将其添加到你的 gradle 文件中:

compile 'com.vk:androidsdk:1.6.5'
  1. 使用以下方法在启动时初始化 SDK。最好的方法是在 Applications onCreate 方法中调用它。
private static final int VK_ID = your_vk_id;
public static final String VK_API_VERSION = "5.52"; //current version
@Override
    public void onCreate() {
        super.onCreate();
        VKSdk.customInitialize(this, VK_ID, VK_API_VERSION);
}

这是初始化 VKSdk 的最佳方式。不要使用其中 VK_ID 应该放在 strings.xml 中的 methid,因为 api 在它之后将无法正常工作。

  1. 最后一步是使用 vksdk 登录。
    public static final String[] VK_SCOPES = new String[]{
            VKScope.FRIENDS,
            VKScope.MESSAGES,
            VKScope.NOTIFICATIONS,
            VKScope.OFFLINE,
            VKScope.STATUS,
            VKScope.STATS,
            VKScope.PHOTOS
    };

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
    
        someButtonForLogin.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
               VKSdk.login(this, VK_SCOPES); 
            }
        });
 
    }

    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        VKSdk.onActivityResult(requestCode, resultCode, data, new VKCallback<VKAccessToken>() {
            @Override
            public void onResult(VKAccessToken res) {
                res.accessToken; //getting our token here.
            }

            @Override
            public void onError(VKError error) {
                Toast.makeText(SocialNetworkChooseActivity.this,
                        "User didn't pass Authorization", Toast.LENGTH_SHORT).show();
            }
        });
    }