Solucionado (ver solução)
Solucionado
(ver solução)
5
respostas

adb.exe: Command failed with exit code 3221226356

Pessoal,

estou tendo esse problema quanto tento realizar o deploy tanto no emulador (Genymotion) como no dispositivo real.

Já desinstalei todo o ambiente e reinstalei novamente sem sucesso.

Sempre que mando executar ele compila a aplicação, mas na hora de executar ele aponta o seguinte erro:

.....
BUILD SUCCESSFUL

Total time: 34.114 secs
Built the following apk(s):
        C:/Users/c090347/Documents/Alura/Curso_Cordova_PhoneGap/GarconApp/platforms/android/build/outputs/apk/android-debug.apk
ANDROID_HOME=C:\Android\android-sdk
JAVA_HOME=C:\Java\jdk1.8.0_102
No target specified, deploying to device '192.168.232.101:5555'.
Skipping build...
Built the following apk(s):
        C:/Users/c090347/Documents/Alura/Curso_Cordova_PhoneGap/GarconApp/platforms/android/build/outputs/apk/android-debug.apk
Using apk: C:/Users/c090347/Documents/Alura/Curso_Cordova_PhoneGap/GarconApp/platforms/android/build/outputs/apk/android-debug.apk
Package name: br.com.bonfimsoft.garconapp
Error: C:\Android\android-sdk\platform-tools\adb.exe: Command failed with exit code 3221226356

O intrigante é que o app vai parar no dispositivo, mas não executa a aplicação e sendo assim terei problemas em depurar o app.

As minhas configurações atuais são as seguintes:

c:\>node -v
v4.6.1

c:\>cordova -v
6.4.0

c:\>java -version
java version "1.8.0_111"
Java(TM) SE Runtime Environment (build 1.8.0_111-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.111-b14, mixed mode)

c:\>javac -version
javac 1.8.0_102

c:\>adb version
Android Debug Bridge version 1.0.36
Revision 84e3321d5db3-android

PATH = %PATH%;%ANDROID_HOME%\tools;%ANDROID_HOME%\platform-tools;%ANDROID_HOME%build-tools;

Quando rodo o emulador no Genymotion e plugo o dispositivo físico obtenho os devices:

c:\>adb devices -l
List of devices attached
0019376394             device product:merlin_retail model:MotoG3_TE device:merlin
192.168.232.101:5555   device product:vbox86p model:Samsung_Galaxy_S6___6_0_0___API_23___1440x2560 device:vbox86p

Já tentei executar os comandos tanto com os dois dispositivos plugados como com apenas cada um individual da seguinte forma:

Fisico: cordova run android --device
Emulador: cordova run android

Vi em um post aqui que um colega teve um problema pela ausência do Motorola Device Manager que também já foi instalado. Já apontei também no Genymotion nas configurações do ADB para usar o meu Android SDK Tools. Mas não resolveu pra nenhum dos dois ambientes. :-(

Já tentei excluir a plataforma android e incluir novamente e nada. A app apenas é transferido para o dispositivo, no físico e no emulador, mas dá o erro.

Segue minhas instalações do android manager:

Name                                  |    API    |    REV
Tools:
    Android SDK Tools                 |           |    25.2.2
    Android SDK Platform-tools        |           |    25
    Android SDK Build-tools           |           |    25
Android 7.1.1 (API 25)
    SDK Platform                      |    25     |    1
Android 7.0 (API 24)
    SDK Platform                      |    24     |    2
    Google APIs                       |    24     |    1
Android 6.0 (API 23)
    SDK Platform                      |    23     |    3
    Google APIs                       |    23     |    1
Extras
    Google USB Driver                 |           |    11

Alguém tem alguma ideia do que possa solucionar essa situação para permitir a execução sem erros?

Grato

5 respostas

Tentou fechar o GapDebug:?

Renan, não conhecia o GapDebug. Vou dar uma olhada nele com mais detalhes, talvez possa resolver o problema de debug, mas continuo sem entender a motivação do erro ocorrido.

Obrigado pela dica, mas vou continuar numa solução para o problema.

Oi Fábio

Pra isolar o problema, eu começaria tentando aproximar o seu ambiente ao máximo com o que foi usado no curso. Em especial a versão do Node, que no meu caso sempre acaba sendo a culpada (;

No curso o Sérgio usa a v4.2.3, tenta usar a mesma?

Se não funcionar, você pode ver as outras versões que ele usa nesse tópico de instalação:

https://cursos.alura.com.br/course/cordova-phonegap/task/14255

ps: o Sérgio está de férias, por isso ainda não interagiu aqui na dúvida. Mas não se preocupe que vou acompanhar o tópico até que o problema seja resolvido.

solução!

Rodrigo, muito obrigado pela atenção!

Desculpe a demora no retorno, mas tive um problema na minha internet no final de semana e não consegui acessar o curso ou responder aqui no forum.

A sua ideia não solucionou mas me ajudou bastante na investigação e consegui resolver o problema.

O que esta ocorrendo é o seguinte, com a instalação atual do cordova (v6.4.0) a plataforma do android instalada é cordova-android@6.0.0 que por consequência ao adicionar a plataforma android a API definida era a 24 que refere-se ao Android 7.0 (Nougat).

Como o meu dispositivo é o 6.0 e os emuladores que estava utilizando no Genymotion eram para os niveis de API 17 / 19 / 23, pinba! Erro na inicialização, apesar da implantação no dispositivo.

Removi então o cordova, o node, apaguei os diretórios de cache do npm, node e cordova. Reinstalei o Node 4.6.2 e o cordova 6.4.0, criei uma VM no Genymotion ainda em Preview sob o Nexus 5X - 7.0.0 - API24 e voilá! rodou tranquilo no emulador.

Ainda continuo sem conseguir realizar o deploy sem erros no dispositivo físico, mas vou dar continuidade aos estudos para ver mais na frente como especificar corretamente o device target para um range de aparelhos.

Porém lembro que o erro não se trata do node, npm ou cordova, mas o erro ocorre no ADB.

De qualquer sorte muito obrigado pelo apoio.

perfeito, Fábio! que bom que conseguiu solucionar

qualquer coisa nos avise, ok? bons estudos e bom feriado