我们正在努力构建原生 iOS 钛模块 来包装 ADTECHMobileSDK 库,这是我们用于广告的库。 我们成功地移植了横幅 View ,但我们在插页式广告方面遇到了麻烦:
当使用以下消息在插页式广告上调用方法 -load 时,应用程序崩溃
+entityForName: nil is not a legal NSManagedObjectContext parameter searching for entity name ‘Asset’
好像是CoreData的问题,但是我没有接触到原生代码。
对于插页式广告,您必须配置 3 项内容: 一个配置 代表 和一个 View Controller
该库处理这 3 个参数的错误值,但有 3 个特殊异常(exception),所以我认为我们正在以正确的方式设置所有 3 个参数。 我们还检查了我们是否正确导入了要求您在项目中导入的库资源包 (并且包含 CoreData 模型),当它也丢失时,库会抛出一个特定的异常,所以它应该已经正确完成了。
我不是 CoreData 专家,所以我想知道什么可能导致该异常以及我应该检查什么,或者是否存在使用使用 CoreData 的第三方库构建模块的任何已知问题。
感谢任何帮助,谢谢。
最佳答案
看来是并发问题。
使用 [NSEntityDescription entityForName:inManagedObjectContext:] 上的符号断点从 Xcode 进行调试 我发现它是在不同的线程上调用的。 我解决了使用钛宏在主线程上强制加载调用
ENSURE_UI_THREAD(加载,参数);
关于ios - Titanium - 在 iOS native 模块中包装 ADTECHMobileSDK 的 CoreData 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30161951/