O Android Studio reconhece o dispositivo físico como nulo?


89

Estou desenvolvendo um Android Application for Android(SDK min versão 14) e tenho testado normalmente com tablets como Samsung Galaxy 2 and Nexus 7. No entanto, quando tentei executar o aplicativo (clicando em executar AndroidStudio), o AS não reconheceu as informações do tablet, que são mostradas na imagem abaixo.

O dispositivo é nulo

O interessante é que, conforme mostrado na imagem acima, o AS também está detectando o dispositivo sdk API 1quando sua versão do Android é 4.2.2 O tablet já está configurado para aceitar " USB debugging" nas opções do desenvolvedor, eu tentei reiniciar o tablet e reiniciar o AS , mas ainda recebo o mesmo problema (está tudo bem com nexus 7 and Samsung Galaxy 2).

O tablet / dispositivo em que estou trabalhando é um "VeryKool" T742

Environment information:
 OS: ubuntu
 AndroidStudio version: 0.8.6

 Tablet Android version:4.2.2
 Tablet Kernel version: 3.4.5
 App min SDK: 14

3
Eu tive esse problema antes. Acontece que o tablet não é reconhecido como tal pelo seu pc e, portanto, não dá ao seu usuário a permissão para usá-lo. Você pode iniciar o serviço adb como root (em seu pc), ou simplesmente adicionar este tipo de dispositivo em algum lugar em seus rouls udev. Então ele deve funcionar sem o truque da câmera. Se você alterar o modo de câmera, seu dispositivo simplesmente se apresenta com outro dispositivo / id de produto, um conhecido pelo seu sistema.
— user3387542

@ user3387542 mas como adicionar este tipo de dispositivo ao meu udev?
— AbdelHady

Uau. muito obrigado. Eu perdi horas nisso. e a solução final para mim é iniciar o android studio como o usuário / root. como estou usando o centos OS
— Abdul Mohsin

Respostas:


161

Ok. Então eu finalmente encontrei o problema, aparentemente neste dispositivo você tem que configurar para conectar como câmera (mesmo após a depuração USB já estar habilitada)

insira a descrição da imagem aqui

Além disso, este link descreve o processo de configuração


3
Estou há dias procurando por este problema e a solução é conectá-la como "Câmera", isso é tão estranho mas funcionando! obrigado por compartilhar
— AbdelHady

no meu caso foi MTP selecionado e tive que alternar para PTP e depois voltar para MTP para funcionar.
— rjlopes

trabalhou no meu também! não sei qual é a razão embora!
— bmnepali

No meu caso, também tive que executar este comando no terminaladb devices
— Zohab Ali

57

Já vi esse erro algumas vezes quando o adb não foi conectado com as permissões corretas.

No terminal, tente

~/Android/Sdk/platform-tools> ./adb devices    

se retornar

<deviceIdentifier> no permissions

então você precisa reiniciar o adb com perms corretos

~/Android/Sdk/platform-tools$> ./adb kill-server
~/Android/Sdk/platform-tools$> sudo ./adb devices

se funcionou, então você obterá

List of devices attached
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
<deviceIdentifier>  device

Depois disso, não haverá mais problemas de resolução de versão SDK no Android Studio.


1
Ao fazer isso, consigo ver o nome do meu dispositivo (sem nulo) apenas por um segundo. Ele está novamente mostrando null
— Shruti

1
Esta é a resposta mais correta, porque o dispositivo Google Pixel é nulo mesmo após a alteração do tipo de conexão.
— kostyabakay

Impressionante! Obrigado.
— Kirill Starostin

22

Basta executar este comando depois de conectar seu dispositivo ao sistema Ubuntu:

adb devices

Isso funciona para mim.

Nota: Certifique-se de ter selecionado a opção de transferência de arquivos em seu telefone.


stackoverflow.com/a/34598874/9022007 tente fazer isso também se os dispositivos adb não funcionarem para você
— Rashil Shah

está funcionando para mim. 1) dispositivos adb 2) Configurações -> Dispositivos conectados -> USB -> Alterar para 'Transferir arquivos'
— amitabha2715

17

No Ubuntu, com meu Pixel XL no 8.0, tive que fazer isso conectado ao computador:

Configurações -> Dispositivos conectados -> USB -> Alterar para 'Transferir arquivos'


configurações de quê?
— arekolek

Configurações do telefone
— RESTfulGeoffrey

Descobri que meu Pixel estava mudando para nulo após um tempo de conexão. Continuei reiniciando o aparelho, mas acontecia a mesma coisa. Isso às vezes corrige, mas apenas temporariamente, estranho ...
— hmac

está funcionando para mim. 1) dispositivos adb 2) Configurações -> Dispositivos conectados -> USB -> Alterar para 'Transferir arquivos'
— amitabha2715

Isso ainda funciona em 2019 no pixel 3. (Eu vim aqui para procurar uma solução permanente, mas ainda não encontrei, esta ação ainda funciona)
— Wesely

12

Tenho o mesmo problema com meu Nexus 5 / 5X / Pixel 2 XL no Ubuntu 18.04.

Uma solução permanente é adicionar uma regra udev para que você sempre possa acessar o dispositivo.

  • Encontre seu dispositivo com o comando lsusb. Isso gera, por exemplo, para meu Pixel 2 XL:

    Bus 001 Device 003: ID 18d1:4ee7 Google Inc.
    
    # This means: BUS=001, DEVICE=003, VENDOR=18d1, PRODUCT=4ee7
    
  • Agora verifique as permissões. Substitua 001 e 003 pelos seus parâmetros:

    ls -l /dev/bus/usb/001/008
    
    # Output: crw-rw-r-T 1 root root 189, 8 Nov 10 18:34 /dev/bus/usb/001/003
    # Unless you are root, you are missing the permissions to access the device
    
  • Para corrigir isso, crie um arquivo de regras udev sudo nano /etc/udev/rules.d/51-android.rulescom o seguinte conteúdo:

    SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4ee7", MODE="0660", 
    GROUP="plugdev", SYMLINK+="android%n"
    
    # You need to replace "18d1" and "4ee7" with your output of `lsusb` above
    
  • Desconecte e conecte seu dispositivo novamente. Agora, ele deve ser sempre reconhecido. Caso contrário, reinicie o servidor adb uma última vez com adb kill-server.

Fonte: http://www.janosgyerik.com/adding-udev-rules-for-usb-debugging-android-devices/


6

Tive o mesmo problema ao usar o Android Studio no Ubuntu. Aparentemente, para mim, a correção foi definir o modo de conexão USB para o dispositivo como MTP .


5

Primeiro verifique a versão do adb: se ele der saída como

Android Debug Bridge version 1.0.32

Em seguida, reinicie o daemon.

sudo adb kill-server
sudo adb start-server

caso contrário, instale o adb primeiro e reinicie o daemon funcionou para mim, no ubuntu 16.04.3


5

Recentemente, eu estava enfrentando o mesmo problema com os telefones Vivo e MI. Eu tentei tudo descrito neste tópico. Tentei conectar como MTP, PTP; Mas nada funcionou.

Depois de muitas tentativas, encontrei uma solução para o meu caso e pode ser que ajude outras pessoas também.

  1. Abra a janela do terminal no Android Studio
  2. Mate o servidor ADB usando o seguinte comando: adb kill-server
  3. Reinicie o servidor ADB usando o seguinte comando: adb start-server

Isso resolveu meu problema.


obrigado salvou meu dia .. ele sempre mostra 24213213 [null], mas depois de sua manipulação agora mostra Samsung Galaxy ...
— waza123

4

Desativar e reativar a depuração enquanto o dispositivo estava conectado funcionou para mim.


4

Eu tive o mesmo problema.

Resolvi abrindo as configurações do meu dispositivo Android e selecionando "Desligar" e depois "Ligar" para Depuração USB.


4

Eu tive o mesmo problema. Eu resolvi isso fazendo

  1. Android -> SDk -> ferramenta de plataforma

2. Abra o terminal para (usuário ubuntu) ou abra o cmd (usuário janela)

3. digite o comando "sudo adb kill-server"

4. Vá para o Android Studio e reconecte o dispositivo.


1

No ubuntu, a instalação do adb funcionou para mim, acho que houve algum problema com o android studio one padrão.

No terminal use o comando

sudo apt install adb 

0

Às vezes, no Linux (Centos 6 no meu caso), a razão pode ser que você não iniciou o Android Studio como usuário root. reinicie o android studio como usuário root e experimente!


2
Esta é uma ideia terrível. Nunca inicie o aplicativo userland como root!
— agilob de

0

Para a máquina ubuntu, selecione a opção de transferência e o dispositivo será detectado no Android Studio, bem como para depuração. Geralmente o dispositivo está em estado de carregamento para o Windows, mas para o Ubuntu é assim que funciona.

Além disso, muitas vezes o dispositivo não é detectado, faça a mesma coisa novamente.


0

Modo MTP necessário, mas não surge no lado USB. Na configuração de armazenamento no item da barra de menu, você pode definir o tipo de conexão do PC como ... MTP.


0

verificar processos em execução, eu tinha vários processos adb em execução e acho que isso estava bagunçando as coisas para mim. Mate todos eles e reinicie o Studio. HTC Sync Manager, GenyMotion etc. e, possivelmente, quando você tem várias janelas do Android Studio abertas, pode resultar em vários processos adb conflitantes.


0

Principalmente no Ubuntu ou em qualquer outra plataforma. Por favor, verifique a sua versão do adb. Eu não posso enfatizar isso o suficiente. certifique-se de que está atualizado ou com a versão mais recente, especialmente se as respostas acima não funcionarem e este link também não funcionar.

Depois de atualizar minha pasta de ferramentas de plataforma localizada em

PATH_TO/Android/Sdk/platform-tools

que também contém o adbfuncionou. Eu corri
adb devices

primeiro mostraria não autorizado, então

você desconecta e reconecta o dispositivo Android. Então, seu telefone pedirá permissão antes que o sistema leia seu dispositivo.


0

No meu caso, simplesmente olhar para o meu telefone e marcar a caixa de seleção pop-up para permitir a depuração de USB funcionou para mim.


-1

Vá para o terminal no Android Studio e execute "adb devices". Ele irá mostrar os dispositivos conectados. Em seguida, execute o aplicativo e o dispositivo deve aparecer.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.