如何定期通知phonegap通知插件

时间:2012-04-19 20:20:38

标签: android cordova phonegap-plugins

我一直在寻找这个好几个小时,似乎无法找到它。我有用于adroid工作的phonegap系统通知插件; https://github.com/phonegap/phonegap-plugins/tree/master/Android/StatusBarNotification

我想到了如何使用它; android phonegap notification status bar shows nothing

但我不希望用户必须点击链接。我想让脚本定期查找新的更新。我尝试使用setTimeout$(document).ready(handler),但没有任何效果。我也无法从我的代码的最后一行(</body>之前)推送一个通知,这个通知适用于常规浏览器中的大多数javascripts。

那么谁可以帮助我让计时器运行以将此通知推送到状态栏?

没关系,我使用下面的代码让它工作。不确定出了什么问题,但可能是一天中的时间:)

function onDeviceReady() {
    // Now safe to use the PhoneGap API
    setTimeout("notify()",60000);
}

function notify() {
    navigator.notification.beep(1);
    window.plugins.statusBarNotification.notify("Put your title here", "Put your message here");
    return false;
}

2 个答案:

答案 0 :(得分:0)

你可以试试这段代码。获取计时器并在时间设置通知

function updateClock ( ){
 var currentTime = new Date ( );
  var currentHours = currentTime.getHours ( );
  var currentMinutes = currentTime.getMinutes ( );
  var currentSeconds = currentTime.getSeconds ( );
//get timer varialbe

//check. send a notification to update
if(currentHours == ... && currentMinutes  == ...){
  notify();//send notification
}

每秒更新一次计时器

 setInterval('updateClock()', 1000);

答案 1 :(得分:0)

使用LocalNotification插件代替StatusBarNotification。

function onDeviceReady() {
// Now safe to use the PhoneGap API
setTimeout("notify()",60000);}

function notify() {
if (typeof plugins !== "undefined") {
                    plugins.localNotification.add({
                        date : new Date(),
                        message : "Phonegap - Local Notification\r\nSubtitle comes after linebreak",
                        ticker : "This is a sample ticker text",
                        repeatDaily : false,
                        id : 4
                });}

有关详细信息,请访问 - Local Notification PhoneGap Plugin for Android