【问题标题】:Application crashing on launch应用程序在启动时崩溃
【发布时间】:2016-09-02 07:38:52
【问题描述】:

我的应用程序在调试/开发模式下完美运行,但在分发版(企业分发版构建)中启动时崩溃。这是崩溃日志:

事件标识符:D03AA940-6D86-41E7-A90C-997C7C840570 CrashReporter 密钥:f79cf5348f25235e81156465863880c9a213ba09 硬件 型号:iPhone7,2 工艺:EFC [1405] 路径:
/private/var/containers/Bundle/Application/9C9BAABD-1BD5-4684-894E-329C6A11CE9C/MyApp.app/MyApp 标识符:com.company.ent-myapp 版本:100 (0.1) 代码类型:ARM-64 (Native) 父进程:
启动1

日期/时间:2016-05-07 12:14:07.07 +0500 发布时间:
2016-05-07 12:14:07.07 +0500 操作系统版本:iOS 9.3.1 (13E238) 报告版本:105

异常类型:EXC_BREAKPOINT (SIGTRAP) 异常代码: 0x0000000000000001, 0x000000012003d088 线程触发:0

过滤的系统日志:未找到

Dyld 错误消息:Dyld 消息:未加载库: @rpath/Alamofire.framework/Alamofire 引用自: /var/containers/Bundle/Application/9C9BAABD-1BD5-4684-894E-329C6A11CE9C/MyApp.app/MyApp 原因:没有找到合适的图片。发现: /private/var/containers/Bundle/Application/9C9BAABD-1BD5-4684-894E-329C6A11CE9C/MyApp.app/Frameworks/Alamofire.framework/Alamofire: mmap() errno=1 验证第一页 '/private/var/containers/Bundle/Application/9C9BAABD-1BD5-4684-894E-329C6A11CE9C/MyApp.app/Frameworks/Alamofire.framework/Alamofire' /private/var/containers/Bundle/Application/9C9BAABD-1BD5-4684-894E-329C6A11CE9C/MyApp.app/Frameworks/Alamofire.framework/Alamofire: mmap() errno=1 验证第一页 '/private/var/containers/Bundle/Application/9C9BAABD-1BD5-4684-894E-329C6A11CE9C/MyApp.app/Frameworks/Alamofire.framework/Alamofire' /private/var/containers/Bundle/Application/9C9BAABD-1BD5-4684-894E-329C6A11CE9C/MyApp.app/Frameworks/Alamofire.framework/Alamofire: mmap() errno=1 验证第一页 '/private/var/containers/Bundle/Applicatio Dyld 版本:390.7

二进制图像:0x100008000 - 0x10081ffff EFC arm64 /var/containers/Bundle/Application/9C9BAABD-1BD5-4684-894E-329C6A11CE9C/MyApp.app/MyApp 0x12003c000 - 0x12006bff dyld arm64 /usr/lib/dyld

  1. 我尝试使用Enable Bitcode YesNo 准备企业分发版本。
  2. 我已多次验证代码签名和配置文件设置正确。
  3. 我有最新/续订的Apple Worldwide Developer Relations Certification Authority
  4. 我在我的项目中使用 cocoapods,我正在使用 Release 配置,这些配置使用 Pods-MyApp.release。注意:我是第一次在我的项目中使用 cocoapods。如果它是相关的,我的 pods 文件的内容如下供参考。

Podfile的内容:

platform :ios, '8.0'

use_frameworks!

target 'EFC' do

pod 'Alamofire', '~> 3.0'
pod 'SwiftyJSON', :git => 'https://github.com/SwiftyJSON/SwiftyJSON.git'
pod 'PayPal-iOS-SDK'

pod 'AlamofireNetworkActivityIndicator', '~> 1.0'
pod 'AlamofireImage', '~> 2.0'
pod 'ObjectMapper', '~> 1.2'

pod 'GoogleMaps'
pod 'UILoadControl'

end

我被难住了。关于发生了什么的任何线索?如何解决此问题并成功准备我的企业版本?

也许我在 cocoapods 设置中遗漏了一些东西(用于发布/分发),但我不知道是什么!?

编辑

导出对话框看起来像这样,如果这有什么不同的话。

【问题讨论】:

  • 你在使用 xcworkspace 吗?
  • 是的,我正在使用 xcworkspace,这是 cocoapods 要求的。
  • 在模拟器上运行正常吗?
  • 是的,当我在调试/开发模式下运行时,可以在模拟器和设备上找到。
  • 我在安装了 Cocoapods 1.0 的全新安装 El Capitain 时遇到了同样的问题。我已经安装了新创建的证书和配置文件。我已经删除了 cocoapods 并重新安装了它。该应用程序在 Simulator 上运行良好。没有 cocoapods 创建的应用程序在我构建时运行良好,但任何使用 cocoapods 的项目都可以正常构建,但一旦我打开它就会崩溃。请帮忙 。请注意,我有另一台升级到 El Capitain 的 MacBook,构建企业应用程序没有问题。谢谢s

标签: ios swift cocoapods release


【解决方案1】:

猜测:我假设您使用的构建配置在 Enterprise 构建中不称为 Release。尝试将构建配置添加到与您用于企业构建的构建配置同名的 pod 框架中。

【讨论】:

  • 我尝试过使用新的构建配置,并使用现有的“发布”。两种情况下的结果相同。我一定错过了什么,但我不知道是什么。
【解决方案2】:

我重新生成了分发证书和配置文件。这为我解决了这个问题!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-12-27
    相关资源
    最近更新 更多