我有一個iPhone/iPad應用程序,它可以進行一些基本的照片編輯,併爲用戶提供將成品上傳到Facebook的選項。該應用程序擁有超過10萬用戶,大部分用戶將照片上傳到Facebook都沒有問題。但是,有少數用戶似乎無論如何都無法讓他們的照片上傳。我曾與他們合作,以確保它不是應用程序權限或Facebook設置阻止他們,並且在那裏找不到任何問題。所以我想知道如果我在FBConnect上做了一些不正確的事情,導致問題偶爾出現一次。下面是代碼:iOS:上傳到Facebook的照片並不總是上傳
- (void)initFacebook {
if(self.facebook == nil) {
Facebook *fb = [[Facebook alloc] init];
self.facebook = fb;
[fb release];
}
if([self.facebook isSessionValid]) {
[[NSNotificationCenter defaultCenter] postNotificationName:@"FacebookIsReady"
object:nil
userInfo:nil];
} else {
NSArray *perms = [NSArray arrayWithObjects:@"publish_stream", @"user_likes", nil];
[self.facebook authorize:MY_FB_APP_ID permissions:perms delegate:self];
}
}
-(void)fbDidLogin {
[[NSNotificationCenter defaultCenter] postNotificationName:@"FacebookIsReady"
object:nil
userInfo:nil];
}
// this is in a different class
- (void)facebookIsReady:(NSNotification *)notification {
AppDelegate *appDelegate = (AppDelegate *)[[UIApplication sharedApplication] delegate];
NSMutableDictionary *params = [NSMutableDictionary dictionaryWithObjectsAndKeys:self.theImage, @"source", nil];
[appDelegate.facebook requestWithGraphPath:@"/me/photos"
andParams:params
andHttpMethod:@"POST"
andDelegate:appDelegate];
}
在FBRequestDelegate即使照片沒有出現在Facebook的個人主頁的didLoad總是被調用。所以我得到的代碼似乎永遠不會失敗,但照片並不總是出現在Facebook配置文件中。
該應用程序是否有可能無法在用戶配置文件中創建新相冊?我曾看到其他人之前在各個小組報告過這個問題,但從未找到實際的解決方案。謝謝。
要添加到這一點:沒有'user_photos',如果照片被上傳成功後,要求用戶在手動導航到自己的相冊和周圍有點戳。如果確實有效,他們可能會遇到一個UI,告訴他們他們有需要手動批准的待處理上傳。該對話框非常低調,所以很容易錯過。 (另外,對於它的價值,可能還有一個手動隱私設置,用戶可以切換來強制執行此行爲,即使是包含'user_photos'權限 - 只是猜測。) – toblerpwn