我有一个使用OnsenUI,Monaca和Cordova构建的跨平台应用程序,并且使用Visual Studio作为我的IDE。在Visual Studio中安装和使用Cordova插件
我的Monaca在Visual Studio中配置成使用导THIS和它工作100%。
我需要我的应用程序中,即使应用程序被关闭等后台运行,并为这个我已经通过安装Visual Studio插件THIS实现的任务。
钛安装插件,在Visual Studio中我选择我的项目的config.xml文件,然后选择 - >插件 - >自定义 - > Git和输入与上述插件的URL。 Visual Studio安装插件,我收到一条成功消息。我检查我的项目的文件夹结构,并在插件文件夹,我看到已安装的插件。
我也以类似的方式安装其他插件如前相机,它已按预期工作。
然后我尝试使用的插件功能,按使用指南HERE但我不断收到错误“遗漏的类型错误:无法读取的未定义的属性‘backgroundMode’”
我也试图根据一些建议调用函数如下,但我仍然得到相同的错误。
window.cordova.plugins.backgroundMode.setDefaults({ text: 'Doing heavy tasks.' });
我尝试调用函数如下一个控制器(简称样品)
var mainNavigation = angular.module("mainNavigationController", []);
mainNavigation.controller("MainNavigationController", function ($scope, NetworkConnection) {
var init = function() {
document.addEventListener("deviceready", onDeviceReady, false);
};
init();
function onDeviceReady() {
cordova.plugins.backgroundMode.setDefaults({ text: 'Doing heavy tasks.' }); // Not working
window.cordova.plugins.backgroundMode.setDefaults({ text: 'Doing heavy tasks.' }); // Not working either
};
});
我也尝试添加示例代码如下我的项目loader.js文件(简称版本),但我又得到了同样的错误。
// This is an auto-generated code by Monaca JS/CSS Components. Please do not edit by hand.
/*** <Start:monaca-cordova-loader> ***/
/*** <Start:monaca-cordova-loader LoadJs:"components/monaca-cordova-loader/cordova-loader.js"> ***/
(function(){
function getDeviceObjectForPreview() {
// Code omitted
}
/*** <Start:monaca-core-utils> ***/
/*** <Start:monaca-core-utils LoadJs:"components/monaca-core-utils/monaca-core-utils.js"> ***/
/*** Monaca Core Utility Library. This library requires cordova.js ***/
window.monaca = window.monaca || {};
(function() {
// Code omitted
monaca.isDeviceReady = monaca.isDeviceReady || false;
document.addEventListener('deviceready', function(){
window.monaca.isDeviceReady = true;
monaca.apiQueue.next();
cordova.plugins.backgroundMode.setDefaults({ text: 'Doing heavy tasks.' }); // Not working
}, false);
}
我还没有在我的index.html文件中导入任何文件,例如
<script src="js/canvasDraw/signatureCapture.js"></script>
为什么我得到未定义的错误?我已经检查并且cordova.js也是从loader.js加载的。