点击通知时启动Firefox OS应用程序

时间:2015-02-10 02:00:15

标签: javascript notifications firefox-os

我尝试为我的Firefox OS应用程序实现通知点击(点击)处理程序失败。

Notification对象的API文档在这里: https://developer.mozilla.org/en-US/docs/Web/API/notification

在我的应用中,我有一个功能,可以在点击通知并导航到网址时启动手机的浏览器:

notification.onclick = function(){
   var navURL = new MozActivity(
   {
       name: "view",
       data: {
           type: "url",
           url: "https://google.com"
       }
    });

    console.log("Notification tapped");
};

当用户正在查看应用并点按通知时,我的应用启动浏览器并相应地导航到Google的主页。

但是,如果我的应用程序在后台运行,则在点击通知时不会发生任何事情。控制台仍会打印"通知点击"消息(显然调用了事件处理程序),但浏览器不会启动。回到应用程序,一切正常。

即使我的应用在后台,有没有办法让浏览器启动?

编辑:替代解决方案

点击通知时是否可以将我的应用程序重新置于前台?

1 个答案:

答案 0 :(得分:1)

notification.onclick = function(){
    var navURL = new MozActivity(
   {
       name: "view",
       data: {
           type: "url",
           url: "https://google.com"
       }
   });
   navUrl.onsuccess = function () {
       // fired if appication is running foreground
   }
   navUrl.onerror = function () {
       // fired if application is running background
       navigator.mozApps.getSelf().onsuccess = function (){
           this.result.launch();
       }
   }
};

如前所述,这应该有效