我使用DEFacebookComposeViewController在Facebook上發佈消息。當使用iOS5時,用戶被重定向到Facebook頁面進行登錄,然後返回到應用程序,這很好。但是,在iOS6的服務API顯示UIAlertView中,顯示的選項「設置」或「取消」iOS Facebook API不會調出像高音揚聲器一樣的iPhone設置
的問題是,機器人按鈕具有同樣的效果。兩者都取消對話框(這也發生在'FacebookSample'here)。
另一方面,Tweeter框架在iOS 5和iOS 6都很好。如果沒有配置高音揚聲器帳戶並且「設置」按鈕將您帶到「添加帳戶」屏幕,則會顯示警報。
歡迎任何想法。
謝謝
PD:所有測試在模擬器中的位置。
編輯:
這是我使用的代碼:
DEFacebookComposeViewController *facebookComposer = [[DEFacebookComposeViewController alloc] init];
[facebookComposer setInitialText:@"Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test Test"];
__block id weakSelf = self;
[facebookComposer setCompletionHandler:^(DEFacebookComposeViewControllerResult result) {
[weakSelf dismissModalViewControllerAnimated:YES];
}];
[self presentModalViewController:facebookComposer animated:YES];
[facebookComposer release];
而且這是在DEFacebookComposeViewController
類中的重要組成部分;
- (id)init
{
if ([[UIDevice currentDevice].systemVersion floatValue] >= 6) {
self = [(DEFacebookComposeViewController*)[SLComposeViewController composeViewControllerForServiceType:SLServiceTypeFacebook] retain];
return self;
}
self = [super init];
if (self) {
[self facebookComposeViewControllerInit];
}
return self;
}
那裏。如果iOS版本是6,則init方法返回[SLComposeViewController composeViewControllerForServiceType:SLServiceTypeFacebook]
,這是與Facebook交互的香草iOS6方式。