我在 Apple Dev 论坛上问过这个问题,但仍然没有得到答案。
我们经历过 100% 的 iOS 8 设备崩溃:
+[UIPasteboard _accessibilityUseQuickSpeakPasteBoard]: unrecognized selector sent to class
堆栈跟踪是:
Thread : Fatal Exception: NSInvalidArgumentException
0 CoreFoundation 0x2889ec1f __exceptionPreprocess + 126
1 libobjc.A.dylib 0x36049c8b objc_exception_throw + 38
2 CoreFoundation 0x288a3f55 __CFExceptionProem
3 CoreFoundation 0x288a1def ___forwarding___ + 354
4 CoreFoundation 0x287d3df8 _CF_forwarding_prep_0 + 24
5 UIAccessibility 0x331fc157 +[UIPasteboard_QSExtras pasteboardWithName:create:] + 30
6 MyApp 0x002eb507 -[TJEventOptimizer .cxx_destruct]
7 MyApp 0x002eb28b -[TJEventOptimizer .cxx_destruct]
8 MyApp 0x002f0c2b -[TJEventOptimizer .cxx_destruct]
9 MyApp 0x002eeedb -[TJEventOptimizer .cxx_destruct]
10 Foundation 0x295adb5b __NSThread__main__ + 1118
11 libsystem_pthread.dylib 0x3670ce93 _pthread_body + 138
12 libsystem_pthread.dylib 0x3670ce07 _pthread_start + 118
13 libsystem_pthread.dylib 0x3670ab90 thread_start + 8
尽管如此,TapJoy 在堆栈跟踪中被捕获,their FAQ says它有时是错误的,与 TapJoy 的代码无关,而是 iOS 8 错误。
是否正确?
什么辅助功能设置与崩溃有关?
最佳答案
出现这个问题是因为TapJoy使用了静态库中的类别(即UIPasteboard_QSExtras
)
解决方案非常简单,你需要通知链接器
1) 点击项目
2) 点击目标
3) 打开 Build Settings
选项卡
4) 搜索Other Linker Flags
5) 双击Other Linker Flags
6) 添加-ObjC
和-all_load
标志
7)
删除二进制文件(从设备/模拟器中删除),
清理项目(点击 cmd+shift+k
)和
再次构建(点击 cmd+b
)。
你准备好了!
关于ios - +[UIPasteboard _accessibilityUseQuickSpeakPasteBoard] : unrecognized selector sent to class,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27017908/