Twitter登录 - 应用程序代理和应用程序崩溃中的线程1 Sigabrt错误

时间:2015-12-31 12:56:34

标签: 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] *由于未被捕获而终止应用   异常'NSInvalidArgumentException',原因:'*    - [ NSPlaceholderDictionary initWithObjects:forKeys:count:]:尝试从对象[0]中插入nil对象   ***第一次抛出调用堆栈:(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图形服务
  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:终止于   NSException(lldb)

类型的未捕获异常

2 个答案:

答案 0 :(得分:0)

这是我的错误完全相同的问题(Xcode 7.2最新的Parse SDK) 使用按钮功能中的Parse提供的Swift代码按下TwitterLogin按钮后,Facebook登录工作并立即收到错误

我希望有人能够得到答案。甚至教授这个的youTube和Udemy课程也使用旧版本的xcode或解析SDK,这些版本在他们的课程中有效但不在我的应用程序中。

答案 1 :(得分:0)

当我在应用程序中实现多个URL方案时,我面临着同样的问题。 崩溃的原因是Spotify正在处理应用程序中的Twitter URL方案(_ app:UIApplication,打开URL:URL)

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

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