2012-12-28 12 views
1

我通過共享套件發佈文本到facebook的問題,它成功發佈facebook和Twitter時,我選擇iphone 6.0模擬器,但是當我選擇iphone simulator 5.1它要求我登錄時,我點擊登錄它去facebook頁在右上角的一個確定按鈕,當我按確定按鈕它再次帶我回到登錄頁面雖然我已經登錄,我不知道爲什麼這個錯誤正在發生。 當我選擇iphone simulator 5.0它給我的異常如何解決共享套件問題,通過iPhone模擬器發佈到Facebook的文本5.1

2012-12-28 10:35:16.084 SendQuote[431:c07] -[CFXPreferencesSearchListSource tryLock]: unrecognized selector sent to instance 0x80b42f0 
2012-12-28 10:35:16.103 SendQuote[431:c07] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[CFXPreferencesSearchListSource tryLock]: unrecognized selector sent to instance 0x80b42f0' 
*** First throw call stack: 
(0x1b69052 0x1426d0a 0x1b6aced 0x1acff00 0x1acfce2 0x79c1770 0xf4aa39 0x1b34885 0x1b347a8 0xe8f1aa 0x59c169 0x5a48bd 0x5a51f8 0x598aa9 0x234bfa9 0x1b3d1c5 0x1aa2022 0x1aa090a 0x1a9fdb4 0x1a9fccb 0x234a879 0x234a93e 0x596a9b 0x2b3a 0x2a45 0x1) 
terminate called throwing an exception(lldb) 

這裏是我的Facebok的共享代碼

case 1: // facebook 
     { 
      if(NSClassFromString(@"SLComposeViewController")) 
      { 
       SLComposeViewController *fbController = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeFacebook]; 
       SLComposeViewControllerCompletionHandler __block completionHandler=^(SLComposeViewControllerResult result){ 

        [fbController dismissViewControllerAnimated:YES completion:nil]; 

        switch(result){ 
         case SLComposeViewControllerResultCancelled: 
         default: 
         { 
          NSLog(@"Cancelled....."); 

         } 
          break; 
         case SLComposeViewControllerResultDone: 
         { 
          ALERT_VIEW(@"Successfully posted to facebook."); 
         } 
          break; 
        }}; 

       [fbController setInitialText:quotesss]; 
       [fbController setCompletionHandler:completionHandler]; 
       [self presentViewController:fbController animated:YES completion:nil]; 
      } 
      else 
      { 
       DEFacebookComposeViewControllerCompletionHandler completionHandler = ^(DEFacebookComposeViewControllerResult result) { 
        switch (result) { 
         case DEFacebookComposeViewControllerResultCancelled: 
          NSLog(@"Facebook Result: Cancelled"); 
          break; 
         case DEFacebookComposeViewControllerResultDone: 
          ALERT_VIEW(@"Successfully posted to facebook."); 
          break; 
        } 

        [self dismissViewControllerAnimated:YES completion:nil]; 
       }; 
       DEFacebookComposeViewController *facebookViewComposer = [[DEFacebookComposeViewController alloc] init]; 
       self.modalPresentationStyle = UIModalPresentationCurrentContext; 

       [facebookViewComposer setInitialText:quotesss]; 

       facebookViewComposer.completionHandler = completionHandler; 
       [self presentViewController:facebookViewComposer animated:YES completion:nil]; 
       [facebookViewComposer release]; 
      } 
      break; 
     } 
+0

分享一些在Facebook上發佈的相關代碼... – Vishal

+0

我編輯了我的問題... – NullData

+0

在iOS 6中,facebook預裝在iphone中,但不在iOS 5中。有什麼相關的嗎? – sees

回答

3

轉到facebook.m類在SDK發現這個方法:

- (void)authorize:(NSArray *)permissions 
     delegate:(id<FBSessionDelegate>)delegate 

然後更換你的最後一行是:[self authorizeWithFBAppAuth:YES safariAuth:YES];

用這一行:[self authorizeWithFBAppAuth:YES safariAuth:NO; &然後檢查。

+0

仍然沒有工作.. – NullData

+0

給兩個選項,然後檢查... – Vishal

+0

我已經給,但仍然不工作 – NullData