2011-08-31 66 views
0

开始玩android的手机,我不能得到任何东西在navigator.notifications工作(实际上看起来像navigator.<anything>不工作)。在我的JS我已经尝试Phonegap navigator.notifications不做任何事情

navigator.notification.vibrate(1000); 
navigator.notification.vibrate(); 
navigator.notification.alert("one", "two", "three"); 
navigator.notification.beep(1); 

没有人做任何事情,应用程序只是继续过去他们像任何事情发生过。如果我alert(navigator)我得到[object object]alert(navigator.notification)给出null。

回答

4

的PhoneGap为Android支持你所提到的这三个通知方法。对我来说,它看起来像你试图在PhoneGap准备好之前运行它们(所以navigator.notification对象被初始化之前)。确保您的代码在PhoneGap通知deviceready事件之前未被执行。只是为了测试,你可以尝试运行这样的代码:

document.addEventListener("deviceready", function(){ 
    navigator.notification.vibrate(1000); 
    navigator.notification.alert("Hello"); 
    navigator.notification.beep(1); 
}, false); 

也请注意,在你的例子存在alert方法调用一个错误。第二个参数是一个回调(在用户按下/点击警报按钮后执行),所以你不应该在那里传递一个字符串。

+0

'deviceready'是它。为什么我在文档的任何地方都看不到? –

+0

它在[events section](http://docs.phonegap.com/phonegap_events_events.md.html#Events)中有描述,但我同意像应用程序框架这样的重要信息应该突出显示。 –