Я пытаюсь создать простой вход в приложение facebook (с FB api v4.0) и получить некоторые данные о пользователе, но по какой-то причине мне удается войти в систему и получить данные только из моего личного профиля facebook, если я пытался войти в систему с профилем других пользователей я получаю null. (Я меняю настройку разработчика facebook на общедоступное приложение).
это часть моего loginButton_Fragment:
private CallbackManager callbackManager;
private FacebookCallback<LoginResult> facebookCallback = new FacebookCallback<LoginResult>() {
@Override
public void onSuccess(LoginResult loginResult) {
AccessToken accessToken = loginResult.getAccessToken();
Profile profile = Profile.getCurrentProfile();
Log.d("koko",accessToken.toString() );
if (profile != null){
GraphRequest request = GraphRequest.newMeRequest(
accessToken,
new GraphRequest.GraphJSONObjectCallback() {
@Override
public void onCompleted(
JSONObject object,
GraphResponse response) {
try {
user_birthDay = object.getString("birthday");
} catch (JSONException e) {
e.printStackTrace();
}
}
});
Bundle parameters = new Bundle();
parameters.putString("fields", "id,name,birthday");
request.setParameters(parameters);
request.executeAsync();
user_name = profile.getName();
user_id = profile.getId();
Log.d("koko","first " +user_name + " " + user_id + " " + user_birthDay );
Handler handler = new Handler();
handler.postDelayed(new Runnable() {
@Override
public void run() {
comm.respone(user_name, user_id, user_birthDay);
}
}, 500);
}
}
@Override
public void onCancel () {
}
@Override
public void onError (FacebookException e){
}
};
Каждый раз, когда я вхожу в систему, я попадаю в onSuccess, но если это не мой личный профиль, значит, профиль нулевой.