Интеграция Linkedin V2.0 / OAuth2.0 в приложение для Android - PullRequest
0 голосов
/ 22 января 2019

Я реализовал функцию входа в LinkedIn с помощью linkedin-sdk в одном из моих приложений, которое работало отлично. С последних нескольких дней я не могу продолжить с ошибкой с указанием

токен доступа не установлен

, который раньше не был нужен.

С обновлением версии 2.0 токен доступа стал обязательным, а данные отсутствуют в учетной записи разработчика.

Warning message from LinkedIn attached.

Я реализовал то же самое следующим образом:

private static final String host = "api.linkedin.com";

private static final String url = "https://" + host + "/v1/people/~:(first-name,last-name,email-address,formatted-name,phone-numbers,public-profile-url,picture-url,picture-urls::(original))";

LISessionManager.getInstance(getContext())
.init(getActivity(), buildScope(), new AuthListener() {

@Override
public void onAuthSuccess() {

APIHelper apiHelper = APIHelper.getInstance(getContext());
apiHelper.getRequest(getContext(), url, new ApiListener() {
@Override
public void onApiSuccess(ApiResponse apiResponse) {
try {
//edt_linkedInURL.setText(apiResponse.getResponseDataAsJson().get("publicProfileUrl").toString());
Log.e("Response", apiResponse.getResponseDataAsJson().toString());
setLinkedInData(apiResponse.getResponseDataAsJson());
} catch (Exception e) {
e.printStackTrace();
}
}

@Override
public void onApiError(LIApiError LIApiError) {
Toast.makeText(getContext(), "Profile failed " + LIApiError.toString(), Toast.LENGTH_LONG).show();
}
});

/* Toast.makeText(getActivity(), "success" +
LISessionManager.getInstance(getActivity())
.getSession().getAccessToken().getValue(),
Toast.LENGTH_LONG).show();*/
}

@Override
public void onAuthError(LIAuthError error) {
try {
JSONObject object = new JSONObject(error.toString());
C.INSTANCE.showToast(getContext(), object.optString("errorMessage"));
} catch (Exception e) {
Toast.makeText(getContext(), "Failed to get data with LinkedIn", Toast.LENGTH_LONG).show();
}
}
}, true);

private static Scope buildScope() {
return Scope.build(Scope.R_BASICPROFILE, Scope.R_EMAILADDRESS, Scope.W_SHARE);

}

Как создать токен доступа с подробной информацией о том, как интегрировать V2 / OAuth2.0 в приложение?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...