Для чого нам потрібен Kies (драйвер ADB) у Windows, але не в Linux?


11

Для чого нам потрібен драйвер ADB в Windows, але не в Linux?

Я працюю над Android протягом кількох останніх місяців у Windows. Щоб запустити свій проект на своєму пристрої Samsung, мені спочатку довелося встановити Kies. Аналогічно для мого пристрою LG є драйвер ADB для LG, а ще один для HTC.

Але коли я нещодавно перейшов на Ubuntu Linux, мені не потрібні були інші драйвери, такі як Kies та ADB. Я зміг налагоджувати налагодження безпосередньо без стороннього водія. Чому так?

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


до моєї відповіді додано оновлення №2
geffchang

Відповіді:


5

Chor WaiChun згадав про це у заблокованому питанні, яке ви опублікували в StackOverflow :

Я десь бачив, що така поведінка полягає в тому, що і android, і linux працюють на одному ядрі, і однакова ситуація стосується розвитку android на mac. Обидві ОС працюють у дуже схожих ядрах ОС з Android, тому їм не потрібні драйвери. Це лише те, що я запам'ятав, бачачи з інших тем, не можу на 100% бути впевненим

ОНОВЛЕННЯ №1: Сайт Android також згадує про це:

Якщо ви розвиваєтеся в Windows і хочете підключити Android-пристрій для тестування ваших програм, тоді вам потрібно встановити відповідний драйвер USB. ...

Якщо ви розробляєте Mac OS X або Linux, вам, ймовірно, не потрібно встановлювати драйвер USB. Щоб розпочати розробку свого пристрою, прочитайте розділ Використання апаратних пристроїв.

ОНОВЛЕННЯ №2: Є коментар щодо StackOverflow щодо libusb. Я думаю, що це може бути причиною того, що Linux не потребує додаткових драйверів.

Насправді adb під Linux отримує доступ до USB-пристроїв, що використовують libusb без конкретного драйвера ядра. Також adb має перелік ідентифікаторів постачальника, який дозволено використовувати, але це не пояснює проблему, про яку йдеться, оскільки ідентифікатори постачальників для обох телефонів однакові. І в разі проблем з дозволом через відсутність правил udev пристрої adb чітко відображають у списку "немає дозволів", тому це також не є причиною цієї проблеми.


моє питання чому? Чи є у вас посилання, і все, щоб я міг отримати загальне уявлення, хоча +1 для відповіді!
hemantsb

0

Я не впевнений, чому Linux зазвичай не потребує конкретного драйвера ADB.

Однак є "універсальний" драйвер ADB для Windows USB, який працює з більшістю пристроїв Android. Він був розроблений Koushik Dutta (Koush), відомим розробником Android, який працює над ClockworkMod. Це повинно працювати досить добре для вас. Завантажте тут: http://koush.com/post/universal-adb-driver


Я думаю, ви неправильно зрозуміли моє запитання, моє запитання, чому така поведінка, і я знаю про універсальний драйвер АБР.
hemantsb

0

Як вже відповіли інші, у Linux є звичайний USB-драйвер, який використовує adb. Здається, що в Windows немає загального драйвера USB, тому adb використовує "наданий" драйвер - різний для кожного пристрою / виробника.


1
У Windows не існує попередньо встановленого універсального драйвера . Однак, як зазначив Ніл, є одна . З іншого боку: У Linux немає Kies, тому вам не потрібен драйвер Kies #D
Izzy
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.