2014-03-05 40 views
0
發佈

我使用一個Facebook sharedialog分享信息和圖像拍攝格式的URL的網絡資源(FB方法是如何獲得許可後才能上傳照片,並在Facebook上

setPicture(URL string)). 

不過,我希望用戶可以能夠從SD卡上傳圖像。 所以我通過圖像路徑的文件到

Request.newUploadPhotoRequest(session, imageSelected, uploadPhotoRequestCallback); 

方法。

然後我得到的URL在回調並將其傳遞給FacebookDialog.ShareDialogBu​​ilder對象的 的setPicture(URL)。

問題是用戶必須首先批准FB相冊中的照片以共享其時間線,然後讓URL通過setPicture()發佈。

的消息,我得到了Facebook:

你想將這些照片添加到您的相冊? 以下的照片是從其他應用上傳的,因此您需要批准這些照片。

所以我想知道這是一個權限問題,如果是的話,我該如何去獲得所需的權限?

我不熟悉Facebook SDK和SSO,但是如果用戶具有FB應用程序權限時使用共享對話框,則在第一次登錄時詢問並且此後不需要。

不能理解我可以如何使用共享對話框發佈網絡資源,但不上傳照片。

我使用的會話代碼是:

//打開一個會話協議,以每股FB對話指令

//start a session 
Session.openActiveSession(this, true, new Session.StatusCallback() { 



@Override 
public void call(final Session session, SessionState state, Exception exception) { 
//callback when session changes state 
//request a photo upload 
//use share dialog to post the URL of image 

回答

0

後通過谷歌和FB的開發者網站搜索的時間是添加此的mtter代碼:// 要求addtional權限,上傳照片 Session.NewPermissionsRequest

newPermissionsRequest = new Session 
             .NewPermissionsRequest(LogDive.this, Arrays.asList("publish_actions", "publish_stream")); 
            session.requestNewPublishPermissions(newPermissionsRequest); 

FB開發人員網站對使用共享對話框概述基本權限非常困惑。