[英]Login with extra permission with Facebook SDK 3 for Android
我在https://developers.facebook.com/docs/getting-started/facebook-sdk-for-android/3.0/中執行了“使用Facebook登錄創建新的Android項目”部分的步驟,登錄過程很好。 因為我想使用本機Android按鈕供用戶登錄,所以我通過將以下代碼移動到本機Android按鈕的View.OnClickListener()中,對代碼進行了一些修改。 以下是偵聽器中的代碼:
Session.openActiveSession(MainActivity.this, true, new Session.StatusCallback() {
// callback when session changes state
@Override
public void call(Session session,SessionState state, Exception exception) {
if (session.isOpened()) {
// make request to the /me API
Request.executeMeRequestAsync(session,new Request.GraphUserCallback() {
// callback after Graph API
// response with user object
@Override
public void onCompleted(GraphUser user,Response response) {
if (user != null) {
Toast.makeText(getApplicationContext(), "Hello " + user.getName() +" "+user.getId()+"!", Toast.LENGTH_LONG).show();
}
}
});
}
}
});
onActivityResult()和AndroidManifest.xml與本教程相同
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
Session.getActiveSession().onActivityResult(this, requestCode, resultCode, data);
}
但是,當用戶成功登錄時,我想請求獲取“ read_friendlists”。 我在https://developers.facebook.com/docs/tutorials/androidsdk/3.0/scrumptious/authenticate/中閱讀了該教程,但是它使用了Facebook SDK自定義按鈕。 如何使用Android本機按鈕實現相同的行為,如上面的代碼所示?
我在另一個帖子上回答了類似的問題。 我的解決方案允許您在用戶首次登錄時使用本機按鈕並請求其他讀取權限。在此處進行檢查要求使用3.0 SDK的更多權限
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.