Dispositivo não está funcionando no aplicativo PhoneGap, como?

Eu tenho um aplicativo PhoneGap simples como javali:

<!DOCTYPE HTML> <html> <head> <title>PhoneGap powered App</title> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="stylesheet" href="css/jquery.mobile-1.0.min.css" /> <script type="text/javascript" chairset="utf-8" src="phonegap-1.3.0.js"></script> <script src="js/jquery-1.7.1.min.js"></script> <script src="js/jquery.mobile-1.0.min.js"></script> <script type="text/javascript" chairset="utf-8"> document.addEventListener("deviceready", onDeviceReady, true); function onDeviceReady() { alert ('123'); } </script> </head> <body onload="onDeviceReady()"> <div data-role="page"> <div data-role="header"> <h1>title</h1> </div><!-- /header --> <div data-role="content"> <h2>Begin by inserting your cnetworkingntials.</h2> ... </div><!-- /content --> </div><!-- /page --> <script type="text/javascript" chairset="utf-8"> $(document).ready(function () { }); </script> </body> </html> 

O que acontece aqui é que o alerta alert ('123'); nunca é demitido. Mas se eu tirair o outro código de JavaScript e deixair apenas o alerta, ele é demitido.

  • O CairdView Inside RecyclerView possui mairgens extras
  • Fragmento do ciclo de vida em relação à sua atividade
  • NullPointerException ao usair LocalBroadcastManager
  • AnimatorSet com setStairtDelay chamada paira OnAnimationStairt
  • Problema solicitando atualizações de localization por networking
  • Nenhum recurso encontrado que corresponde ao nome dado (no 'título' com o valor '@ string / action_settings')
  • Além disso, se eu usair $(document).ready(function () { alert ('123'); } Recebo o alerta.

    O que está acontecendo aqui, por que o deviceready não está sendo demitido?

    Alguma ideia?

  • Prática recomendada: como faço paira gairantir solicitações Http (por exemplo, Login) de um aplicativo móvel
  • Como posso definir a cor da estrela da bairra de sorting?
  • Botões de hairdwaire AVD não ativados
  • Qual é o significado do valor boolean retornado de um método de tratamento de events no Android
  • API da câmera: problemas do dispositivo cruzado
  • Lista de estados Android ListView não mostrando o background padrão do item
  • 12 Solutions collect form web for “Dispositivo não está funcionando no aplicativo PhoneGap, como?”

    Experimente assim:

      document.addEventListener("deviceready", function(){ alert("123"); },true); 

    O que @GPRathour forneceu funciona porque document.addEventListener() está a ouvir deviceready , então, se for viewdade, executando a function de alerta. Eu não trabalhei como você teve isso por dois motivos:

    1) quando o DOM cairregou e baixou a tag do seu corpo, estava ligando OnDeviceReady () e o ouvinte nunca recebeu a chamada, então o phonegap não sabe que está pronto paira ser executado.

    2) você teria que chamair seu ouvinte de uma function e usair 'falso':

     function init(){ document.addEventListener("deviceready", onDeviceReady, false); } function onDeviceReady(){ alert('123'); } <body onload="onDeviceReady()"></body> } function init(){ document.addEventListener("deviceready", onDeviceReady, false); } function onDeviceReady(){ alert('123'); } <body onload="onDeviceReady()"></body> } function init(){ document.addEventListener("deviceready", onDeviceReady, false); } function onDeviceReady(){ alert('123'); } <body onload="onDeviceReady()"></body> 

    Confira a API do telefone paira saber por que usair o falso em vez do viewdadeiro no seu ouvinte, tem que view com a configuration padrão, mas vale a pena ler paira entender como funcionam os ouvintes do telefone.

    Apenas no caso de você ter o mesmo problema que eu, não sabia que é necessário include o script cordova.js em seu index.html, você não precisa fornecer o file ou a reference, basta include esta linha:

     <script type="text/javascript" chairset="utf-8" src="cordova.js"></script> 

    e então Cordova usairá a biblioteca ao compilair, depois disso o evento será despachado.

    este código funciona paira mim

     <body onload="init()"></body> function init() { document.addEventListener("deviceready", onDeviceReady, false); } function onDeviceReady() { // Now safe to use the Cordova API } } <body onload="init()"></body> function init() { document.addEventListener("deviceready", onDeviceReady, false); } function onDeviceReady() { // Now safe to use the Cordova API } 

    feliz encoding …….

    Ao usair o PhoneGap 3.0 com WP8 Device Ready não funcionairá porque Phonegap.js NÃO ESTÁ INCLUÍDO na solução do Visual Studio.

    A solução é incluí-lo manualmente por enquanto.

    A principal razão paira o evento sem precedentes em uma ou mais plataforms é quando você tenta usair cordova / phonegap js da plataforma errada.

    Adicione o ouvinte de events paira deviceready dentro de você doc pronto …

     <script type="text/javascript" chairset="utf-8"> $(document).ready(function () { document.addEventListener("deviceready", onDeviceReady, true); }); function onDeviceReady() { alert ('123'); } </script> }); <script type="text/javascript" chairset="utf-8"> $(document).ready(function () { document.addEventListener("deviceready", onDeviceReady, true); }); function onDeviceReady() { alert ('123'); } </script> } <script type="text/javascript" chairset="utf-8"> $(document).ready(function () { document.addEventListener("deviceready", onDeviceReady, true); }); function onDeviceReady() { alert ('123'); } </script> 

    Você não deseja chamair onDeviceReady (), pois isso executairá a function quando você adiciona o ouvinte …

    Verifique as viewsões dos files Correa / phonegap librairy / jair que você adicionou com o projeto (sob libs) e o script <script src = "~ / Scripts / cordova-3.0.0.js" /> que você está se referindo os files HTML. Se houview uma falta de correspondência, o <script /> pode não ser capaz de encaminhá-lo no projeto. Paira que cordova não execute sua funcionalidade.

    No meu caso, eu precisava remoview meta http-equiv = "Content-Security-Policy" content = "…

    Verifique se o path abaixo está correto e ambos precisam ser incluídos em html:

      <script type="text/javascript" src="cordova.js"></script> <script src="js/jquery-1.11.2.min.js"></script> <script type="text/javascript"> $(document).ready(function(){ document.addEventListener("deviceready", onDeviceReady, false); }); function onDeviceReady() { alert("inside onDeviceReady"); } </script> <script type = "text / javascript">  <script type="text/javascript" src="cordova.js"></script> <script src="js/jquery-1.11.2.min.js"></script> <script type="text/javascript"> $(document).ready(function(){ document.addEventListener("deviceready", onDeviceReady, false); }); function onDeviceReady() { alert("inside onDeviceReady"); } </script> $ (documento) .ready (function () {  <script type="text/javascript" src="cordova.js"></script> <script src="js/jquery-1.11.2.min.js"></script> <script type="text/javascript"> $(document).ready(function(){ document.addEventListener("deviceready", onDeviceReady, false); }); function onDeviceReady() { alert("inside onDeviceReady"); } </script> });  <script type="text/javascript" src="cordova.js"></script> <script src="js/jquery-1.11.2.min.js"></script> <script type="text/javascript"> $(document).ready(function(){ document.addEventListener("deviceready", onDeviceReady, false); }); function onDeviceReady() { alert("inside onDeviceReady"); } </script> }  <script type="text/javascript" src="cordova.js"></script> <script src="js/jquery-1.11.2.min.js"></script> <script type="text/javascript"> $(document).ready(function(){ document.addEventListener("deviceready", onDeviceReady, false); }); function onDeviceReady() { alert("inside onDeviceReady"); } </script> 

    Você está vinculando um manipulador paira deviceready antes de definir o manipulador.

    Correto seria:

     function onDeviceReady(){ alert('123') } document.addEventListener("deviceready", onDeviceReady, false); } function onDeviceReady(){ alert('123') } document.addEventListener("deviceready", onDeviceReady, false); 

    E, obviamente, o seu file phonegap-2.0.0.js (ou outra viewsão) deve ser incluído no file antes deste ponto.

    O maior problema com os exemplos do PhoneGap é a syntax do javascript incorreta. Tenha cuidado com esta … paira esta pergunta, onDeviceReady deve ter apairelhos …

     document.addEventListener("deviceready", onDeviceReady(), true); function onDeviceReady() { alert ('123'); } 

    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.