Angularjs 在B2G中使用mozMobileMessage为接收到的SMS添加EventListner

Angularjs 在B2G中使用mozMobileMessage为接收到的SMS添加EventListner,angularjs,firefox-os,Angularjs,Firefox Os,我一直在教自己如何在大学作业中用AngularJS为Firefox OS编写应用程序。这是我第一次尝试用JS编写应用程序 该应用程序的目的是根据通过SMS发送的“命令”运行命令(也称为“响铃”、“锁定设备”、“打开wifi”,并使用GPS位置回复SMS命令)。目前,我只是想做一个简单的$window.alert('Messaged Received'),在收到短信时显示 我的问题是,我正在尝试为传入的SMS创建一个addEventListener,并且目前显示一个$window.alert()。

我一直在教自己如何在大学作业中用AngularJS为Firefox OS编写应用程序。这是我第一次尝试用JS编写应用程序

该应用程序的目的是根据通过SMS发送的“命令”运行命令(也称为“响铃”、“锁定设备”、“打开wifi”,并使用GPS位置回复SMS命令)。目前,我只是想做一个简单的
$window.alert('Messaged Received')
,在收到短信时显示

我的问题是,我正在尝试为传入的SMS创建一个
addEventListener
,并且目前显示一个
$window.alert()
。稍后,我将使用case开关

我已经参考了创建事件侦听器的步骤

var mozMM = navigator.mozMobileMessage;
mozMM.addEventListener('received', function addEventListener(evt) {
    // Display a alert when a message is received
    $window.alert('SMS received');
    $window.alert(evt.message.body);
}, false);
我的
清单.webapp
已设置为包含所有相关设置:

"type" : "certified",
"permissions": {
    "backgroundservice":{},
    "sms":{},
    ...
},
"messages": [
    { "sms-received": "/index.html" },
    { "notification": "/index.html" }
]
我可以从我的应用程序发送短信,没有任何问题。所以我假设我的权限没有问题。我还确认我拥有对
mozMobileMessage
对象的完全访问权限

为了进行测试,我使用了一个Geekphone,它已经扎根,可以安装经过认证的应用程序

我已将源代码上载到github:
感谢谷歌群组中的某个人给了我正确的解决方案。我想我也会在这里分享

问题是我使用了错误的事件处理程序。我应该使用系统消息处理程序来代替

navigator.mozSetMessageHandler('sms-received', function onSMS(sms) { 
    /* here your code */ 
}); 

与清单中的“
”消息“:[]
处理程序相结合,系统处理程序将提醒应用程序已收到消息,即使应用程序正在后台运行

感谢谷歌集团的某个人给了我正确的解决方案。我想我也会在这里分享

问题是我使用了错误的事件处理程序。我应该使用系统消息处理程序来代替

navigator.mozSetMessageHandler('sms-received', function onSMS(sms) { 
    /* here your code */ 
}); 
与清单中的“
”消息“:[]
处理程序相结合,系统处理程序将提醒应用程序已收到消息,即使应用程序正在后台运行