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
Jorch914
fonte
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

Jorch914
fonte
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.

JoeKir
fonte
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.

Rashil Shah
fonte
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'

RESTfulGeoffrey
fonte
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/

hb0
fonte
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 .

jayeshsolanki93
fonte
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

user6299305
fonte
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.

Dhaval
fonte
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.

Drazen Bjelovuk
fonte
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.

CenyGG
fonte
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.

DEVENDRA SINGH
fonte
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 
Manohar Reddy
fonte
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!

Abdul Mohsin
fonte
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.

Prayag
fonte
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.

Mark Deacon
fonte
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.

hmac
fonte
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.

iluminar
fonte
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.

Leo
fonte
-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.

VIVEK CHOUDHARY
fonte