Не удается получить идентификатор Linkedin после успешного входа в систему с Linkedin на Android-приложении? - PullRequest
2 голосов
/ 03 ноября 2011

Я использую Linkedin для подключения к своему приложению.Мне нужен идентификатор пользователя, токен и token_secret.Я получаю два токена, но не могу получить идентификатор текущего зарегистрированного пользователя!

Строка: p.getId(); отправьте мне нулевое значение.

Вот мой код:

String verifier = intent.getData().getQueryParameter("oauth_verifier");

    LinkedInAccessToken accessToken = oAuthService.getOAuthAccessToken(liToken, verifier);
    client = factory.createLinkedInApiClient(accessToken);
    client.postNetworkUpdate("LinkedIn Android app test");
    Person p = client.getProfileForCurrentUser();

    System.out.println("TEST "+client.getProfileForCurrentUser());

    System.out.println("Token  "+accessToken.getToken());

    System.out.println("Secret  "+accessToken.getTokenSecret());

    System.out.println("NOM "+p.getLastName() + ", PRENOM" + p.getFirstName());

    Person profile = client.getProfileForCurrentUser(EnumSet.of(ProfileField.FIRST_NAME, ProfileField.LAST_NAME, ProfileField.CERTIFICATIONS_ID));
    //System.out.println("IDDDDD"+profile.getId());

    Connections connections = client.getConnectionsForCurrentUser();
    System.out.println("Total connections fetched:" + connections.getTotal());
    for (Person person : connections.getPersonList()) {
            System.out.println(person.getId() + ":" + person.getFirstName() + " " + person.getLastName() + ":" + person.getHeadline());
    }

Помогите!Спасибо!

Ответы [ 2 ]

0 голосов
/ 10 апреля 2014

Изменить это:

Person profile = client.getProfileForCurrentUser(EnumSet.of(ProfileField.FIRST_NAME, ProfileField.LAST_NAME, ProfileField.CERTIFICATIONS_ID));
    //System.out.println("IDDDDD"+profile.getId());

с этим:

final Person user_Profile = client.getProfileForCurrentUser(EnumSet.of(ProfileField.ID)); person = client.getProfileById(user_Profile.getId(), EnumSet.of(ProfileField.FIRST_NAME,
                            ProfileField.LAST_NAME));
System.out.println("IDDDDD"+profile.getId());
0 голосов
/ 15 июня 2012

Пожалуйста, замените эту строку,

Person profile = client.getProfileForCurrentUser(EnumSet.of(ProfileField.FIRST_NAME, ProfileField.LAST_NAME, ProfileField.CERTIFICATIONS_ID));

с

Person profile = client.getProfileForCurrentUser(EnumSet.of(ProfileField.FIRST_NAME, ProfileField.LAST_NAME, ProfileField.ID));

Для получения идентификатора следует использовать ProfileField.ID вместо ProfileField.CERTIFICATIONS_ID

...