4

クライアント ソーシャル ネットワーク VKontakte から取得したユーザー データを使用する必要があるアプリケーションを作成しています。VKontakte を承認しました。

VKSdk.initialize(sdkListener, String.valueOf(idVK), VKAccessToken.tokenFromSharedPreferences(this, sTokenKey));

AccessTokenを取得しました。今、私は名前と電子メールユーザーを取得しますか?

4

3 に答える 3

8

ユーザーからメール スコープをリクエストし、アクセス トークンからメールを取得できます。

String email = VKSdk.getAccessToken().email;
String userId = VKSdk.getAccessToken().userId;

//Get user info
VKApi.users().get().executeWithListener(new VKRequest.VKRequestListener() {
    @Override
    public void onComplete(VKResponse response) {
        VKApiUser user = ((VKList<VKApiUser>)response.parsedModel).get(0);
        Log.d("User name", user.first_name + " " + user.last_name);
    }
});

ただし、メールは最初のアクセス要求後にのみ利用できることを覚えておいてください。

古い答え:

メールが届きません。これは利用できません。ただし、ユーザー名を取得できます:

VKApi.users().get().executeWithListener(new VKRequest.VKRequestListener() {
    @Override
    public void onComplete(VKResponse response) {
        VKApiUser user = ((VKList<VKApiUser>)response.parsedModel).get(0);
        Log.d("User name", user.first_name + " " + user.last_name);
    }
});

于 2014-03-24T08:21:50.657 に答える
0

ユーザーにログインした後、このコードを使用します

 final VKRequest request = VKApi.users().get(VKParameters.from(VKApiConst.FIELDS, "photo_200, contacts"));
        request.executeWithListener(new VKRequest.VKRequestListener() {
            @Override
            public void onComplete(VKResponse response) {
                VKApiUserFull user = ((VKList<VKApiUserFull>)response.parsedModel).get(0);
                NavigationHelper.replaceFragment(getActivity().getSupportFragmentManager(), FrHome.newInstance(String.format("%s %s,", user.first_name, user.last_name), user.mobile_phone, user.photo_200), false);
            }
        });

ここで見つけることができるフィールドを一覧表示します https://vk.com/dev/users.get

于 2014-07-23T19:47:38.767 に答える