我想获取用户相册名称和ID的列表。您需要为此添加权限users_photos
。
我创建了一个名为fetchAlbums
的方法,并在其中请求其他权限。但是当弹出权限对话框时,方法的其余部分已经执行(没有所需的权限!)。
最好的方法是什么,在活动的onCreate
中添加权限?
private void fetchAlbumsFromFB() {
Session session = Session.getActiveSession();
// make a new async request
Bundle params = new Bundle();
params.putString("fields", "id, name");
new Request(
session,
"/me/albums",
params,
HttpMethod.GET,
new Request.Callback() {
public void onCompleted(Response response) {
// use response id to upload photo to that album
//errText.setText("New Album created response: " + response.toString());
//need to get the newly created album ID.
try{
JSONObject graphResponse =response.getGraphObject().getInnerJSONObject();
Toast.makeText(getApplicationContext(), "Albums " + graphResponse.toString(), Toast.LENGTH_LONG).show();
}
catch (Exception e) {
e.printStackTrace();
albID = null;
}
}
}
).executeAsync();
}
答案 0 :(得分:0)
当用户第一次对应用进行身份验证时,最好在起点请求user_photos
权限。
由于它不是扩展/发布权限,因此它将与基本权限一起被询问,用户也不会打扰;否则用户会一次又一次地看到权限对话框,这会让他感到沮丧。
我想,在这种情况下,这个问题也将得到解决。