我想運行一個Facebook提供的開放圖行動的例子,但沒有任何反應。 調試時,我看到該動作已創建,但是在[FBDialogs presentShareDialog ...]中,它只是跳過並跳轉到該函數的末尾。你爲什麼認爲這是?我讀了sharedialog不能在IOS模擬器中運行,但不應該產生錯誤或什麼?或者,如果我在模擬器上運行它應該什麼都不會發生?打開圖行動
-(IBAction)ShareFB:(id)sender{
id<FBOpenGraphAction> action = (id<FBOpenGraphAction>)[FBGraphObject graphObject];
[action setObject:@"https://example.com/book/Snow-Crash.html" forKey:@"book"];
[FBDialogs presentShareDialogWithOpenGraphAction:action
actionType:@"books.reads"
previewPropertyName:@"book"
handler:^(FBAppCall *call, NSDictionary *results, NSError *error) {
if(error) {
NSLog(@"Error: %@", error.description);
} else {
NSLog(@"Success!");
}
}];
參考文本:https://developers.facebook.com/docs/ios/share-dialog/#tips
presentShareDialog ...方法要求Facebook應用程序存在。由於您無法在模擬器上安裝Facebook應用程序,因此無法使用。你可以用if(canPresent *){}檢查前面的*方法,並且如果canPresent返回NO,則選擇一些其他操作。 –