Я создал приложение на странице Facebook для разработчиков; с именем пакета Google Play, установленным в com.seananderson.myapplication, которое соответствует имени, используемому в моем приложении, и именем класса, установленным в com.seananderson.myapplication.FacebookFragment, который является классом / фрагментом, который обрабатывает мою регистрационную информацию Facebook.
В моем классе у меня есть:
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
myView = inflater.inflate(R.layout.fragment_facebook, container, false);
LoginButton loginButton = myView.findViewById(R.id.login_button);
loginButton.setReadPermissions(Arrays.asList("email"));
AccessToken accessToken = AccessToken.getCurrentAccessToken();
if (accessToken == null || accessToken.isExpired()) {
LoginManager.getInstance().logOut();
}
callbackManager = CallbackManager.Factory.create();
loginButton.registerCallback(callbackManager, new FacebookCallback<LoginResult>() {
@Override
public void onSuccess(LoginResult loginResult) {
tokenValue = loginResult.getAccessToken().getToken();
TextView pageNameTV = myView.findViewById(R.id.txtPageID);
String pageName = pageNameTV.getText().toString();
new RetrieveFacebookCounter().execute([APICalls]);
}
@Override
public void onCancel() {
mListener.onCancel();
}
@Override
public void onError(FacebookException error) {
mListener.onError(error.toString());
}
});
У меня две проблемы:
(1) Когда я отлаживаю приложение, оно запрашивает меня КАЖДЫЙ раз; вместо запоминания деталей токена.
(2) Я вижу (из шага кода), что когда код выполняет строку для loginButton.registerCallback , консоль показывает следующую ошибку:
E / GraphResponse: {HttpStatus: 400, errorCode: 100, subErrorCode: 33,
errorType: GraphMethodException, errorMessage: не поддерживается get
запрос. Объект с идентификатором ' [отредактирован] ' не существует, не может быть
загружен из-за отсутствия разрешений или не поддерживает эту операцию.
Пожалуйста, ознакомьтесь с документацией Graph API на
https://developers.facebook.com/docs/graph-api}
Приложение работает нормально, после того как я вхожу в систему, но нужно, чтобы он запомнил мои данные при следующем использовании приложения.
Я отредактировал детали в новом RetrieveFacebookCounter (). Execute ([APICalls]); ; как они работают.
Любые советы / рекомендации будут приветствоваться.