使用 MobileFirst 构建本机应用程序

Building native application with MobileFirst

我们正在使用 MobileFirst 6.3,我们快完成了,但是通过添加环境来构建本机 iOS 应用程序对我们来说似乎并不那么容易。创建环境后,我们尝试 运行 代码,但留下一个可滚动的空白屏幕和一个错误:

Error in success callback: DeviceAuth1101721282 = TypeError: undefined is not an object (evaluating 'window.cordova.plugins.Keyboard')

键盘插件似乎不可用,应用程序的其余部分将无法进一步加载。我尝试的是将在 Github (https://github.com/apache/cordova-plugins/tree/master/keyboard) 上找到的插件添加到 iphone/native/CordovaLib/plugin 目录并将以下代码添加到 iphone/native/config.xml 文件:

<feature name="Keyboard">
  <param name="ios-package" value="CDVKeyboard" />
</feature>

这不能解决问题。在文档 how to add native functionality to the application (https://developer.ibm.com/mobilefirstplatform/documentation/getting-started-6-3/adding-native-functionality/ios-adding-native-functionality-hybrid-application-apache-cordova-plugin/) 中,下一步是创建一个函数,但我没有函数可以在插件中调用,所以我根据仅使用 NSLog 输出到控制台的教程。在日志中,我收到跟之前一样错误的消息。

有什么我遗漏的吗?

在结合 Ionic Framework 构建 MobileFirst 应用程序的教程之一中,有一个 if 语句给出了错误。 if 语句是:

if (window.cordova && window.cordova.plugins.keyboard) { ... }

虽然修复是:

if (window.cordova && window.cordova.plugins && window.cordova.plugins.keyboard) { ... }

现在我们在 2 天后找到了修复,看起来很明显,但这行在项目中有点隐藏,搜索键盘给出了很多结果。