Deviceready не будет запускаться в Phonegap 1.0.0 на Android

Я попытался установить Phonegap на Android, и deviceready не будет срабатывать. Причина в том, что DeviceInfo.uuid всегда имеет значение null / undefined.

Похоже, что части jQuery не имеют правильной загрузки, но я точно не вижу. Для всего, что находится за пределами каталога www, я использую код, указанный в образце каталога загрузки телефонной книги.

Кто-нибудь знает, что может быть причиной этого?

 <!DOCTYPE html> <html> <head> <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no;" /> <meta http-equiv="Content-type" content="text/html; charset=utf-8"> <script type="text/javascript" charset="utf-8" src="javascripts/phonegap-1.0.0.js"></script> <script src="http://debug.phonegap.com/target/target-script-min.js#something"></script> <script type="text/javascript" charset="utf-8"> function onBodyLoad() { var initialize = function() { window.console.log("deviceready||resume"); }; document.addEventListener("deviceready", initialize); document.addEventListener("resume", initialize); window.console.log("onBodyLoad!"); } </script> </head> <body onload="onBodyLoad()"> <h1>Herro World</h1> </body> </html> 

Solutions Collecting From Web of "Deviceready не будет запускаться в Phonegap 1.0.0 на Android"

Если кто-то еще наткнется на эту проблему.

Я не понял, что phonegap-1.0.0.js отличается от версии для iPhone и Android. Он имеет то же имя, но контент отличается. Таким образом, нужно загрузить правильный файл. Я решил это так:

 <script type="text/javascript"> // Atrocious way of loading two diffent phonegap scripts, but other loading methods won't work. // also there shouldn't be two scripts to begin with -- so much for cross-platform. var userAgent = navigator.userAgent.toLowerCase(); if (userAgent.match(/android/)) { document.write("<script type='text/javascript' src='javascripts\/phonegap-android-1.0.0.js'><\/script>"); } else { document.write("<script type='text/javascript' src='javascripts\/phonegap-iphone-1.0.0.js'><\/script>"); } </script> 

Если вы хотите, чтобы какая-либо функция выполнялась, когда устройство готово, сделайте что-то вроде этого

 document.addEventListener("deviceready", onDeviceReady, true); // PhoneGap is now ready function onDeviceReady() { // Write your code here } 

Я не знаю, почему ваш код не работает. Поместите document.addEventListener за пределы функции.