Solução de Problemas Comuns nos Aplicativos Móveis Híbridos do Oracle JET
Ao implantar seu aplicativo móvel híbrido com o Oracle JET, os problemas mais comuns podem ser devido a exceções de runtime, configuração incorreta e problemas de rede.
Problema 1: Falha na compilação ojet
Ao trabalhar por trás de um firewall corporativo, você pode receber mensagens informando que o build falhou após emitir um comando ojet build ou ojet0- serve.
Se você estiver protegido por um firewall corporativo, verifique se configurou as configurações de proxy npm corretamente.
Problema 2: Não é possível iniciar o aplicativo móvel híbrido no emulador do SO móvel
Você pode criar com sucesso seu aplicativo móvel híbrido, mas descubra mais tarde que não é possível testá-lo em um emulador de SO móvel.
Por exemplo, os logs do console podem mostrar que o aplicativo trava em um estado "em espera" permanente:
Running "serve" task
Running "customServe" task
Invoking cordova serve
Static file server running on: http://localhost:8090 (CTRL + C to shut down)Invoking cordova run
Starting watch
Running "watch" task
Waiting...Esse problema é comum ao executar o comando ojet serve antes de iniciar o emulador. Embora ojet tente iniciar o emulador, alguns comandos podem não ser executados enquanto o emulador está sendo iniciado. Para evitar esse problema:
-
Sempre inicie o emulador primeiro.
-
Não especifique um parâmetro de destino para o comando
ojet serve. O aplicativo será implantado no emulador aberto/padrão. -
Depois que o emulador tiver sido iniciado, execute o comando
ojet serve. -
Certifique-se de ter executado
ojet buildantes de um comandoojet serve.
Problema 3: Executando em um Problema CORS Durante a Depuração
Às vezes, seu aplicativo não pode se conectar a nenhum middleware móvel, como o Oracle Mobile Hub, ou executar a autenticação ao usar um depurador ativo de emulador.
Para evitar que isso aconteça, use o parâmetro ojet --no-livereload para desativar o recurso de recarga ao implantar seu aplicativo:
ojet serve --platform=android --no-livereload=trueProblema 4: LiveReload Não Funciona em um Dispositivo Físico
Não ser capaz de servir para um dispositivo com LiveReload ativado é um problema conhecido.
Para contornar esse problema, desenvolva o conteúdo do aplicativo em um browser usando o flag --browser:
ojet serve android --browserEm seguida, use LiveReload no emulador. Observe que esse processo é mais lento em um emulador do que em um dispositivo real:
ojet serve Para testar usando um dispositivo físico, você precisará desativar LiveReload:
ojet serve android --device --no-livereloadObservação:
Para ver uma lista de todas as opções disponíveis para o comandoojet serve, digite ojet help serve.