내 응용 프로그램에 Facebook
로그인을 통합 중입니다. 읽기 권한을 얻을 수 있지만 Facebook SDK에서 권한을 게시하는 방법은 얻을 수 있습니다. 사용자가 내가 access_token
을 얻을 수 있어요 권한을 부여하는 경우Facebook에서 읽기 권한을 얻은 후 publish_action 권한을 받으십시오.
@Override
public void onClick(View v) {
Session currentSession = Session.getActiveSession();
if (currentSession == null
|| currentSession.getState().isClosed()) {
Session session = new Session.Builder(context).build();
Session.setActiveSession(session);
currentSession = session;
}
if (currentSession.isOpened()) {
// Do whatever u want. User has logged in
} else if (!currentSession.isOpened()) {
// Ask for username and password
OpenRequest op = new Session.OpenRequest((Activity) context);
op.setLoginBehavior(SessionLoginBehavior.SSO_WITH_FALLBACK);
op.setCallback(null);
List<String> permissions = new ArrayList<String>();
permissions.add("user_likes");
permissions.add("email");
permissions.add("user_birthday");
permissions.add("user_location");
permissions.add("user_interests");
permissions.add("friends_birthday");
op.setPermissions(permissions);
Session session = new Builder(MainActivity.this).build();
Session.setActiveSession(session);
session.openForRead(op);
}
}
});
및 onActivityResult
내 일을 : 내가 읽기에 대한 사용 권한을 요청하고있어 어떻게
이입니다. 다음은 그와 함께하고 있어요 무엇 : 여기 Permissions - Facebook Developers 설명 된대로
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (Session.getActiveSession() != null)
Session.getActiveSession().onActivityResult(this, requestCode,
resultCode, data);
Session currentSession = Session.getActiveSession();
if (currentSession == null || currentSession.getState().isClosed()) {
Session session = new Session.Builder(context).build();
Session.setActiveSession(session);
currentSession = session;
}
if (currentSession.isOpened()) {
Session.openActiveSession(this, true, new Session.StatusCallback() {
@Override
public void call(final Session session, SessionState state,
Exception exception) {
if (session.isOpened()) {
Request.executeMeRequestAsync(session,
new Request.GraphUserCallback() {
@Override
public void onCompleted(GraphUser user,
Response response) {
if (user != null) {
TextView welcome = (TextView) findViewById(R.id.welcome);
TextView access_token_txt = (TextView) findViewById(R.id.access_token);
TextView email_txt = (TextView) findViewById(R.id.email);
access_token = session.getAccessToken();
firstName = user.getFirstName();
fb_user_id = user.getId();
access_token_txt.setText(access_token);
JSONObject graphResponse = response
.getGraphObject().getInnerJSONObject();
fbEmail = null;
try {
fbEmail = graphResponse.getString("email");
} catch (JSONException e) {
e.printStackTrace();
}
email_txt.setText(fbEmail);
}
}
});
}
}
});
}
}
것은 내가 읽기 권한으로 권한을 게시 요청 캔트, Facebook Developer
문서를 읽었습니다.
첫 번째 사용자는 읽기를 요청해야하며 사용자가이를 자동 작성하면 게시 권한을 요청할 수 있습니다.
Facebook에서 게시 권한을 얻으려면 어떻게해야합니까? 사용자에게 읽기 권한이 부여 된 후 로그인합니다.
모든 종류의 도움을 주실 수 있습니다.
로그인 페이스 북에 붙어 있습니다. 기본 앱을 사용할 수있을 때 로그인 할 수 있지만 기본 앱을 사용할 수없는 경우 로그인하고 앱을 승인 할 수 없습니다. 여기 내 질문은 당신이 대답을 제공 할 수 있습니다. [http://stackoverflow.com/questions/21336314/facebook-after-login-not-coming-back-but-asking-login-again] –
질문에 댓글을 달았습니다. 작동한다면 답해주세요. – Anupam