ios - Twitter 登录 - App Delegate 中的线程 1 Sigabrt 错误和应用程序崩溃

标签 ios swift facebook twitter parse-platform

我正在尝试创建一个简单的解析日志,将 TwitterFacebook 集成为 iOS9 中的登录选项。 Facebook 登录正常,但 Twitter 登录一直崩溃,不知道为什么?崩溃导致 AppDelegate.swift 说有一个 Sigabrt error "thread 1 signal sigabrt"

import UIKit

@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {

var window: UIWindow?

func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
    // Override point for customization after application launch.
    Parse.setApplicationId("<MY ID>", clientKey:"<MY CLIENT KEY>")
    PFTwitterUtils.initializeWithConsumerKey("<CONSUMER KEY>", consumerSecret:"<CONSUMER SECRET>")
    PFFacebookUtils.initializeFacebookWithApplicationLaunchOptions(launchOptions);

NorthernLights[4119:358454] * Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '* -[NSPlaceholderDictionary initWithObjects:forKeys:count:]: attempt to insert nil object from objects[0]' *** First throw call stack: ( 0 CoreFoundation 0x000000010d751e65 __exceptionPreprocess + 165 1 libobjc.A.dylib
0x000000010dadddeb objc_exception_throw + 48 2 CoreFoundation
0x000000010d6548ce -[__NSPlaceholderDictionary initWithObjects:forKeys:count:] + 318 3 CoreFoundation
0x000000010d666c3b +[NSDictionary dictionaryWithObjects:forKeys:count:] + 59 4 NorthernLights
0x000000010a77f349 -[PF_Twitter _showWebViewDialogAsync:requestSecret:] + 265 5 NorthernLights 0x000000010a78255a __38-[PF_Twitter _performWebViewAuthAsync]_block_invoke_2 + 346 6 libdispatch.dylib 0x000000010e59be5d _dispatch_call_block_and_release + 12 7
libdispatch.dylib 0x000000010e5bc49b _dispatch_client_callout + 8 8 libdispatch.dylib 0x000000010e5a42af _dispatch_main_queue_callback_4CF + 1738 9
CoreFoundation 0x000000010d6b1d09 __CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE
+ 9 10 CoreFoundation 0x000000010d6732c9 __CFRunLoopRun + 2073 11 CoreFoundation 0x000000010d672828 CFRunLoopRunSpecific + 488 12 GraphicsServices
0x000000010f236ad2 GSEventRunModal + 161 13 UIKit
0x000000010bf52610 UIApplicationMain + 171 14 NorthernLights
0x000000010a5c90fd main + 109 15 libdyld.dylib
0x000000010e5f092d start + 1 16 ???
0x0000000000000001 0x0 + 1 ) libc++abi.dylib: terminating with uncaught exception of type NSException (lldb)

最佳答案

当我在我的应用程序中实现多个 url 方案时,我遇到了同样的问题。 崩溃的原因是 Spotify 正在处理 application(_ app: UIApplication, open url: URL) 中的 twitter url schemes

我能够通过检查即将到来的 url 方案的类型来解决问题。 对于我使用的推特

if url.scheme != nil && url.scheme!.hasPrefix("twitterkit"){ //Twitter SDK
        return TWTRTwitter.sharedInstance().application(app, open: url, options: options)
}  else{ //Other SDK's  }

关于ios - Twitter 登录 - App Delegate 中的线程 1 Sigabrt 错误和应用程序崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34546841/

相关文章:

ios - 如何从认知用户 ID 中删除外部身份并检查当前认知 ID 是否与任何外部身份合并?

facebook - Facebook OAuth有时会出现验证码验证错误

ios - Swift vs ObjC 初始化过程?

ios - 如何从 UITextField 向 UITableView 添加多个数据? ( swift 4)

swift - 无法在单个 View 中使用 2 个弹出窗口

ios - cell.layoutifneeded 和 cell.layoutSubviews 以及 cell.setneedsdisplay 方法一般做什么?

android - Facebook SDK 3.0 注销无法从任何其他 Intent 在 Android 应用程序中工作

ios - self.view setNeedsDisplay 和 self.view setNeedsLayout 不起作用

ios - boost::shared_ptr 删除器从未调用过 iOS 模拟器

ios - 为什么 UIWebView 无法在 Safari 中打开我的链接?