2011-08-31 3 views
0

안드로이드 용 phonegap으로 게임을 시작했으며 navigator.notifications에서 아무 것도 할 수 없습니다 (실제로는 navigator.<anything>이 작동하지 않는 것 같습니다). 내 JS에서 나는 그들 중Phonegap navigator.notifications does nothing anything

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

Android 용 PhoneGap은 언급 한 세 가지 알림 방법을 모두 지원합니다. 나에게 PhoneGap이 준비되기 전에 (당신이 navigator.notification 객체가 초기화되기 전에) 그것들을 실행하려고 시도하는 것처럼 보인다. PhoneGap이 deviceready 이벤트를 알리기 전에 코드가 실행되지 않았는지 확인하십시오. 그냥 테스트를 위해이 같은 코드를 실행하려고 할 수 있습니다

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

또한 예에서 alert 메소드 호출에 잘못이 있음을 발견하십시오. 두 번째 매개 변수는 콜백 (경고시 사용자가/taps 버튼을 누른 후에 실행 됨)이므로 거기에 문자열을 전달하면 안됩니다.

+0

'deviceready '였습니다. 왜 내가 문서의 어느 곳에서도 이것을 보지 못했을까요? –

+0

[이벤트 섹션] (http://docs.phonegap.com/phonegap_events_events.md.html#Events)에 설명되어 있지만, 애플리케이션 스켈레톤과 같은 중요한 정보가 더 강조되어야한다는 것에 동의합니다. –