在为 iOS 编写 Bluemix Cordova 应用程序时发生位码错误

Posted

技术标签:

【中文标题】在为 iOS 编写 Bluemix Cordova 应用程序时发生位码错误【英文标题】:Bitcode error occurs during the complication of Bluemix Cordova application for iOS 【发布时间】:2015-10-07 14:35:16 【问题描述】:

当我尝试部署适用于 ios 的 Bluemix Cordova 应用程序时,遇到以下 Bitcode 编译错误:

 ld: 'BluemixData/Plugins/com.ibm.mobile.cordova.ibmbluemix/IBMBluemix.framework/
IBMBluemix(IBMBluemix.o)' does not contain bitcode. You must rebuild it with bitcode 
enabled (Xcode setting ENABLE_BITCODE), obtain an updated library from the vendor, or 
disable bitcode for this target. for architecture armv7
 clang: error: linker command failed with exit code 1 (use -v to see invocation)

 ** BUILD FAILED **


 The following build commands failed:
     Ld build/device/BluemixData.app/BluemixData normal armv7

我已禁用 .xcodeproj 文件中的位码,但我仍然看到同样的问题。该项目为 android 正确编译和部署。

【问题讨论】:

【参考方案1】:

在项目的 res 文件夹中,添加以下文件夹:

res -> 原生 -> ios -> 科尔多瓦

在 cordova 文件夹中添加一个名为 build.xcconfig 的文件,其中包含以下行:

ENABLE_BITCODE = NO

它应该可以防止出现此错误。不要忘记删除和添加 ios 平台,以确保获取更改。它对我有用。

cordova platform rm ios
cordova platform add ios

【讨论】:

我认为 Visual Studio 只是一个用于简化 Cordova 开发的 IDE,我不知道这些文件夹结构是它独有的。所以这对于 bluemix 用户来说是不可能的吗? 我不知道bluemix 是如何工作的,虽然我认为它是用于在线Web 服务并且没有IDE。在常规的 cordova 项目中,build.xcconfig 位于platforms/ios/cordova

以上是关于在为 iOS 编写 Bluemix Cordova 应用程序时发生位码错误的主要内容,如果未能解决你的问题,请参考以下文章

使用 Bluemix 推送通知服务的基于用户的通知

Cordova iOS - 未找到新的 Xcode 配置/CDVViewController.h

Cordova for IOS 中动量滚动期间的滚动事件

IBM Bluemix 中的推送通知注册选项卡位置

Xcode 不包括cordova 应用程序重建中的更改

在为Ionic Cordova应用程序提供服务时,如何打开标签或窗口?