在 NSBundle 中加载自定义 NSBundle
Loading Custom NSBundle within NSBundle
NSBundle *customBundle = [NSBundle bundleWithPath:[[NSBundle mainBundle] pathForResource:@"CustomBundle" ofType:@"bundle"]];
当我执行上面的代码时,它在调试模式和 Adhoc 构建中 returns customBundle
。但是当我在 TestFlight Build/App Store Build 中使用 32 位设备执行时,它 returns nil
。此外 customBundle
通过 CocoaPods 添加到 Main bundle。我正在使用 Xcode 7.3.
我只有 iOS 9+ 有这个奇怪的错误,它在 iOS 8 中完美运行。对于 iOS 8,它适用于所有 Build/Adhoc/Appstore构建包括所有 32 位和 64 位设备。
我遇到了同样的问题。
这个错误是因为在 64 位设备上构建捆绑包时 xcode 添加到捆绑包内 info.plist 的密钥 UIRequiredDeviceCapabilities
。(捆绑包在调试模式下构建仅适用于活动仅限建筑)
<key>UIRequiredDeviceCapabilities</key>
<array>
<string>arm64</string>
</array>
您可以通过删除 info.plist 中的 UIRequiredDeviceCapabilities
键或仅使用 32 位设备重建捆绑包并更新 podspec 来解决该错误。
NSBundle *customBundle = [NSBundle bundleWithPath:[[NSBundle mainBundle] pathForResource:@"CustomBundle" ofType:@"bundle"]];
当我执行上面的代码时,它在调试模式和 Adhoc 构建中 returns customBundle
。但是当我在 TestFlight Build/App Store Build 中使用 32 位设备执行时,它 returns nil
。此外 customBundle
通过 CocoaPods 添加到 Main bundle。我正在使用 Xcode 7.3.
我只有 iOS 9+ 有这个奇怪的错误,它在 iOS 8 中完美运行。对于 iOS 8,它适用于所有 Build/Adhoc/Appstore构建包括所有 32 位和 64 位设备。
我遇到了同样的问题。
这个错误是因为在 64 位设备上构建捆绑包时 xcode 添加到捆绑包内 info.plist 的密钥 UIRequiredDeviceCapabilities
。(捆绑包在调试模式下构建仅适用于活动仅限建筑)
<key>UIRequiredDeviceCapabilities</key>
<array>
<string>arm64</string>
</array>
您可以通过删除 info.plist 中的 UIRequiredDeviceCapabilities
键或仅使用 32 位设备重建捆绑包并更新 podspec 来解决该错误。