Android Studio, fiziksel Cihazı Null olarak mı tanıyor?


89

Bir Android Application for Android(SDK min sürüm 14) geliştiriyorum ve bunu normal olarak gibi tabletlerle test ediyorum Samsung Galaxy 2 and Nexus 7. Ancak uygulamayı çalıştırmayı denediğimde (çalıştır'a tıklayarak AndroidStudio), AS aşağıdaki resimde gösterilen tablet bilgilerini tanımıyor.

Cihaz Boş

İlginç olan şey, yukarıdaki resimde gösterildiği gibi, AS'nin aynı zamanda API 1Android sürümü olduğu zaman cihaz sdk'yi de algılamasıdır 4.2.2 . Tablet, USB debugginggeliştirici seçeneklerinde " " kabul edecek şekilde ayarlanmıştır , tableti yeniden başlatmayı ve AS'yi yeniden başlatmayı denedim. ama yine de aynı sorunu yaşıyorum (her şey yolunda nexus 7 and Samsung Galaxy 2).

Üzerinde çalıştığım tablet / cihaz bir "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
Bu sorunu daha önce yaşadım. Sadece tablet bilgisayarınız tarafından tanınmıyor ve bu nedenle kullanıcınıza onu kullanma izni vermeyin. Adb servisini root olarak (bilgisayarınızda) başlatabilir veya bu cihaz tipini udev roullarınızda bir yere ekleyebilirsiniz. O zaman kamera hilesi olmadan çalışmalıdır. Kamera modunu değiştirirseniz, cihazınız kendisini basitçe sisteminiz tarafından bilinen başka bir cihaz / ürün kimliği ile tanıtır.
user3387542

@ user3387542 ama bu aygıt türünü udevime nasıl ekleyebilirim?
AbdelHady

vay. çok teşekkür ederim. Onunla saatler harcadım. ve benim için son çözüm android stüdyosunu / root kullanıcısı olarak başlatmak. centos OS kullanıyorum
Abdul Mohsin

Yanıtlar:


162

Tamam Sonunda sorunu buldum, görünüşe göre bu cihazda kamera olarak bağlanmayı ayarlamanız gerekiyor (usb hata ayıklama zaten etkinleştirildikten sonra bile)

görüntü açıklamasını buraya girin

Ayrıca bu bağlantı kurulum sürecini açıklar


3
Bu sorunla ilgili günlerdir arıyordum ve çözüm onu ​​"Kamera" olarak bağlamak, bu çok garip ama işe yarıyor! paylaştığınız için teşekkürler
AbdelHady

benim durumumda MTP seçildi ve çalışması için PTP'ye ve ardından MTP'ye geri dönmem gerekiyordu.
rjlopes

benimkinde de çalıştı! nedenini bilmiyorum!
bmnepali

Benim durumumda bu komutu terminalde de çalıştırmak zorunda kaldımadb devices
Zohab Ali

57

Bu hatayı, adb doğru izinlerle bağlanmadığında birkaç kez gördüm.

Terminalde deneyin

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

dönerse

<deviceIdentifier> no permissions

sonra adb'yi doğru izinlerle yeniden başlatmanız gerekir

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

eğer işe yaradıysa alacaksın

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

Bundan sonra Android Studio'da artık Sdk sürüm çözümleme sorunu yok.


1
Bunu yaparak cihaz adımı (boş olmadan) sadece bir saniyeliğine görüyorum. Yine boş gösteriyor
Shruti

1
Bu en doğru cevaptır çünkü Google Pixel cihazı bağlantı türü değişikliğinden sonra bile boştur.
kostyabakay

Harika! Teşekkür ederim.
Kirill Starostin

22

Cihazınızı Ubuntu sisteminize bağladıktan sonra bu komutu çalıştırın:

adb devices

Bu benim için çalışıyor.

Not: Telefonunuzda dosya aktarım seçeneğini seçtiğinizden emin olun.


stackoverflow.com/a/34598874/9022007 adb cihazları sizin için çalışmıyorsa bunu da deneyin
Rashil Shah

benim için çalışıyor. 1) adb cihazları 2) Ayarlar -> Bağlı Cihazlar -> USB -> 'Dosya Aktarımı'na
Geç

17

Ubuntu'da, Pixel XL'im 8.0'deyken, bunu bilgisayara takılıyken yapmak zorunda kaldım:

Ayarlar -> Bağlı Cihazlar -> USB -> 'Dosya Aktarılıyor' Olarak Değiştirin


neyin ayarları?
arekolek

Telefon ayarları
RESTfulGeoffrey

Pixel'imin bir süre bağlandıktan sonra boşa geçtiğini fark ettim. Cihazı yeniden başlatmaya devam ettim ama aynı şey olacaktı. Bu bazen
sorunu

benim için çalışıyor. 1) adb cihazları 2) Ayarlar -> Bağlı Cihazlar -> USB -> 'Dosya
Aktarma'ya Geç

Bu hala 2019'da 3. pikselde çalışıyor. (Buraya kalıcı bir çözüm aramaya geldim ama yine de bulunamadı, bu eylem hala çalışıyor)
Wesely

12

Ubuntu 18.04'teki Nexus 5 / 5X / Pixel 2 XL ile aynı sorunu yaşıyorum.

Bir kalıcı çözüm her zaman cihazı erişebilmeleri için udev kuralı eklemektir.

  • Cihazınızı komutla bulun lsusb. Bu, örneğin Pixel 2 XL'im için şu çıktıyı verir:

    Bus 001 Device 003: ID 18d1:4ee7 Google Inc.
    
    # This means: BUS=001, DEVICE=003, VENDOR=18d1, PRODUCT=4ee7
    
  • Şimdi izinleri kontrol edin. 001 ve 003'ü parametrelerinizle değiştirin:

    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
    
  • Bunu düzeltmek sudo nano /etc/udev/rules.d/51-android.rulesiçin aşağıdaki içeriğe sahip bir udev kural dosyası oluşturun :

    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
    
  • Cihazınızı çıkarıp tekrar takın. Artık her zaman tanınması gerekir. Değilse, adb sunucusunu son kez ile yeniden başlatın adb kill-server.

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



6

İlk olarak adb versiyonunu kontrol edin: Eğer çıktı verirse

Android Debug Bridge version 1.0.32

Ardından daemon'u yeniden başlatın.

sudo adb kill-server
sudo adb start-server

Aksi takdirde önce adb'yi kurun ve ubuntu 16.04.3'te benim için çalıştı arka plan programını yeniden başlatın


5

Son zamanlarda Vivo ve MI telefonları için aynı sorunla karşı karşıyaydım. Bu başlıkta anlatılan her şeyi denedim. MTP, PTP olarak bağlanmayı denedim; Ama hiçbir şey işe yaramadı.

Birçok denemeden sonra durumum için bir çözüm buldum ve başkalarına da yardımcı olabilir.

  1. Android Studio'da terminal penceresini açın
  2. Aşağıdaki komutu kullanarak ADB sunucusunu öldürün: adb kill-server
  3. Aşağıdaki komutu kullanarak ADB sunucusunu yeniden başlatın: adb start-server

Sorunumu çözdü.


teşekkürler günümü kurtardım .. her zaman 24213213 [boş] gösteriyor ama sizin manipülasyonunuzdan sonra şimdi Samsung Galaxy gösteriyor ...
waza123

4

Cihaz bağlıyken hata ayıklamayı devre dışı bırakmak ve yeniden etkinleştirmek benim için hile yaptı.


4

Ben de aynı sorunu yaşadım.

Sorunu Android cihaz Ayarlarımı açarak, ardından "Kapat" ı ve ardından USB Hata Ayıklama için "Aç" ı seçerek çözdüm.


4

Ben de aynı sorunu yaşadım. Bunu yaparak çözdüm

  1. Android -> SDk -> platform aracı

2. (ubuntu kullanıcısı) için terminali açın veya cmd'yi açın (pencere kullanıcısı)

3. "sudo adb kill-server" komutunu yazın

4. Android stüdyosuna gidin, ardından cihazı yeniden bağlayın.


1

Ubuntu'da adb kurulumu benim için çalıştı, varsayılan android studio one ile ilgili bir sorun olduğunu düşünüyorum.

Terminal kullanım komutunda

sudo apt install adb 

0

Bazen Linux'ta (benim durumumda Centos 6) bunun nedeni, Android Studio'yu kök kullanıcı olarak başlatmamış olmanız olabilir. lütfen android stüdyosunu kök kullanıcı olarak yeniden başlatın ve deneyin!


2
Bu berbat bir fikir. Userland uygulamasını asla root olarak başlatmayın!
agilob

0

Ubuntu makinesi için aktarım seçeneğini seçin ve cihaz android stüdyosunda ve hata ayıklama için algılanacaktır. Genelde cihaz Windows için şarj durumundadır, ancak ubuntu için bu şekilde çalışır.

Ayrıca çoğu zaman cihaz algılanmazsa, aynı şeyi tekrar yapın.


0

MTP modu gerekli, ancak USB tarafında görünmüyor. Menü çubuğu öğesindeki depolama ayarında, PC bağlantı türünü ... MTP olarak ayarlayacaksınız.


0

İşlemleri kontrol et, çalışan birkaç adb işlemim vardı ve bunun benim için işleri berbat ettiğini düşünüyorum. Hepsini öldürün ve Studio'yu yeniden başlatın. HTC Sync Manager, GenyMotion vb. Ve muhtemelen birden çok Android Studio pencereniz açıksa, birden çok çakışan adb işlemine neden olabilir.


0

Özellikle Ubuntu'da veya başka bir platformda. Lütfen ve Lütfen adb sürümünüzü kontrol edin. Bunu yeterince vurgulayamıyorum. özellikle yukarıdaki cevaplar işe yaramazsa ve bu bağlantı da çalışmazsa güncellenmiş veya en son sürüm olduğundan emin olun .

Adresinde bulunan platform araçları klasörümü güncelledikten sonra

PATH_TO/Android/Sdk/platform-tools

aynı zamanda adbçalıştığını da içerir . Koştum
adb devices

önce yetkisiz görünecek, sonra

android cihazı çıkarıp yeniden takarsınız. Ardından, sistem cihazınızı okumadan önce telefonunuz izin ister.


0

Benim durumumda, sadece telefonuma bakmak ve USB hata ayıklamasına izin vermek için açılır onay kutusunu işaretlemek işi benim için yaptı.


-1

Android stüdyosunda terminale gidin ve "adb cihazları" çalıştırın. Bağlı cihazları gösterecektir. Ardından uygulamayı çalıştırın ve cihaz görünmelidir.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.