0

我最近开始使用 Onsen-UI 2 和 Monaca CLI 工具。这是一个非常棒的工具,非常有用。虽然我遇到了一两个小问题,但我认为我可以通过查看迁移指南来解决其中的大部分问题。

我似乎无法弄清楚的最大问题是插件。我使用 Monaca CLI 创建了我的应用程序(Plain JS Onsen 2.0 应用程序),然后继续使用普通的 cordova 命令来添加我的平台和插件。不要问我为什么,我就是喜欢这样。在为 iOS 构建时,我得到构建“成功”状态,并且我的应用程序在模拟器和我的设备上运行良好。问题是当我尝试使用插件提供的功能时。

我尝试实现 Card.io 插件(安装成功)并且我的应用程序启动得很好。我有一个在设备上触发的功能,准备检查插件是否正常工作,一个“canScan”功能,它显示一个带有结果的警报。但是,即使设备准备就绪,也没有任何反应。奇怪的行为是这样的:当我将应用程序置于后台,或打开多任务窗口(双击主页按钮)然后返回应用程序时,警报会显示我可以扫描的消息。收到此消息后,我应该可以点击一个按钮,然后应该会出现 Card.io 界面,但是当我点击该按钮时,什么也没有发生。只有当我像以前一样(进入多任务处理并返回应用程序)时才会出现 Card.io 界面,但会冻结应用程序。

我认为我的插件实现存在问题,即我的代码错误,但其他插件也会发生这种情况。

关于这里发生了什么的任何想法?

这是我的“onDeviceReady”功能:

document.addEventListener('deviceready', function() {
    CardIO.canScan(onCardIOCheck);
}, false);

这就是我安装插件的方式:

$ cordova plugin add <plugin-name>

我还尝试通过 Monaca 工具安装插件:

$ monaca plugin add <plugin-name>

任何帮助或建议将不胜感激!

4

1 回答 1

1

将您的 onDeviceReady 函数移到单独的 .js 文件中,看看是否能解决问题。

于 2016-10-01T20:44:49.197 回答