localDataStore 和 PFFacebookUtils 崩溃

Posted

技术标签:

【中文标题】localDataStore 和 PFFacebookUtils 崩溃【英文标题】:Crash with localDataStore and PFFacebookUtils 【发布时间】:2015-02-01 06:58:10 【问题描述】:

我刚刚启用了 localDataStore。以前一切正常,如果我将其注释掉,一切都会再次正常。我想做一些本地持久性,因为我不能使用 NSCoding for PFRelations 将对象存储在 NSUserDefaults 中,所以我最好的选择是 localDataStore。

但它不起作用。

如果我使用 Facebook 登录,它可以正常工作。但是,在下一次应用启动时,它会在此行崩溃:

[PFFacebookUtils 初始化Facebook];

使用控制台:

-[__NSCFBoolean _loadSensitiveUserDataFromKeychainItemWithName:]: unrecognized selector sent to instance 0x37f77660

还有痕迹:

* thread #1: tid = 0xf318, 0x3762cc64 libobjc.A.dylib`objc_exception_throw, queue = 'com.apple.main-thread', stop reason = breakpoint 1.1
    frame #0: 0x3762cc64 libobjc.A.dylib`objc_exception_throw
    frame #1: 0x29e2a038 CoreFoundation`-[NSObject(NSObject) doesNotRecognizeSelector:] + 188
    frame #2: 0x29e27f56 CoreFoundation`___forwarding___ + 714
    frame #3: 0x29d59df8 CoreFoundation`_CF_forwarding_prep_0 + 24
    frame #4: 0x00697a4c LY`+[PFUser currentUser](self=<unavailable>, _cmd=<unavailable>) + 532 at PFUser.m:928
    frame #5: 0x00693d14 LY`+[PFUser(self=<unavailable>, _cmd=<unavailable>, provider=0x15d55fb0) registerAuthenticationProvider:] + 116 at PFUser.m:423
  * frame #6: 0x007a5f46 LY`+[PFFacebookUtils initializeFacebookWithUrlShemeSuffix:](self=<unavailable>, _cmd=<unavailable>, urlSchemeSuffix=<unavailable>) + 98 at PFFacebookUtils.m:58
    frame #7: 0x000a6f96 LY`-[AppDelegate application:didFinishLaunchingWithOptions:](self=0x15de8260, _cmd=0x2da83320, application=0x15de5420, launchOptions=0x00000000) + 1190 at AppDelegate.m:139
    frame #8: 0x2d34e720 UIKit`-[UIApplication _handleDelegateCallbacksWithOptions:isSuspended:restoreState:] + 284
    frame #9: 0x2d5435ae UIKit`-[UIApplication _callInitializationDelegatesForMainScene:transitionContext:] + 2358
    frame #10: 0x2d545afa UIKit`-[UIApplication _runWithMainScene:transitionContext:completion:] + 1374
    frame #11: 0x2d550378 UIKit`__84-[UIApplication _handleApplicationActivationWithScene:transitionContext:completion:]_block_invoke + 36
    frame #12: 0x2d544386 UIKit`-[UIApplication workspaceDidEndTransaction:] + 130
    frame #13: 0x3056b0e8 FrontBoardServices`__31-[FBSSerialQueue performAsync:]_block_invoke + 12
    frame #14: 0x29deb39c CoreFoundation`__CFRUNLOOP_IS_CALLING_OUT_TO_A_BLOCK__ + 12
    frame #15: 0x29dea660 CoreFoundation`__CFRunLoopDoBlocks + 216
    frame #16: 0x29de8de2 CoreFoundation`__CFRunLoopRun + 762
    frame #17: 0x29d37210 CoreFoundation`CFRunLoopRunSpecific + 476
    frame #18: 0x29d37022 CoreFoundation`CFRunLoopRunInMode + 106
    frame #19: 0x2d3483ee UIKit`-[UIApplication _run] + 558
    frame #20: 0x2d3431d0 UIKit`UIApplicationMain + 1440
    frame #21: 0x001310d4 LY`main(argc=1, argv=0x015a3ad0) + 116 at main.m:9

【问题讨论】:

这里的问题一模一样!! 我在这里在 Parse 平台上创建了一个错误:developers.facebook.com/bugs/802450039810796 【参考方案1】:

因此,这个“功能”似乎通过 Parse ios/OS X SDK 的 v1.6.3 更新得到解决。

请参阅@Numereyes 提供的this link 进行讨论和官方回复...

【讨论】:

以上是关于localDataStore 和 PFFacebookUtils 崩溃的主要内容,如果未能解决你的问题,请参考以下文章

离线 Parse.com 时如何在 localdatastore 中保存图像 PFFile?

Android ,我们可以使用 Parse LocalDataStore 进行本地存储吗?

使用 Parse-Server 时 Parse LocalDataStore 不起作用 - “方法需要启用固定。”

最终使用 PFFile(解析本地数据存储)保存在 PFObject 上?

解析 Android SDK 嵌套的 saveInBackground 不起作用

Parse.com 用户在离线时注销