[英]iOS facebook sdk how to download album, profile photos data
我想允許我的iPhone App用戶查看並從他們的Facebook個人資料照片中選擇,下載照片以用作個人資料照片。 我目前正在使用Facebook SSO SDK並成功登錄並訪問Graph信息。 嘗試訪問照片信息(成功登錄SSO后)使用
[facebook requestWithGraphPath:@"me/albums"];
但我只是得到一個空的數據對象作為回報。 我嘗試過使用Facebook API資源管理器 ,它非常有用,它確實為我提供了/ picture和/ photos / / album的數據。 出於某種原因,我沒有使用requestWithGraphPath與我/專輯,我/圖片或我/照片獲得相同的數據。 只是簡單的“我”工作正常,但沒有給我任何圖片信息。 誰能告訴我我做錯了什么?
注意:這是API參考: Facebook Graph API
我確實得到了這樣的圖片配置文件:
[facebook requestWithGraphPath:@"me?fields=picture"];
更新:我真的想要所有的配置文件照片,這是一個相冊,所以我需要知道如何通過iOS訪問相冊。 我現在已成功獲得的個人資料圖片。
我根據API為相冊添加了“user_photos”和“friends_photos”權限:
NSArray *permissions = [[NSArray alloc] initWithObjects:
@"user_likes",
@"user_birthday",
@"email",
@"publish_stream",
@"publish_actions",
@"user_photos",
@"friends_photos",
nil];
[facebook authorize:permissions];
當我說我得到空數據時,這是返回的JSON結果(在request:didLoad :)中:
{
data = (
);
}
從我的日志文件輸出:
- (void) request:(FBRequest *)request didLoad:(id)result{
NSLog(@"%@",result);
}
最后注意:最終工作的是使用另一個設備,它更新了我的權限,然后一切都開始工作了! 我最好的猜測是模擬器和我的iPhone沒有更新我的Facebook權限,所以我被拒絕訪問照片和獲取空數據陣列。
這個問題也是一個很大的幫助: 如何在iPhone SDK中獲取Facebook相冊的照片?
為了未來的觀眾,我正在回答我自己的問題,因為我還沒有收到其他人的完整答案。
首先,您必須擁有正確的權限, "user_photos"
或"friends_photos"
。 然后你必須確保你的測試設備更新你的權限 - 我認為重新啟動設備是最終為我做的。
完成后,您可以使用此調用通過SSO登錄后獲取相冊的JSON列表:
[facebook requestWithGraphPath:@"me/albums" andDelegate:self];
這將為JSON數組(在關鍵data
)提供有關每個專輯的各種信息,包括ID。 要獲取特定相冊ID的照片列表(例如“123456789”),請執行以下操作:
NSString * albumId = @"123456789";
NSString * path = [NSString stringWithFormat:@"%@/photos", albumId];
[facebook requestWithGraphPath:path andDelegate:self];
您的響應當然會通過FBRequestDelegate
方法request:didLoad
,您可以在其中處理JSON數據。
下載FBGraph Api文檔文件夾,然后將其添加到您的文件夾中。 並閱讀facebook開發者網站http://developers.facebook.com/docs/reference/api/上的說明。
這是示例代碼 - 示例代碼
在此您將獲得UIAlertView
的用戶個人資料照片。 您可以將它顯示在您想要的位置。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.