Yev*_*nin 5 accessibility objective-c ios ios8
我在Apple Dev论坛上问过这个问题,但仍然没有得到答案.
我们100%iOS 8设备崩溃:
+[UIPasteboard _accessibilityUseQuickSpeakPasteBoard]: unrecognized selector sent to class
Run Code Online (Sandbox Code Playgroud)
堆栈跟踪是:
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
Run Code Online (Sandbox Code Playgroud)
尽管如此,TapJoy被捕获在堆栈跟踪中,他们的常见问题解答说这是错误的并且与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)。
你准备好了!
| 归档时间: |
|
| 查看次数: |
1021 次 |
| 最近记录: |