Ubuntu не виявляє мого андроїд-пристрою


34

Я новачок в android. Я тільки що завантажив і встановив android sdk. Тепер, коли я запускаю програму від затемнення, мій пристрій не виявляється. Я переглянув Google, і це було вирішено як моє рішення, але це також не спрацювало.

Ось 51-android.rules

SUBSYSTEMS=="usb", ATTR{idProduct}=="0bb4",  ATTR{idProduct}=="0c03", MODE="0666", GROUP="plugindev", OWNER="<username>"

Після цього я перезавантажив свій ноутбук і запустив цю команду:

username@laptopname:~/Android/adt-bundle/sdk/platform-tools$ adb devices

Вихід, який я отримую:

* daemon not running. starting it now on port 5037 *
* daemon started successfully *
List of devices attached 
????????????    no permissions

EDIT

crazydeveloper@crazydeveloper:~$ lsusb
Bus 002 Device 004: ID 0bb4:0c03 HTC (High Tech Computer Corp.) 
Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 003: ID 04f2:b337 Chicony Electronics Co., Ltd 
Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
crazydeveloper@crazydeveloper:~$ ls -l /dev/bus/usb/004/
ls: cannot access /dev/bus/usb/004/: No such file or directory
crazydeveloper@crazydeveloper:~$ 

Редагувати: 2

Після поданої відповіді ось результат, який я отримав:

crazydeveloper@crazydeveloper:~$ ls -l /dev/bus/usb/002
total 0
crw-rw-r--  1 root root    189, 128 May  7 09:45 001
crw-rw-r--+ 1 root root    189, 129 May  7 09:45 002
crw-rw-rw-  1 root plugdev 189, 130 May  7 09:48 003

Я використовую Micromax Canvas 2.2 A114 - Android версії 4.2.2

Будь ласка, допоможи мені. Спасибі.


2
Увімкнено налагодження USB на андроїді?
Джон Ханна

Так. він увімкнено.
принц Сайян


1
Це повинно бути підсистемою, однини.
пакман

Відповіді:


42

Добре ось всі кроки, щоб змусити це працювати. У мене виникли проблеми з усіма відповідями, які я знайшов в Інтернеті, біти та шматки скрізь без певного замовлення та жодного робочого рішення (під керуванням Android Studio, Jmonkey 3D та Ubuntu 14.04)

Якщо adb пристрої показують андроїд пристрою як ????????? (немає дозволів) дотримуйтесь цих інструкцій:

  1. створити файл /etc/udev/rules.d/51-android.rules

    sudo gedit /etc/udev/rules.d/51-android.rules
    
  2. скопіюйте та вставте вміст нижче:

    SUBSYSTEM=="usb", ATTRS{idVendor}=="0bb4", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="0e79", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="0502", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="0b05", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="413c", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="0489", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="091e", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="18d1", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="0bb4", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="12d1", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="24e3", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="2116", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="0482", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="17ef", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="1004", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="22b8", MODE="0666", GROUP="plugdev"    
    SUBSYSTEM=="usb", ATTRS{idVendor}=="0409", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="2080", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="0955", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="2257", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="10a9", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="1d4d", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="0471", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="04da", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="05c6", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="1f53", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="04e8", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="04dd", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="0fce", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="0930", MODE="0666", GROUP="plugdev"  
    SUBSYSTEM=="usb", ATTRS{idVendor}=="19d2", MODE="0666", GROUP="plugdev" 
    
  3. Виконайте таку команду, щоб змінити дозволи файлів:

    sudo chmod a+r /etc/udev/rules.d/51-android.rules
    
  4. підключіть телефон через usb та запустіть таку команду:

    lsusb
    

    Знайдіть приклад пристроїв (Nexus 5):

    Шина 003 Пристрій 074: ID 18d1 : 4ee7 Google Inc.

    Для Nexus 5 , ідентифікатор постачальника 18d1 , мій знаходиться на шині " 003 ". Якщо під час підключення пристрою за допомогою lsusb ви не побачите змін , можливо, ваш кабель USB заряджений.

  5. Тепер перезавантажте правила за допомогою наступних команд:

    sudo udevadm control --reload-rules
    sudo service udev restart
    sudo udevadm trigger
    
  6. Перевірте, чи пристрій тепер дозволяє доступ до групи користувачів plugdev

    ls -l /dev/bus/usb/<bus number from step 4>
    

    Приклад:

    ls -l /dev/bus/usb/003
    crw-rw-rw- 1 root plugdev 189, 329 Jul  3 18:23 074
    
  7. Запустіть пристрої adb, щоб підтвердити правильність дозволів і насолоджуйтесь!

Примітка: якщо ви не створили групу plugdev і додали до неї своє ім’я користувача (якщо в дозволі відмовлено, передбачити "sudo" наступні команди):

  1. Додати групу plugdev:

    groupadd plugdev
    
  2. Додайте своє ім’я користувача до групи plugdev (useradd -G {group-name} ім'я користувача):

    useradd -G plugdev billy
    
  3. Перезапустіть udev (можливо, вам потрібно буде вийти з системи та увійти знову, щоб оновити групу користувачів):

    sudo service udev restart
    

@EvanCarrol: редагування найкраще робити як крок 0 перед початком роботи, а не посередині (вибачте за відхилення, але там вона робить відповідь менш чіткою, а не яснішою): /
Fabby

Ця відповідь чудово працює. Після оновлення до 15.10 я маю це робити після кожного перезавантаження. Працює приголомшливо.
Ми Борг

Чи можу я назвати це сексуальною відповіддю ... ти зробив мій день завдяки приятелю ...
Tushar Pandey

5

Спробуйте групу, plugdevа не plugindev. Потім перезапустіть udev:

sudo udevadm control --reload-rules
sudo service udev restart

Якщо це не працює, дізнайтеся, де саме ваш пристрій підключений до lsusb. Потім перевірте дозволи:

ls -l /dev/bus/usb/YOUR_USB_BUS_NO/

Те, що lsusbнам дало:

Bus 002 Device 004: ID 0bb4:0c03 HTC (High Tech Computer Corp.)

означає, що ваш мобільний телефон підключений до шини 002 як пристрій 004. Тому udev створив об’єкт пристрою /dev/bus/usb/002/004.

Покажіть нам дозволи пристрою за допомогою команди:

ls -l /dev/bus/usb/002/004

Як тимчасове вирішення, ви можете зробити пристрій світ читабельним / зручним для запису за допомогою цієї команди (переконайтеся, що ваш телефон підключений):

sudo chmod 666 /dev/bus/usb/002/004

Потім спробуйте adb devicesще раз.

Також я помітив, що наприкінці правила udev у вас є OWNER="<username>". Ви насправді замінили це OWNER="crazydeveloper", чи не так?

Ваші дозволи начебто добре. udev підхопив пристрій і встановив його дозволи на 666, а групу - на plugdev. Це чомусь не встановило власника у crazydeveloper, але це не так важливо.

Переконайтесь, що ви член групи plugdev. Використовуйте цю команду:

sudo useradd -G plugdev crazydeveloper

Потім вийдіть із системи, відключіть підключення мобільного телефону, увійдіть знову, підключіть його та повторіть adb devicesспробу. Нехай знає, що відбувається.


будь ласка, дивіться питання зараз ..
Принц Сайян

перевірте питання зараз.
Принц Сайян

Also I noticed that at the end of the udev rule you have OWNER="<username>". You did actually replace that with OWNER="crazydeveloper", didn't you ?Допомогли мені. Дякую :): D
Yash Sodha

Дотримуйтесь вашої поради, але це не спрацювало для мене. Що працювало, це перемикання параметрів USB, наданих пристроєм, спробуйте перейти на PTP з MTP. Цей працював на мене.
Джордж Д

4

Ви повинні змінити 2 речі:

  1. Змініть перший 'ATTR {idProduct}' на 'ATTR {idVendor}' у файлі 51-android.rules.

  2. Запустіть ці команди з терміналу:

    sudo ./adb kill-server
    sudo ./adb start-server
    sudo ./adb devices
    

3

Можливо, це банальна помилка, як я бачу на 51-android.rules, ви подвоїли параметр idProduct і немає idVendor, спробуйте просте перейменування.


1

На моєму пристрої Android була налагодження USB, на якій здавалося, що це проблема, тому я перейшов до налаштувань розробника і вимкнув його. Я підключив USB-кабель, а потім з'явилося вікно, яке дозволило мені включити USB-накопичувач. Це дозволило моєму Ubuntu 14.04 виявити пристрій Android. Я не знаю, чи всі пристрої мають цей параметр, але це вирішило мою проблему, тоді як я спробував усі інші методи. Дякую


0

У мене була така ж проблема з моїм пристроєм Android (HTC one (M7)) в ubuntu 14.04. Тому я перезавантажився у Windows 7.0. Знайшли ту саму проблему і там. При пошуку я знайшов наступне посилання. http://www.makeuseof.com/answers/why-is-my-windows-7-laptop-not-detecting-any-android-devices/

Я набрав * # 7284 #, як запропонував Геррі Ентоні в цьому посиланні. І він працював на Windows. Я перезавантажився на Ubuntu 14.04 і було виявлено мій пристрій Android.


Також перевірте наступне. Усуньте проблеми виявлення USB на Android
Praveen

0

Спробувавши кожне з можливих рішень, докладно описаних вище, та інших тем інших форумів, я виявив, що причина, по якій мій HOX вирішив більше не спілкуватися зі своїм ноутбуком (14.04), була більш простою, механічною. USB кабель до мікро USB-розетки телефону був несправним. Використовуючи вихідний / електронний провід, який завжди здавався більш жорстким і менш ймовірним, що триватиме, ніж загальний, придбаний в AsDa, нормальне обслуговування відновилося.

Потім було використано DMM, щоб показати, як саме стався такий стан справ: опір ланцюга живлення + 5 В у цьому відведенні збільшився до того моменту, коли воно читалося майже відкритим. R-значення o / e, HTC-ланцюг свинцевих відміток + 5 В був лише дещо більш резистивним, ніж мертвий шорт, і не особливо добре в роботі або макеті мікро-USB ні, я не міг зрозуміти, як це вплинуло передача даних або так, може припускати лише те, що шина подачі на платі вводу / виводу на будь-якому або обох пристроях (іх) використовує частину + 5 В одного або обох розеток для передачі даних.

Що я тут дізнався: спочатку перевірте простіші речі, перш ніж витягнути волосся, де нікуди не встановити встановлене програмне забезпечення, і все це було поставлено назад, як і раніше, перш ніж помилка проявилася!

HTC - 1, постачальник кабелів асоційованих молокозаводів - 0.


-1

Він повинен бути таким:

SUBSYSTEM=="usb", ATTR{idVendor}=="0bb4", ATTR{idProduct}=="0c03", MODE="0666"

Це не дає відповіді на запитання. Щоб критикувати або вимагати роз'яснення у автора, залиште коментар під їх публікацією - ви завжди можете коментувати свої власні публікації, і як тільки у вас буде достатня репутація, ви зможете коментувати будь-яку публікацію .
Фабі

@Fabby Це схоже на спробу відповісти на мене питання ..
Seth
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.