我一直在开发一个用于编辑照片的应用程序,我想为photos应用程序提供一个扩展。enxtension在模拟器上工作得很好,没有任何问题。
但是,当我尝试在我的iPhone 6中运行它时,我遇到了两个问题:
错误:嵌入式二进制文件没有与父应用程序使用相同的证书签名。验证嵌入式二进制目标的代码符号设置与父应用程序的代码符号设置匹配。嵌入式二进制签名证书:-(特殊代码签名)父应用程序签名证书: iPhone Developer: Mauro Vime (?)
我已经重新生成了开发提供概要文件,以检查它是用于开发的,而不是Ad的,但是我仍然遇到同样的问题。
事件标识符: 9E578D78-FAB7-419E-AB35-7BA7B0821AFA CrashReporter密钥: ae6bdea47a4e64b09a8fb7fa8599b5e23ceb5311硬件模型: iPhone7,2 7,2进程:扩展2598路径: /private/var/mobile/Containers/Bundle/Application/----------/------------/PlugIns/extension.appex/extension标识符: app.myapp.com.extension版本:1 (1.0)代码类型: ARM-64 (原生)父进程: 启动日期/时间: 2014-10-14 01:29:21.482 +0200启动时间: 2014-10-14 01:29:16.170 +0200操作系统版本: iOS 8.1 (12B 407)报告版本:105个异常类型: LAUNCH_HANG异常子类型:LAUNCH_HANG异常消息:该扩展花了太多时间来初始化突出显示的线程:0回溯,没有可用的未知线程与ARM线程状态(64位)崩溃:x0: 0x0000000000000000 x1: 0x0000000000000000 x2: 0x0000000000000000 x3: 0x0000000000000000 x4: 0x0000000000000000 x5: 0x0000000000000000 x6: 0x0000000000000000 x7: 0x0000000000000000 x8: 0x0000000000000000 x9: 0x0000000000000000 x10: 0x0000000000000000 x11: 0x0000000000000000 x12: 0x0000000000000000 x13: 0x0000000000000000 x14: 0x0000000000000000 x15: 0x0000000000000000 x16: 0x0000000000000000 x17: 0x0000000000000000 x18: 0x0000000000000000 x19: 0x0000000000000000 x20: 0x0000000000000000 x21: 0x0000000000000000 x22: 0x0000000000000000 x23: 0x0000000000000000 x24: 0x0000000000000000 x25: 0x0000000000000000 x26: 0x0000000000000000 x27: 0x0000000000000000 x28: 0x00000000000000 fp: 0x0000000000000000 lr: 0x0000000000000000 sp: 0x0000000016fdb3b68 pc: 0x00000001200f9000 cpsr: 0x00000000二进制映像: 0x1200f8000 - 0x12011ffff dyld arm64 /usr/lib/dyld
这里说,该应用程序运行在8.1设备上,但我也在8.0.2 iOS上尝试过,也出现了同样的问题。在看到消息:“扩展初始化花费了太多时间”之后,我刚刚清除了viewDidLoad和viewWillAppear函数,这样它们就不会执行任何代码,但问题仍然存在。
有没有人经历过这样的问题并有了解决的办法?
发布于 2014-11-02 00:26:47
难道你没有使用64位架构(扩展所必需的)吗?参见苹果应用程序扩展编程指南中的“关于64位架构的注释”。
发布于 2015-01-22 10:57:43
确保体系结构和有效的体系结构包含arm64,并且只构建Active Architecture是用于使用的配置(调试/发布)的No。
我们只将Active Architecture设置为Yes,所以Jenkins只构建了armv7二进制(尽管xcode根据连接的设备构建了正确的二进制)。armv7应用程序似乎在arm64设备上运行良好,但是armv7应用程序扩展没有加载奇怪的错误“扩展初始化花费了太多时间”。在修复了构建活动架构之后,只构建了fat二进制文件(armv7+arm64),并且扩展很好。
发布于 2015-06-03 13:15:47
我面临着这两个问题:
对于代码签名问题,我相信Xcode中存在一个与添加应用程序扩展目标相关的错误。一开始我搞砸了,结果我犯了这个错误。-您需要删除并重新生成应用程序和开发者中心应用程序扩展部分的配置文件。-如果您正在使用应用程序组来共享信息,请删除功能和开发中心,并在功能部分重新启用该功能。
对于LAUNCH_HANG问题,在iOS放弃之前,似乎有一个有限的、小的(无文档的)窗口可供扩展完全加载。-检查链接到扩展部分的所有代码。不要包括任何你不绝对需要的东西。
我的特殊问题是,当我为扩展目标添加了podspec时。我复制了我的主应用程序的目标,但没有意识到我在扩展中包含了didn。但是它是一个大的静态库,当主机应用启动我的扩展时,它需要映射到内存中。移除它,错误就消失了。
https://stackoverflow.com/questions/26363446
复制相似问题