ios - Twitter 警告日志 "TwitterKit must be used only from the main thread"Fabric SDK?

标签 ios iphone twitter twitter-fabric

我正在使用fabric SDK集成twitter。我成功地将它集成到我的应用程序中,还登录并从 Twitter 获取 token 、用户名。但在我的应用程序中,在检查 Twitter session 登录情况时会显示一个警告

   if (Twitter.sharedInstance().session() == nil)
   {
       twitterToken = ""
       twitterSecret = ""
   }
   else
   {
       twitterToken = Twitter.sharedInstance().session().authToken
       twitterSecret = Twitter.sharedInstance().session().authTokenSecret     
   }

控制台上的警告日志显示:

TwitterKit must be used only from the main thread. Use from background threads will lead to unexpected behavior and crashes. Set a symbolic breakpoint in +[TWTRMultiThreadUtil warnForBackgroundThreadUsage] to debug this.

最佳答案

为什么不将这些行包装在主线程上调用的代码中?

例如:

dispatch_async(dispatch_get_main_queue(),{
    if (Twitter.sharedInstance().session() == nil)
    {
          twitterToken = ""
          twitterSecret = ""
    }
    else
     {
          twitterToken = Twitter.sharedInstance().session().authToken
          twitterSecret = Twitter.sharedInstance().session().authTokenSecret     
     }
     ...
     ...
})

其中 twitterToken 和 twitterSecret 要么在主线程上使用/引用,要么将它们设置为对象的可选属性。

如果警告没有消失,请按照警告执行操作,并在“+[TWTRMultiThreadUtil warnForBackgroundThreadUsage]”上设置 Xcode 断点,这样您就可以看到警告的真正位置 来自。

关于ios - Twitter 警告日志 "TwitterKit must be used only from the main thread"Fabric SDK?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32133704/

相关文章:

ios - swift 将图片/视频发布到推特

php - mysql中的嵌套表

ios - Admob 横幅请求时间

iphone - iPhone 上的 UIButton —— 使按钮摇动或摆动

iphone - 在 iPhone 上使用 ASIHTTPRequest 登录用 Ruby on Rails 编写的 Web 服务并使用 AuthLogic

ios - 是否可以忽略 iOS 中的一种推送通知

python - 如何在 PhpMyAdmin 中组织 CSV 的 Twitter 数据

javascript - Videojs HLS m3u8 文件无法在 iOS 设备和 Safari 浏览器中播放

ios - UICollectionView,单元格与导航栏重叠

objective-c - 在这个CGBitmapContextCreate中,为什么bytesPerRow是0?