MobileFirst Platform CLI 无法使用 JSON Store 构建 xcode 7.2 项目

MobileFirst Platform CLI unable to build xcode 7.2 project with JSON Store

我有一个包含 mfp JSON Store 的 cordova 项目。当我用xcode 7.2构建项目时(enable Bitcode设置为false),它会运行报错:

  "_EVP_CIPHER_CTX_cleanup", referenced from:
  +[JSONStoreSecurityUtils _doEncrypt:key:withIV:] in IBMMobileFirstPlatformFoundationJSONStore(JSONStoreSecurityUtils.o)


  +[JSONStoreSecurityUtils _doDecrypt:key:withIV:withCorrectIVConversion:withCorrectKeyConversion:] in IBMMobileFirstPlatformFoundationJSONStore(JSONStoreSecurityUtils.o)
[...50 further errors...]
"_sqlite3_step", referenced from:


  ___36-[JSONStoreDatabaseManager execute:]_block_invoke in IBMMobileFirstPlatformFoundationJSONStore(JSONStoreDatabaseManager.o)


  ___35-[JSONStoreDatabaseManager update:]_block_invoke in IBMMobileFirstPlatformFoundationJSONStore(JSONStoreDatabaseManager.o)


  ___47-[JSONStoreDatabaseManager deleteFromDatabase:]_block_invoke in IBMMobileFirstPlatformFoundationJSONStore(JSONStoreDatabaseManager.o)


  ___47-[JSONStoreDatabaseManager selectInto:withSQL:]_block_invoke in IBMMobileFirstPlatformFoundationJSONStore(JSONStoreDatabaseManager.o)


  ___50-[JSONStoreDatabaseManager selectAllInto:withSQL:]_block_invoke in IBMMobileFirstPlatformFoundationJSONStore(JSONStoreDatabaseManager.o)


  ___35-[JSONStoreDatabaseManager insert:]_block_invoke in IBMMobileFirstPlatformFoundationJSONStore(JSONStoreDatabaseManager.o)


ld: symbol(s) not found for architecture arm64





clang: error: linker command failed with exit code 1 (use -v to see invocation)

看起来它没有与架构 arm64 相关的 JSONStore 库。如果我尝试在模拟器上 运行,它会失败并显示未找到架构 x86_64。

如果您想重现该问题,请按照以下步骤操作:

mfp cordova 插件列表显示如下:

cordova-plugin-mfp 7.1.0 "IBM MobileFirst Platform Foundation"
cordova-plugin-mfp-jsonstore 7.1.0 "IBM MobileFirst Platform Foundation - JSONStore"
cordova-plugin-mfp-push 7.1.0 "IBM MobileFirst Platform Foundation - Push Notifications"
org.apache.cordova.device 0.2.13 "Device"
org.apache.cordova.dialogs 0.2.11 "Notification"
org.apache.cordova.geolocation 0.3.11 "Geolocation"
org.apache.cordova.globalization 0.3.3 "Globalization"
org.apache.cordova.inappbrowser 0.5.4 "InAppBrowser"
org.apache.cordova.network-information 0.2.14 "Network Information"

我尝试通过 mfp cordova 插件更新来更新插件,但这没有帮助。

我使用这个版本的cli: $ mfp -v 7.1.0.00.20151023-1449

使用相同的 CLI 版本并创建一个新的 Cordova 应用程序,添加 iOS 平台和 JSONStore 插件,Xcode 7.2 中的构建过程成功通过。这可能是所提供示例的特定问题。

由于您也是 IBM 员工,我建议您通过 Notes 直接联系 Andrii Vasylchenko,因为他维护着这个样本并且可以更新它。

请在此处查找如何解决问题的说明

https://www.dropbox.com/s/iiesbpgrd7bj0c8/iOSfix.mp4?dl=0