![](/img/trans.png)
[英]How to create facebook album and upload photos to the facebook album using android java?
[英]In Android how to add user_photos permission to get the facebook album photos?
我正在使用facebook android sdk访问用户的脸书专辑和实习生获取照片。 但是,当我执行"https://graph.facebook.com/"+wallAlbumID+"/photos?access_token="+facebook.getAccessToken()
它会返回空白数据。 { "data": [] }
我在stackoverflow问题和Graph API for Photo中user_photos
了我需要在创建facebook对象时给予user_photos
权限。 我不知道该怎么做。我阅读了很多论坛,并检查了SOF,但找不到解决方案。
这就是我创建facebook对象的方式
facebook = new Facebook(APP_ID);
任何人都可以帮我这个。
您需要创建要访问的权限的ArrayList
。 例如,当我这样做时,在声明变量时。
private static final String[] PERMISSIONS = { "user_photos" };
然后,在实现用户登录区域时:
if (!facebook.isSessionValid()) {
facebook.authorize(this, PERMISSIONS, new LoginDialogListener());
}
希望这可以帮助!
您需要使用Facebook SDK 3.0+。 此外,在FB站点的开发人员设置中启用OAuth客户端登录流程 。 然后您可以使用以下代码:
首先,将用户登录到应用程序内部的FB以获取Session对象,然后在未授权的情况下请求user_photos的权限:
// start Facebook Login Session.openActiveSession(this, true, new Session.StatusCallback() { // callback when session changes state @Override public void call(Session session, SessionState state, Exception exception) { if (session.isOpened()) { // check for permission to see user photos if (!hasPhotoPermissions()) session.requestNewPublishPermissions(new Session.NewPermissionsRequest(MyActivity.this, "user_photos")); else { // photos permission granted, fetch user's albums fetchAlbumsFromFB(session); } } } });
这是hasPhotoPermissions()方法的样子:
private boolean hasPhotoPermissions() { Session session = Session.getActiveSession(); return session.getPermissions().contains("user_photos"); }
然后,您的应用会将照片权限屏幕显示给用户以供审批。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.