Solucionado (ver solução)

Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

Solucionado
(ver solução)
11
respostas

No android só mostra a lista inicial

No android só mostra a lista inicial Testei num aparelho como Android 5 e em outro com o Android 6 Só mostra a listagem inicial No navegador funcionou tudo normalmente.

O que pode ser, já que fiz tudo conforme o curso?

*App ID : 1860681e

11 respostas

Olá Portela.

Quase certeza que possa ser um erro no link que manda o usuário para a segunda tela.

Se a primeira tela está funcionando, quer dizer que sua aplicação consumindo dados da internet perfeitamente.

Coloque aqui pra gente o código da primeira e segunda tela e tbm as controllers, para a gente dar uma olhada.

Pra ser erro no link que manda o usuário, não funcionaria no browser, como descrevi.

Tem algum problema no uso do ionic, o curso não explorou esses problemas.

A noite posto o código.

Portela,

Não é um erro tão comum assim para ser algo que a gente previu durante a criação do curso. Certos erros, aqueles mais comum, a gente previu e apresentou no curso porém não tem coo prever todos os erros conforme os alunos vão fazendo.

Por não saber qual é o erro, q eu pedi o código para tentar te ajudar.

É comum o erro de não carregar a lista de carros no celular devido ao CORS, como relatado por outros alunos aqui no forum, mas o link de uma tela para outra é a primeira vez que aparece por aqui, sendo assim difícil de prever e colocar no curso.

Ok, por hora reforço que funciona muito bem no navegador, mas não no mobile (Android) a noite posto o código pra verificarem.

Segue o código, funciona bem no navegador mais não funcionou no ionic view, testado no Android 5 e 6.

https://drive.google.com/open?id=0B1GNk2S1StiwdWxtM0IzeEtzZW8

solução!

Oi Portela,

primeiramente me desculpe pelo atraso. Estava gravando outros curso e fiquei sem tempo.

Baixei o seu projeto e rodei no android e descobri o erro.

No seu arquivo de rotas, vc colocou o templateURL com uma / no começo

.state('carroEscolhido', {
        url:'/carroEscolhido/:carro',
        templateUrl: '/templates/carroEscolhido.html',
        controller: 'CarroEscolhidoController'

Se vc tirar a barra no começo, ele volta a funcionar no android

.state('carroEscolhido', {
        url:'/carroEscolhido/:carro',
        templateUrl: 'templates/carroEscolhido.html',
        controller: 'CarroEscolhidoController'

Uma coisa legal para vc identificar erros assim q só ocorrem no celular, é plugar ele na USB e rodar o comando ionic run android --device.

Depois vc vai no Chorme do seu computador e acessa o endereço: chrome://inspect/

Ele vai abrir uma pagina com o console aberto para vc ver o erro.

retirei a barra, fiz o novo upload e continua sem funcionar. Vou fazer o debug como indicou pra ver se aparece alguma outra coisa.

Portela, eu consegui rodar no celular agora com a alteração que te falei.

O erro que peguei pelo chrome foi

GET file:///templates/carroEscolhido.html net::ERR_FILE_NOT_FOUND

Como vc pode ver no erro, ele está tentando pegar o arquivo, porém da erro pois tem uma barra a mais no path

Hum, funcionou no Android 5, mas não no Android 6. Vou montar um virtual e debugar ele.

Eu rodei direto no meu celular. É um Z2 da Sony com a versão 6.0.1 do Android.

;-) Limpei o cache do IonicView e funcionou! Valeu pessoal.