Android adb izin yok


33

Bir Ubuntu (+ Tarçın) makinesinden adb kullanmaya çalışıyorum. Sorun şu ki adb cihazlarından şu mesajı alıyorum :

List of devices attached
TA8830OIVO  no permissions

TA8830OIVO'nun Motorola G cihazım olduğu yer.

/Etc/udev/rules.d/51-android.rules'da android kurallarını değiştirdim

SUBSYSTEM=="usb", ATTR{idVendor}=="22b8", ATTR{idProduct}=="2e76",
MODE="0666", GROUP="plugdev", SYMLINK+="android_adb", OWNER="axel"

Ayrıca udev hizmetini yeniden başlattım ve kişisel dizüstü bilgisayarıma adb takıldım, gerekli tüm avantajları olan tek kullanıcı benim (plugdev grubu vb.).

Yürütmesini olmadan adb çalıştırmak için bir yolu var mı sudo ?


1
Uudev yeniden başlatılıyor ve sudo udevadm triggerbenim için işe yaramadı. Bilgisayarı yeniden başlatmam
Rafael Xavier

Yanıtlar:


65

Telefonunuzdaki USB modunu Dosya Aktarımı olarak değiştirin. Benim için işe yaradı.


Bunun tersi doğrudur: USB hata ayıklama bazı eski aygıtlarda dosya aktarma modunda çalışmaz.
Miha_x64

1
Güncelleme: sadece benim telefonunda (android bir), Geliştirici Ayarlarında şarj modundayken usb hata ayıklamanın da etkinleştirilebileceğini fark ettim.
NuttLo

2
Dosya aktarma moduna geçmek benim için çalıştı. Android 7'de
Abrar

Kindle Fire 8 2019 - Geliştirici Seçeneklerinde USB yapılandırmasında olan "MTP modu".
Bill McGonigle

Ben değiştim ve cihazdan usb hata ayıklamasına izin vermem istendi: D
Maxwell sc

27
  1. sudo udevadm triggerDeğişiklikleri uygulamak için koşmayı unutmayın (veya yeniden başlatın, ancak bunun neresinde eğlence var).
  2. Kendi kurallarınızı yazmak yerine https://github.com/M0Rf30/android-udev-rules adresini kullanın.
  3. En son ADB sürümüne sahip olduğunuzdan emin olun (1.0.35 102d0d1e73de-android). Daha öncekiler benim için USB-C ile çalışmadı.

Teşekkürler ama bu biraz eski bir soru. 2 yıl önce Mac'e geçtim. Lsusb gibi şeyler yapmayı aptalca buluyorum ve otomatik olarak yapılması gerektiğinde kuralları değiştiriyorum ... Yıllarca süren ubuntu kullanımından sonra vazgeçtim. İyi bir Linux Masaüstü sistemi bulamıyorum.
shadox

1
Soru 6 aylık ve gelecek için hala geçerli. 1 yıl önce 3y meselesinden sonra OS X'i terk ettim ve benzer nedenlerle Linux'a geri döndüm;). Linux, sinir bozucu hale geldiği yerlere sahip ancak homebrew + zsh + iTerm2 kullanıyorsanız, OS X'te gereken miktarda tinkering var. Aradaki fark, çoğunlukla FOSS'un kapalı kaynaklı veya modası geçmiş sürümleri, ancak hoş bir GUI ve UX (çoğunlukla). Depodaki kuralları kullanmak, çoğunlukla tek seferlik bir kurulum adımı haline getirir. Android SDK'nın akılda kalıcı bir şekilde çalışmasını sağlamanın arcana'sını düşünerek küçük çocuk oyuncağı.
zamber

1
service udev restartBunu çalıştırmak ve benim için işe yaramadı. Bilgisayarı yeniden başlatmak zorunda kaldım ve sonra işe yaradı.
Rafael Xavier

Ubuntu 16.04'te, udev kurallarının ayarlanması, telefondaki usb modunun dosya aktarımıyla değiştirilmesi cazibeye benziyordu. Yeniden başlatmaya gerek yok.
Gautam

Ubuntu 16.04'te Pixel 2 ile 2. noktadaki gitbub'dan kuralları eklemek dosya aktarma moduna bile girmeden çalışır.
Mike Hanafey 24:18

3

ADB sunucusunu sudo ile yeniden başlatırsanız çalışır.

sudo adb kill-server
sudo adb start-server

0

Özel gradle işlevini tanımlayın:

task _adb_restart {
def adb = android.getAdbExe().toString()
group '__custom'
  doLast {
    exec {
      commandLine 'bash', '-c', '/bin/echo **root_password** | sudo -S ' + adb + ' kill-server'
    }
    exec {
      commandLine 'bash', '-c', '/bin/echo **root_password** | sudo -S ' + adb + ' devices'
    }
  }
}

0

En iyi çözüm ve benim için daha iyi olan şey adbUbuntu paketinden yüklemektir . Bu size udevtüm Android cihazlar için topluluğun bakımını yaptığı varsayılan kurallar setini verir.

örnek:

$ sudo apt-get install adb

0

Android tabanlı bir işletim sistemi olan Amazon Fire OS 8 için, "Ayarlar> Cihaz Seçenekleri> Geliştirici Seçenekleri" seçeneğine gidebilirsiniz. Etkinleştirmeniz gerekebilir .

"USB Hata Ayıklama" nın açık olduğundan emin olun (durumunda, öyledir).

Ardından "Ağ> USB Yapılandırması Seç" e gidin. "MTP (Medya Aktarım Protokolü)" seçeneğini seçin. Bu, bilgisayarın dosyaları ileri ve geri göndermesini sağlar.


0

apt ile yüklenen adb paketini kaldır

$sudo apt remove adb

https://developer.android.com/studio/releases/platform-tools adresinden en son indirmeyi indirin

platform araçlarına giden yolu ayarlayın (bu iki satırı ~ / .bashrc dosyasına yerleştirin)

export PATH= /<path-to-android-sdk-folder>/android-sdk/tools/bin<br>
export PATH= /<path-to-android-sdk-folder>/android-sdk/platform-tools

koşmak

$source ~/.bashrc

adb yolunu kontrol et

$which adb

sudo'da adb başlat (sudo'da çalışırken adb'ye mutlak bir yol vermem gerekiyordu)

$sudo /<path-to-android-sdk-folder>/android-sdk/platform-tools/adb kill-server
$sudo /<path-to-android-sdk-folder>/android-sdk/platform-tools/adb start-server
$adb shell

YAPILAN.
android telefonun hangi USB modundan (MIDI, dosya aktarma, şarj etme) bağımsız olarak çalışır. Tüm çalışıyor.

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.