我正在尝试使用 PhoneGap 开发适用于 iOS 和 Android 的应用程序,但遇到了一个我似乎无法找到答案的问题。这可能是一个新手错误,但也许有人可以指出我正确的方向。这是我的环境:
1) PhoneGap 版本为 6.5.0。我刚刚升级到 7.0.0 的 Cordova 版本。
2) OS X El Capitan (10.11)。
3) PhoneGap Developer App 安装在运行 iOS 10 的 iPhone 上。
4) Hello World 示例应用程序(但我的真实应用程序也以同样的方式失败)。
问题是,如果我向位于项目根文件夹的 config.xml 添加一个新插件,那么我会看到插件被下载到插件文件夹中,但是在 deviceready 事件发生后我永远无法获得它的实例被解雇了。
例如,如果我将其添加到 config.xml:
<plugin name="cordova-plugin-ace" spec="https://github.com/microsoft/ace.git" />
如果使用 PhoneGap 桌面应用程序或 CLI 命令“phonegap serve”将应用程序提供给我的 iPhone,并且我在 deviceready 处理程序中发出 window.ace 警报,则该值为“未定义”。
但是,如果我执行“cordova run ios”以通过模拟器运行应用程序,则 window.ace 已定义并可以正常工作。
此外,如果我将 content src 属性更改为指向另一个文件,它同样适用于“cordova run ios”,但不适用于 PhoneGap 开发人员应用程序,它似乎总是提供 index.html。我看过一个用户的帖子,那里有同样的问题,建议是开发人员应用程序不读取 config.xml。我通过故意在其中放置错误来证明情况并非如此,这些错误会被捕获。
谁能告诉我我做错了什么,因为如果我不能添加插件,它会让 PhoneGap 开发者应用程序无用?