Cordova 插件后台模式:onactivate 第一次不工作 (android)
Cordova plugin background mode : onactivate is not working the first time (android)
我正在尝试在我的离子应用程序中使用后台模式插件,但我遇到了问题。
我想用 backgroundmode.onactivate
做与 github 项目的自述文件中显示的相同的事情。
如果只是从我第二次进入后台开始它不工作,它会工作得很好。
如果有人对这个问题有任何想法,我很乐意听到:)
我的代码示例:
$ionicPlatform.ready(function() {
document.addEventListener('deviceready', function () {
// Android customization
cordova.plugins.backgroundMode.setDefaults({ text:'Doing heavy tasks.'});
// Enable background mode
cordova.plugins.backgroundMode.enable();
if(cordova.plugins.backgroundMode.isEnabled()){
console.log('Hi, I am enabled. Signed : backgroundMode.');
}
// Called when background mode has been activated
cordova.plugins.backgroundMode.onactivate = function () {
setTimeout(function () {
// Modify the currently displayed notification
cordova.plugins.backgroundMode.configure({
text:'Running in background for more than 5s now.'
});
console.log('Running in background for more than 5s now.');
}, 5000);
}
}, false);
注意:当我的应用程序启动时,我确实得到了行 Hi, I am enabled. Signed : backgroundMode.
。
我改变了做事的方式来解决这个问题。虽然我没能理解那个错误:(
document.addEventListener("pause",onPause,false);
function onPause() {
$timeout(function() {
console.log("Running in background for more than 5s now ...");
}, 5000);
};
我正在尝试在我的离子应用程序中使用后台模式插件,但我遇到了问题。
我想用 backgroundmode.onactivate
做与 github 项目的自述文件中显示的相同的事情。
如果只是从我第二次进入后台开始它不工作,它会工作得很好。
如果有人对这个问题有任何想法,我很乐意听到:)
我的代码示例:
$ionicPlatform.ready(function() {
document.addEventListener('deviceready', function () {
// Android customization
cordova.plugins.backgroundMode.setDefaults({ text:'Doing heavy tasks.'});
// Enable background mode
cordova.plugins.backgroundMode.enable();
if(cordova.plugins.backgroundMode.isEnabled()){
console.log('Hi, I am enabled. Signed : backgroundMode.');
}
// Called when background mode has been activated
cordova.plugins.backgroundMode.onactivate = function () {
setTimeout(function () {
// Modify the currently displayed notification
cordova.plugins.backgroundMode.configure({
text:'Running in background for more than 5s now.'
});
console.log('Running in background for more than 5s now.');
}, 5000);
}
}, false);
注意:当我的应用程序启动时,我确实得到了行 Hi, I am enabled. Signed : backgroundMode.
。
我改变了做事的方式来解决这个问题。虽然我没能理解那个错误:(
document.addEventListener("pause",onPause,false);
function onPause() {
$timeout(function() {
console.log("Running in background for more than 5s now ...");
}, 5000);
};