Aktifkan USB debugging pada perangkat
Ini dilakukan di Pengaturan ›Pengembangan . Jika Anda tidak memiliki entri itu di menu pengaturan Anda, buka Pengaturan ›Tentang , gulir ke" Bangun nomor ", dan palu seperti monyet sampai perangkat Anda memberi selamat kepada Anda telah menjadi pengembang. Kembali ke halaman utama menu Pengaturan , dan tutup ke bawah Anda akan melihat pengaturan "Pengembangan" (atau "Pengembang") sekarang. Masukkan, dan aktifkan USB Debugging di sini.
Identifikasi perangkat
Pertama, kita perlu tahu bagaimana perangkat mengidentifikasi pada bus USB. Untuk itu, dengan perangkat Android TIDAK terhubung, ambil shell dan jalankan perintah lsusb
. Kemudian hubungkan perangkat dan jalankan perintah lagi. Temukan baris baru. Untuk Wileyfox Swift ini adalah "perangkat tanpa nama":
Bus 004 Device 003: ID 2970:2282
Menyiapkan aturan untuk ADB
Kami sekarang perlu nomor pada akhir baris di atas: 2970:2282
. Ini menentukan vendor (2970) dan perangkat itu sendiri (2282). Dengan memiliki perincian itu, kita perlu shell root pada mesin Linux kita untuk mengedit (atau membuat, jika belum ada) /etc/udev/rules.d/51-android.rules
file tersebut. Di sana, tambahkan garis untuk perangkat Anda. Baris contoh berikut menunjukkan bagaimana tampilannya untuk Wileyfox Swift: ¹
SUBSYSTEMS=="usb", ATTRS{idVendor}=="2970", ATTRS{idProduct}=="2282", MODE="0666" GROUP="androiddev", SYMLINK+="android%n"
Jika Anda memiliki perangkat yang berbeda, ganti vendor dan ID produk dengan apa yang Anda temukan di atas saat berjalan lsusb
. Penjelasan singkat dari baris:
SUBSYSTEMS=="usb"
: jelas aturan ini hanya untuk USB;)
ATTRS{idVendor}=="2970"
: ID vendor perangkat untuk aturan ini
ATTRS{idProduct}=="2282"
: ID perangkat
MODE="0666"
: izin yang akan didapat simpul perangkat. 0666
cukup longgar, memberi setiap pengguna di sistem Anda izin baca dan tulis - jadi jika Anda khawatir, Anda dapat mencoba menggantinya dengan 0660
(hanya memberikan pemilik dan grup baca-tulis, dan tolak semuanya kepada orang lain).
GROUP="androiddev"
: ke grup mana node perangkat seharusnya berada. Ini harus berupa grup yang menjadi tujuan pengguna untuk bekerja dengan perangkat tersebut.
SYMLINK+="android%n"
: hanya untuk memberikan nama yang bagus pada simpul, sehingga Anda dapat menemukannya dengan lebih mudah /dev
(dalam kasus saya, nanti muncul di sana sebagai /dev/android5
)
Aturan itu masuk /etc/udev/rules.d/51-android.rules
, kita harus memberitahu udev
untuk memanfaatkannya. Cara teraman (di sebelah reboot;) adalah me-restart udev
layanan. Tergantung pada distro Linux Anda, ini dapat dilakukan melalui service udev restart
atau /etc/init.d/udev restart
.
Selesai itu, tinggalkan shell root. Putuskan sambungan dan hubungkan kembali perangkat Android Anda, coba adb devices
lagi. Sebagian besar perangkat muncul sekarang, tetapi bukan Wileyfox Swift - yang jelas menginginkan pelukan tambahan. Jika Anda berada dalam situasi itu, buka (atau buat jika tidak ada) file ~/.android/adb_usb.ini
dan tambahkan satu baris ke sana, beri nama vendor yang Anda temukan di lsusb
atas; untuk Swift yang akan menjadi 0x2970
(yupp, di sini Anda perlu awalan dengan 0x
menunjukkan bahwa itu adalah angka heksadesimal). Kemudian restart server ADB: adb kill-server && adb start-server
. Putuskan sambungan dan hubungkan kembali perangkat. Sekarang adb devices
harus melihatnya.
Menghubungkan perangkat
Anda mungkin telah memperhatikan adb devices
mengatakan sesuatu kepada Anda 0123456789ABCDEF unauthorized
. Tidak apa-apa dan untuk keamanan (perangkat) Anda: komputer Anda harus disahkan terlebih dahulu untuk dapat mengakses perangkat. Jadi cukup keluarkan adb shell
sekarang - yang akan dihentikan dengan error: device unauthorized. Please check the confirmation dialog on your device.
saran Ikuti itu (tandai centang kotak untuk mengesahkan komputer Anda secara permanen), dan Anda selesai: Sekarang Anda dapat menggunakan adb untuk mengakses perangkat Anda.
Pembaruan:
¹ Perhatikan bahwa dalam versi Linux yang lebih baru, sintaks untuk aturan UDEV sedikit berubah, seperti yang ditunjukkan oleh jcomeau_ictx dalam komentarnya. Untuk nilai yang kami temukan di atas adalah:
SUBSYSTEM=="usb", ATTR{idVendor}=="2970", ATTR{idProduct}=="2282", MODE="0666", GROUP="plugdev", SYMLINK+="android%n"
Dua perbedaan: sekarang SUBSYSTEM
(tidak ada jamak), dan grup telah berubah dari androiddev
menjadi plugdev
(yang pertama tidak ada pada sistem terbaru, yang terakhir tidak dan biasanya ditugaskan setidaknya untuk pengguna pertama).
Selain itu, Anda mungkin perlu menambahkan vendorID ke ~/.android/adb_usb.ini
(satu ID per baris, dalam notasi hex):
# ANDROID 3RD PARTY USB VENDOR ID LIST
# 1 USB VENDOR ID PER LINE.
0x2970