Компьютерные уроки для начинающих
  • Главная
  • Флешка
  • Получить временные права на андроид через adb. Android: ADB, Fastboot, Linux команды и лайфхаки. Основы работы с ADB

Получить временные права на андроид через adb. Android: ADB, Fastboot, Linux команды и лайфхаки. Основы работы с ADB

Многие из вас не раз сталкивались с ситуацией, когда для получения root прав на Android планшете или смартфоне, установки новой прошивки, восстановления системы и прочих вещей, нужно было подключать его к компьютеру и выполнять ряд команд adb или fastboot, через окно командной строки (терминала).

Большинство вводят эти команды, не понимая, что они означают, просто следуя найденной в сети инструкции. И если вы хотите получить более полное представление о том, что происходит при их выполнении, то сегодня мы познакомимся с десяткой основных команд, которые должен знать каждый продвинутый пользователь Android.

Но перед тем как чем начать ознакомление с этими командами, напомню, что прежде чем ваш планшет или смартфон смог их выполнять, вы должны позаботиться, чтобы на вашем компьютере был установлен Android SDK , а на самом планшете или смартфоне, в меню его настроек была включена опция «Отладка USB ».

Как установить Android SDK, содержащий в себе программы adb и fastboot, читайте в этом материале .

Также напомню, что в Android 4.2 и выше, пункт «Отладка USB» скрыт, и как получить к нему доступ, вы можете почитать .

Для тех, кто забыл, как запустить окно командной строки в Windows напомню, что проще всего это сделать, нажав на «Пуск», после чего в окне поиска нужно будет ввести cmd и нажать клавишу «Enter».

После того, как все подготовительные работы закончены, можно подключать устройство к компьютеру с помощью USB кабеля и приступать к изучению команд.

1. Команда adb devices

Это, наверное, самая главная из всех десяти команд, о которых будет идти речь. С помощью неё мы можем узнать, видит ли компьютер ваше Android устройство, и если видит, то может ли он общаться с ним через команды терминала.

Если все нормально, то после ввода команды adb devices в окне командной строки Windows или терминала Linux, вы должны увидеть строку с текстом List of devices attached, после которой будет строка, состоящяя из серийного номера вашего устройства и его состояния - offline или online:

Состояние offline означает, что устройство находится в спящем режиме. Состояние online сигнализирует о том, что планшет или смартфон готов выполнять ваши команды.

2. Команда adb push

С помощью команды adb push вы можете копировать файлы на свой планшет или смартфон. При этом вы должны указать путь к папке, в которую вы хотите поместить файл на устройстве и папке на компьютере, откуда будет копироваться файл. Второй путь указывать не обязательно, если файл расположен в той же папке, где находится программа adb.

Вот пример копирования видеофайла superfreak.mp4 с компьютера на устройство, в папку /sdcard/Movies с помощью команды adb push superfreak.mp4 /sdcard/Movies/

Для пользователей Windows хочу напомнить, что в Android при указании пути к файлам и папкам используется прямой слэш - /, а не обратный, как вы привыкли.

3. Команда adb pull

Если команда adb push используется для передачи файлов на Android устройство, то adb pull используется для копирования файлов с устройства на компьютер. Так же как и в предыдущем случае, вы должны указать путь, откуда вы хотите взять файл на устройстве и путь, куда вы хотите этот файл поместить на компьютере. Второй путь указывать не обязательно, если вы хотите, чтобы файл попал в папку, из которой вы запускали программу adb.

Вот пример копирования файла superfreak.mp4 из папки /sdcard/Movies/ вашего планшета или смартфона на рабочий стол Windows 8 пользователя Jerry, C:\Users\Jerry\Desktop

Если вы хотите, чтобы файл попал в папку, из которой вы запускали adb, просто введите команду adb pull /sdcard/Movies/superfreak.mp4

4. Команда adb reboot

Эта команда часто используется в процессе получения root прав или установке нового программного обеспечения, когда нужно принять те изменения, которые мы сделали на нашем устройстве. После того, как вы введете команду adb reboot, ваш планшет или телефон перезагрузится.

Также эта команда важна тем, что её можно размещать внутри скриптов, что позволяет перезагружать устройство после выполнения всех необходимых операций автоматически.

5. Команды adb reboot-bootloader и adb reboot recovery

С помощью adb можно не просто перезагружать Android устройство, но и перезагружать его в загрузчик (bootloader). Этот режим нужен для того, чтобы мы могли разблокировать загрузчик, что необходимо для получения root прав и дальнейшей установки альтернативных прошивок.

Некоторые устройства можно загрузить в bootloader с помощью определенной комбинации клавиш при их включении, но зачастую команда adb reboot-bootloader - это единственный способ получить доступ к загрузчику.

Точно также, программу adb можно использовать для получения доступа к меню восстановления планшета или смартфона или рекавери (recovery). Это можно сделать с помощью команды adb reboot recovery

6. Команда fastboot devices

Если вы перегрузили свой планшет в режим загрузчика (bootloader) то он перестанет принимать команды adb. В этом режиме с устройством мы можем общаться с помощью программы fastboot.

С помощью команды fastboot devices вы можете узнать, может ли ваше устройство принимать команды от этой программы в режиме загрузчика. Так как fastboot является очень мощным инструментом, некоторые производители Android устройств не предоставляют доступа для этой программы в режиме загрузчика.

Так же, как и в случае с adb, после ввода команды fastboot devices вы должны увидеть серийный номер вашего устройства.

Зачастую причиной неработоспособности fastboot является отсутствие необходимых Windows драйверов вашего устройства.

7. Команда fastboot oem unlock

Некоторые производители (например, HTC или Asus) выпускают специальные утилиты, позволяющие разблокировать загрузчик их планшетов и смартфонов, после чего на них можно будет устанавливать альтернативные рекавери, такие как ClockworkMod или TWRP и прошивки от независимых разработчиков (кастомные прошивки).

Однако во многих случаях, разблокировать загрузчик Android устройства можно с помощью программы fastboot. Сделать это очень просто – когда ваш планшет или телефон находится в режиме bootloader (пункт 5), достаточно в окне командной строки ввести следующую команду: fastboot oem unlock.

После этого вам нужно будет следовать инструкциям, которые будут отображены на экране вашего планшета или смартфона.

Внимание! После выполнения команды fastboot oem unlock, ваше устройство будет полностью очищено от установленных вами программ и ваши персональные данные будут также удалены.

8. Команда adb shell

Команда adb shell зачастую приводит в замешательство некоторых начинающих пользователей.

Есть два пути использования этой команды. Если вы просто введете в окне командной строки текст adb shell и нажмете клавишу «Enter», то вы «попадете» в режим терминала, или командную оболочку вашего Android устройства, где вы сможете выполнять любые команды Android shell.

Ниже вы можете увидеть результат выполнения команды ls в среде Android shell

Этот режим хорошо известен пользователям Linux и Mac компьютеров. Если вы знакомы с командами оболочки bash, то проблем с работой в этом режиме у вас не будет. В противном случае я не рекомендую пользоваться режимом adb shell, до тех пор, пока вы не будете понимать, назначение всех его команд, так как в этом режиме вы имеете полный доступ к файлам на вашем устройстве и можете случайно нанести непоправимые изменения в операционной системе.

Второй способ использования adb shell - это выполнение единичной команды Android shell с помощью такой конструкции: adb shell <команда>. Например вы можете изменить права доступа к файлу с помощью команды типа «adb shell chmod 666 /data/имя файла»

9. Команда adb install

С помощью программы adb вы можете не просто копировать файлы на устройство и обратно. Эта программа также позволяет устанавливать приложения на Android устройства в виде apk файлов. Для этого существует команда adb install. Она немного похожа на команду push: вы должны указать путь, где находится файл с приложением, которое вы хотите установить. Поэтому проще всего сначала скопировать apk файл в папку с программой adb, после чего установку программы вы можете произвести с помощью команды adb install ИмяФайлаПриложения.apk

Если вам нужно обновить приложение, то в этом случае нужно использовать ключ -r и команда будет выглядеть так: adb install -r ИмяФайлаПриложения.apk.

С помощью ключа -s вы можете устанавливать приложения на карту памяти (если ваша прошивка позволяет делать это). Ключ -l позволяет заблокировать приложение при установке (установив его в папку /data/app-private). Существуют и другие ключи для более продвинутых функций, но их описание – это тема отдельной статьи.

10. Команда adb uninstall

И наконец, вы можете удалять приложения с вашего планшета или телефона. Для этого нужно использовать команду adb uninstall ИмяФайлаПриложения.apk

У этой команды есть ключ -k, который позволяет при удалении приложения не удалять его данные и кэш, а оставить их на устройстве.

Бонус: Команда adb sideload

Эта команда очень пригодится владельцам планшетов и смартфонов Nexus – с помощью неё они смогут обновлять официальную прошивку на своих устройствах. Другими словами, если ваш смартфон или планшет не получил обновления по-воздуху, вы можете скачать новую прошивку с официального сайта, и обновить устройство «вручную».

После того, как вы скачаете файл с прошивкой на компьютер и подключите планшет или телефон к нему, вам нужно будет перезагрузить свое устройство в режим рекавери, выбрать пункт "Apply update from ADB" , а затем на компьютере в окне командной строки ввести следующую команду: adb sideload xxxxxxxx.zip, где xxxxxxxx.zip – это имя zip файла c прошивкой.

Более подробную инструкцию о том, как обновить прошивку Nexus устройств вручную вы найдете в этом материале .

Похожие материалы:

Я укоротил свою разблокированную Galaxy S3 (SGH-T999)

Теперь я пытаюсь запустить adb root из командной строки Windows, однако, я получаю ошибку adbd cannot run as root in production builds . Итак, самое первое, что я проверил, был ли мой телефон действительно укоренен?

Итак, я попробовал следующее:

Откройте командную строку

$adb devices // lists my device $adb shell //goes to shell $su // opens a "SuperSu" prompt on my phone and I "Grant" permission # // Before following the rooting instructions, I was getting "no su command found" in the previous step. So, I believe my phone is ROOTED. **Correct me if I"m wrong.**

Однако, когда я делаю adb root , я получаю ошибку adbd cannot run as root in production builds . Поэтому, подумал я, мне, возможно, придется сделать некоторые дополнительные вещи, кроме того, что я сделал выше. Я пробовал все решения в следующих SO-вопросах:

  • запрещено разрешение на удаление adb, но доступно для доступа к суперпользователю в shell-android

Ничто из этого не помогло мне. Все, что они делают, - это доступ к ROOT INSIDE от SHELL. Я хочу, чтобы adb root работал, чтобы я мог выполнять различные команды adb БЕЗ вставки в оболочку.

7 ответов

В некоторых дружественных к программированию ПЗУ вы можете просто включить Root Access в Settings > Developer option > Root access. После этого становится доступным adb root . К сожалению, это не работает для большинства биржевых дисков на рынке.

По дизайну команда adb root работает только в userdebug разработки (т.е. eng и userdebug которые по умолчанию имеют ro.debuggable=1). Поэтому, чтобы включить команду adb root на ваше иначе внедренное устройство, просто добавьте ro.debuggable=1 в один из следующих файлов:

/system/build.prop /system/default.prop /data/local.prop

Если вы хотите, чтобы adb shell начиналась с root по умолчанию, а затем добавьте ro.secure=0 .

В качестве альтернативы вы можете использовать измененный adbd код adbd (который не проверяет ro.debuggable)

#if defined(ALLOW_ADBD_ROOT) // The properties that affect "adb root" and "adb unroot" are ro.secure and // ro.debuggable. In this context the names don"t make the expected behavior // particularly obvious. // // ro.debuggable: // Allowed to become root, but not necessarily the default. Set to 1 on // eng and userdebug builds. // // ro.secure: // Drop privileges by default. Set to 1 on userdebug and user builds.

У меня есть встроенный Samsung Galaxy Trend Plus (GT-S7580).

Запуск "adb root" дает мне то же самое, что "adbd не может выполняться с ошибкой root in production".

Для устройств, имеющих параметры разработчика → Root access, выберите "Только ADB", чтобы обеспечить доступ к устройству с помощью adb root (как предложено NgaNguyenDuy).

Затем попробуйте запустить команду в соответствии с решением запустите script как root через ADB . В моем случае я просто хотел запустить команду netcfg rndis0 dhcp, и я сделал это следующим образом:

Adb shell "su -c netcfg rndis0 dhcp"

Пожалуйста, проверьте, выполняете ли вы какие-либо ошибки во время работы таким образом.

Если он все еще не работает, проверьте правильность установки устройства. Если вам все еще не повезло, попробуйте установить пользовательский диск, например Cyanogen Mod , чтобы работать с "adb root".

Вам нужно заменить двоичный файл adbd в файле boot.img/sbin/на тот, который способен su. Вам также придется внести некоторые изменения по умолчанию.prop тоже.

Samsung, похоже, делает это более сложным, чем другие продавцы. У меня есть некоторые двоичные файлы adbd, которые вы можете попробовать, но для этого потребуется знание о -c ompiling и re -c, оспаривающее boot.img с новым двоичным кодом. Кроме того, если у вас заблокированный загрузчик... это не произойдет.

Кроме того, Chainfire имеет приложение, которое предоставит разрешение root для adbd в магазине воспроизведения: https://play.google.com/store/apps/details?id=eu.chainfire.adbd&hl=en

Наконец, если вы пытаетесь написать сценарий Windows с разрешениями SU, вы можете сделать это, используя следующий командный стиль... Тем не менее, вам, по крайней мере, нужно предоставить (по телефону) разрешения SU, чтобы время его запуска...,

adb shell "su -c ls" <-list рабочий каталог с правами su. adb shell "su -c echo anytext>/data/test.file"

Это лишь некоторые примеры. Если вы конкретно заявляете, что вы пытаетесь выполнить, я могу дать более конкретные советы

Data-lazy-type="image" data-src="http://androidkak.ru/wp-content/uploads/2015/08/Android-Root..jpg 500w, http://androidkak.ru/wp-content/uploads/2015/08/Android-Root-300x127.jpg 300w" sizes="(max-width: 500px) 100vw, 500px">
Если вы открыли эту статью, то вы наверняка уже имеете хоть какое-то представление о правах суперпользователя. Но на тот редкий случай, если вы являетесь обычным пользователем Android и открыли статью из праздного интереса – небольшой ликбез.

Права суперпользователя, они же рут-права (от английского “root”, что значит “корень”) – это возможность записывать, изменять и удалять информацию, находящуюся в системном (или корневом) разделе файловой системы. Данное понятие схоже с правами администратора на Windows и применяется на операционных системах, основанных на UNIX (Linux, Android, Tizen и т.д.)

Права root можно получить практически на всех Android-устройствах и мы обязательно пройдемся по самым популярным способам их получения, но сначала давайте ответим на два очень важных вопроса: безопасно ли то, что мы с вами собираемся сейчас сделать, а также стоит ли оно того.

Какие последствия влечет за собой получение рут-прав

Data-lazy-type="image" data-src="http://androidkak.ru/wp-content/uploads/2015/08/vnimanie.jpg" alt="обратите внимание" width="145" height="121" srcset="" data-srcset="http://androidkak.ru/wp-content/uploads/2015/08/vnimanie..jpg 300w" sizes="(max-width: 145px) 100vw, 145px"> Прежде всего, ответьте на вопрос – читали ли вы гарантийное соглашение, которое прилагалось к вашему телефону? Если читали – то вы знаете, что получение рут-прав – это серая зона и останется ли ваша гарантия при вас по завершении процесса, зависит только от политики производителя.
Далее, запомните одну вещь – суперпользователь даёт вам полный доступ. ПОЛНЫЙ. То есть если вам вдруг придет в голову удалить важные системные файлы – вас никто не остановит. Так что внимательно следите, какие программы получают от вас данные права, а также консультируйтесь с другими, более опытными пользователями Android перед тем, как делать какую-нибудь глупость.

Какие преимущества можно получить при наличии root-прав

Data-lazy-type="image" data-src="http://androidkak.ru/wp-content/uploads/2015/08/android-vigody.jpg" alt="Выгоды получения прав" width="159" height="50" srcset="" data-srcset="http://androidkak.ru/wp-content/uploads/2015/08/android-vigody..jpg 300w" sizes="(max-width: 159px) 100vw, 159px"> Список того, что можно сделать при наличии root-прав просто огромен. Только взгляните на наиболее популярные причины получения прав суперпользователя!

ВАЖНО: В скобках указана программа, которая позволяет выполнить данное действие.

  1. Удаление предустановленных программ а-ля Facebook или Twitter из системного раздела (Titanium Backup);
  2. Перенос кеша приложений с внутренней карты памяти на внешнюю (FolderMount);
  3. Перенос раздела с приложениями на карту памяти (Xposed App2SD);
  4. Глобальная модификация интерфейса с возможностью тонкой настройки (практически все модули Xposed);
  5. Отключение рекламы во всех приложениях (Adaway);
  6. Взлом покупок в приложениях с PlayMarket (Freedom);
  7. Отключение проверки лицензии в невзламываемых приложениях, а также их взлом (Lucky Patcher).

Читайте также: Fastboot Mode на Андроиде: установка, настройка и выход

И это ещё не всё! Фактически, имея root-доступ к вашему телефону, вы можете сделать из него практически всё что угодно. И если ваш запал ещё не остыл – давайте перейдём к собственно процессу получения рут-прав.

Инструкция

data-lazy-type="image" data-src="http://androidkak.ru/wp-content/uploads/2015/08/Android-s-root-pravami.jpg" alt="Рутированный Андроид" width="165" height="91" srcset="" data-srcset="http://androidkak.ru/wp-content/uploads/2015/08/Android-s-root-pravami..jpg 300w" sizes="(max-width: 165px) 100vw, 165px">
К несчастью, просто так включить root-доступ на Android нельзя – производители постарались обезопасить свои творения от кривых рук пользователей и это, на самом деле, правильно – иначе число обращений в сервисные центры выросло бы в разы. Но это не значит, что получить рут-права нельзя совсем. Более того, для большинства телефонов эта процедура является крайне будничной и занимает всего несколько минут.

Существует множество способов получения root-прав и как и в наших других инструкциях, мы пойдём от простого к сложному.

1. С самого устройства

Data-lazy-type="image" data-src="http://androidkak.ru/wp-content/uploads/2015/08/google-play-logo-274x300.png" alt="google play market" width="92" height="100" srcset="" data-srcset="http://androidkak.ru/wp-content/uploads/2015/08/google-play-logo-274x300..png 405w" sizes="(max-width: 92px) 100vw, 92px"> Несмотря на то что многие производители максимально закрывают доступ к своим смартфонам, хакеры со всего мира время от времени находят лазейки, которые позволяют получить права всего одним нажатием на экран. А другие производители просто доверяют своим пользователям и даже публикуют алгоритмы обхода своей защиты. Именно на таком принципе и основаны различные автоматические получатели root-прав, наиболее известным из которых является KingRoot.

Всё, что требуется для получения root-прав на устройстве с помощью KingRoot – это нажать одну кнопку. Из недостатков KingRoot – не самый привычный старым пользователям Android менеджер прав. Вместо привычного SuperSU, KingRoot использует собственную программу, которая, впрочем, не особо отличается от SuperSU в вопросах функциональности.

Помимо KingRoot, популярностью пользуется программа Framaroot, а также многочисленные другие приложения для Андроид-устройств, например, VRoot,

2. С помощью ПК и специальных программ

Data-lazy-type="image" data-src="http://androidkak.ru/wp-content/uploads/2015/08/android-i-pk-300x258.jpg" alt="Подключение андроида к ПК" width="150" height="129" srcset="" data-srcset="http://androidkak.ru/wp-content/uploads/2015/08/android-i-pk-300x258..jpg 473w" sizes="(max-width: 150px) 100vw, 150px"> Если передать инструкции для разблокировки изнутри Android-системы нельзя, это ещё не значит, что этого нельзя сделать совсем. По крайней мере, согласно этому принципу оперируют такие программы, как SuperOneClick, Kingo и многие другие. В качестве основы своей работы они используют USB-соединение Андроид-смартфона и ПК, через которое и подаются команды.

Читайте также: Как пользоваться смартфоном или планшетом на Андроиде новичку

Для того чтобы получить возможность так делать, вам нужно включить в настройках вашего Android-смартфона опцию “Отладка по USB”. Находится она в скрытом разделе “Для разработчиков”, а чтобы открыть этот раздел (если он закрыт), зайдите в раздел “О планшете” и десять-пятнадцать раз нажмите на пункт “Версия сборки”.

После того как вы её включили просто подключите ваш Андроид-смартфон к ПК (в режиме Mass Storage, естественно) и запустите выбранную вами программу, после чего следуйте инструкциям по работе с ней. О том, какую именно программу выбрать и как именно ею пользоваться, вам придётся думать самостоятельно – число Android-устройств слишком велико, чтобы можно было с уверенностью сказать, какие именно из них работают с одной программой, а какие – с другой.

3. С помощью ПК и ADB-терминала

data-lazy-type="image" data-src="http://androidkak.ru/wp-content/uploads/2015/08/android-pc-adb-300x258.jpg" alt="Соединение телефона и компьютера по adb-протоколу" width="150" height="129" srcset="" data-srcset="http://androidkak.ru/wp-content/uploads/2015/08/android-pc-adb-300x258..jpg 473w" sizes="(max-width: 150px) 100vw, 150px"> Если производитель вашего смартфона очень любит свою паранойю и при этом достаточно успешен, чтобы позволить себе нанять много талантливых программистов для мало кому нужного дела (особенно этим грешит Sony) – получить рут-права с помощью KingRoot или Kingo не выйдет. Точно так же, как не выйдет и получить root на устройствах с нестандартной начинкой (скажем на линейке Asus Zenfone или китайских Андроид-планшетах построенных на Intel Atom). В этом случае придётся воспользоваться помощью компьютера и adb-интерфейса.

Для тех, кто не знает, что такое adb, отвечаем. ADB – это специальный протокол, который позволяет вашему Андроид-устройству получать инструкции с компьютера по USB-кабелю. Благодаря тому, что ADB является частью самой системы Android, такие команды в большинстве случаев имеют более высокий приоритет, чем защитные решения производителя телефона.

Для нормальной работы ADB с вашим телефоном вам понадобится как минимум:

  • Компьютер с операционной системой Windows 7 (более новые ОС могут работать нестабильно или вообще не работать с нужными драйверами);
  • Набор adb-драйверов для вашего устройства (обычно выдаётся производителем);
  • USB-кабель;
  • Собственно, смартфон с включённой в настройках опцией “Отладка по USB”;
  • Распакованный в папку “X://ADB”, где X – (желательно) несистемный диск, архив с ADB-терминалом.

ADB, или Android Debug Bridge – это консольное приложение для ПК, с помощью которого можно управлять устройством на базе Android прямо с компьютера. Выглядит это так: сначала на компьютер устанавливаются инструментарий ADB и драйвера для Android, потом мобильное устройство подключается к ПК через USB-кабель в режиме отладки, и, наконец, после запуска ADB в консоли (командной строке) выполняются специальные команды, инициирующие те или действия с гаджетом. Подробная информация о принципе работы самого средства отладки представлена на официальном сайте разработчика, поэтому мы останавливаться на этом не будем, а сразу перейдем к возможностям ADB и способам его установки на компьютер.

Что позволяет делать ADB?

Для начала укажем зачем вообще нужен ADB. С его помощью можно:

  • Перезагружать устройство в различных режимах;
  • Обмениваться файлами/папками с телефоном;
  • Устанавливать/удалять приложения;
  • Устанавливать кастомные прошивки (в том числе, TWRP Recovery);
  • Производить ;
  • Выполнять разного рода скрипты.

Инструмент ADB обычно устанавливается в связке с консольным приложением Fastboot.

Установка ADB и Fastboot из пакета Android SDK

Этот способ предусматривает использование официального средства разработки и тестирования приложений Android Studio. Переходим на страницу https://developer.android.com/studio/index.html и находим заголовок «Get just the command line tools». Ниже скачиваем архив SDK tools для Windows (перед загрузкой соглашаемся с условиями использования).

Распаковываем архив на диск С. В нашем случае файлы были извлечены в папку sdk-tools-windows-3859397 .

Заходим в директорию, а потом переходим в каталог tools/bin . Здесь нас интересует файл sdkmanager , который и поможет установить ADB и Fastboot на компьютер.

Теперь необходимо открыть папку с sdkmanager, для чего в консоли следует выполнить команду cd C:\sdk-tools-windows-3859397\tools\bin , где C:\sdk-tools-windows-3859397\tools\bin – путь к файлу sdkmanager.

Если вы распаковали Android SDK не на диск С, а в какое-то иное место, то полный адрес можно будет узнать с помощью верхней строки Проводника (кликаем по конечной папке правой кнопкой мыши и жмем «Копировать адрес»).

Итак, мы перешли в tools\bin и теперь нам нужно выполнить команду sdkmanager «platform-tools» , которая установит пакет Platform-tools, содержащий файлы ADB и Fastboot.

В ходе установки ознакомьтесь с лицензионным соглашением и нажмите Y для завершения операции.

Если все прошло как надо, в корневой папке Android SDK появится каталог platform-tools с необходимыми файлами adb.exe и fastboot.exe .

Minimal ADB and Fastboot

Второй способ еще более простой. На форуме разработчиков Xda Developers можно скачать пакет Minimal ADB and Fastboot со всеми необходимыми файлами. Для этого заходим на страницу https://forum.xda-developers.com/showthread.php?t=2317790 и, кликнув по ссылке, загружаем установочный exe-файл.

Запускаем его и следуем инструкциям.

Мы установили Minimal ADB and Fastboot в корень того же диска С.

В принципе, на этом все. Осталось проверить наличие файлов.

Проверка работы ADB и Fastboot

После установки приложений любым из приведенных способов необходимо удостовериться в корректности работы утилит. Для этого через командную строку заходим в папку с файлами adb и fastboot (команда cd C:\sdk-tools-windows-3859397\platform-tools или cd C:\Minimal ADB and Fastboot ), а затем выполняем команду adb help . Она должна вывести версию установленного Android Debug Bridge и список команд ADB. Если вы видите примерно то же, что изображено на приведенном ниже скриншоте, значит все работает правильно.

Теперь следует подключить к ПК мобильное устройство и проверить, увидит ли его приложение ADB. Подсоединяем телефон (или планшет) к компьютеру с помощью USB-кабеля, выставляем в настройках режим подключения MTP (обмен файлами) и заходим в раздел Настройки – Для разработчиков .

Если такого пункта в настройках нет, то переходим на страницу «О телефоне» и семь раз кликаем по строке с номером сборки.

Режим разработчика будет активирован, и раздел «Для разработчиков» станет доступным. Заходим в него и включаем опцию «Отладка по USB».

После всех этих манипуляций с гаджетом в командной строке Windows вводим команду adb devices . Она выведет информацию о подключенном устройстве примерно в таком формате, как на скриншоте.

Таким образом, мы протестировали ADB и Fastboot и убедились, что Android Debug Bridge нормально функционирует, а, значит, теперь можно управлять телефоном через компьютер.

Если связь с устройством наладить не получается, то необходимо проверить наличие и корректность установки драйверов Андроид. Для этого при включенном режиме отладки заходим в «Диспетчер устройств» и смотрим, нет ли восклицательных знаков в ветке «Устройства USB» пункт «ADB Interface» (может называться немного по-другому).

При обнаружении неполадок пробуем переустановить драйвера. Скачать их можно на сайте производителя телефона или по адресу https://adb.clockworkmod.com/ .

Надеемся, что статья была для вас полезна.

Существует множество инструментов для работы с подключенным с помощью USB-кабеля или Wi-Fi смартфоном. Особо развитые инструменты позволяют перемещать файлы, устанавливать и удалять софт, просматривать контакты, делать скриншоты экрана и даже отправлять СМС, однако ни один графический инструмент не сравнится с мощью, которую может дать консоль Android. В этой статье мы поговорим об ADB (Android Debug Bridge) - стандартном инструменте для отладки и работы с консолью Android с компа.

Описанные в статье команды можно выполнять непосредственно на устройстве, скачав из маркета эмулятор терминала , но удобнее это делать, конечно же, с компа через adb.

Основы работы с ADB

Для начала работы с ADB его следует активировать на устройстве и установить утилиту adb и драйверы на комп. Первая задача выполняется с помощью включения «Отладки по USB» в пункте настроек «Для разработчиков» (если этот пункт скрыт, нажми семь раз на номер сборки в меню «О телефоне»).

Для установки ADB на комп качаем Adb Kit и распаковываем в любую папку (рекомендую использовать названия папок без русских символов). Также скачиваем и устанавливаем драйверы ADB .

Работать с adb нужно из командной строки. Нажимаем Win + R и вводим cmd, далее переходим в папку, в которой лежит adb. Для моей папки команда будет следующей:

Cd \android

Чтобы не проделывать все эти манипуляции каждый раз, можно добавить нужную папку в переменную Path. Для этого необходимо зайти в «Панель управления -> Система -> Дополнительные параметры системы -> Переменные среды», найти переменную Path и добавить в конец строки, через точку с запятой, путь до папки с adb. Теперь после запуска консоли можно сразу вводить необходимые команды.

Проверим наше подключение к телефону с помощью следующей команды (она должна вывести список подключенных устройств):

Adb devices

С ADB можно работать через Wi-Fi. Для этого нужны права root и приложение WiFi ADB . Запускаем приложение, жмем переключатель и подсоединяемся к смартфону с помощью команды connect и показанного приложением IP-адреса:

INFO

Скопировать вывод консоли после выделения мышкой, а также вставить скопированную команду или имя файла в консоль можно правой кнопкой мыши. Включается в свойствах консоли.

Установка программ

ADB можно использовать для установки приложений без необходимости копировать их на смартфон. Достаточно выполнить такую команду:

Adb install d:/downloads/имя_файла.apk

В команду также можно добавить дополнительные ключи. Полезными будут - переустановить приложение с сохранением данных и -d - установить версию меньше текущей.

Программы можно и удалять, но для этого нужно знать название пакета (как узнать, расскажу чуть позже). На примере игры Angry Birds Seasons команда будет выглядеть так:

Adb uninstall com.rovio.angrybirdsseasons

Бэкап приложений

В Android есть встроенные функции бэкапа, которые также можно запустить с помощью командной строки. Для этого используется команда adb backup и набор опций:

Adb backup [опции] <приложения>

  • -f указывает имя создаваемого файла и его расположение на компе. При отсутствии ключа будет создан файл backup.ab в текущем каталоге;
  • -apk|-noapk указывает, включать ли в бэкап только данные приложения или сам.apk тоже (по умолчанию не включает);
  • -obb|-noobb указывает, включать ли в бэкап расширения.obb для приложений (по умолчанию не включает);
  • -shared|-noshared указывает, включать ли в бэкап содержимое приложения на SD-карте (по умолчанию не включает);
  • -all указывает на необходимость бэкапа всех установленных приложений;
  • -system|-nosystem указывает, включать ли в бэкап системные приложения (по умолчанию включает);
  • - перечень пакетов для бэкапа.

Если мы хотим создать бэкап всех несистемных прог, включая сами.apk, в определенное место, то команда будет выглядеть так:

Adb backup -f c:\android\backup.ab -apk -all -nosystem

После ввода необходимо подтвердить начало выполнения бэкапа на самом устройстве. Для восстановления полученного бэкапа нужно выполнить соответствующую команду:

Adb restore c:\android\backup.ab

Консоль в консоли

Наряду с упомянутой консолью, которая является DOS-консолью под Windows, в Android существует и своя. Она вызывается через adb shell и представляет собой по сути стандартную Linux-консоль, но с неполным набором команд, расширить который можно, установив из маркета BusyBox. Использовать эту консоль можно двумя способами. В интерактивном режиме она запускается командой

Adb shell

В консоли появляется знак $ (далее по тексту этот знак будет означать необходимость ввода предварительной команды adb shell), и после этого можно вводить серию команд, получая после каждой отклик. Второй способ - если необходимо ввести только одну команду, можно писать ее подряд за adb shell.

В шелле работают стандартные команды для копирования, перемещения и удаления файлов: cp , mv и rm . Можно менять каталоги (cd ) и смотреть их содержимое (ls ). Кроме стандартных Linux-команд, о которых можно узнать из любого справочника, в Android есть несколько своих специализированных инструментов, но, чтобы использовать некоторые из них, придется получить на смартфоне права root, а после запуска консоли выполнять команду su:

Adb shell su

Это нужно делать, если в ответ на какую-либо команду ты видишь строку, похожую на «access denied» или «are you root?». В случае успеха знак $ сменится на #.



Создание скриншота

Выполняется одной строчкой:

Adb shell screencap /sdcard/screen.png

После этого картинку нужно выдернуть из устройства командой adb pull :

Adb pull /sdcard/screen.png

В recovery скриншот можно сделать следующей командой:

Adb pull /dev/graphics/fb0

Затем необходимо преобразовать файл fb0 в нормальное изображение с помощью FFmpeg, который нужно скачать и положить в папку с adb. Расширение необходимо ставить своего устройства:

Ffmpeg -f rawvideo -pix_fmt rgb32 -s 1080x1920 -i fb0 fb0.png

Запись видео, происходящего на экране устройства

adb shell screenrecord --size 1280x720 --bit-rate 6000000 --time-limit 20 --verbose /sdcard/video.mp4

Данная команда начнет записывать видео с разрешением 1280 x 720 (если не указать, то будет использовано нативное разрешение экрана устройства), с битрейтом 6 Мбит/с, длиной 20 с (если не указать, то будет выставлено максимальное значение 180 с), с показом логов в консоли. Записанное видео будет находиться в /sdcard (файл video.mp4).

INFO

Все запущенные из консоли и в adb shell процессы, занимающие некоторое время для выполнения, можно прервать с помощью комбинации Ctrl + C. Выйти из шелла и вернуться к выполнению обычных команд adb - Ctrl + D.

Управление приложениями

Для управления приложениями используются две команды: pm (package manager) - менеджер пакетов и am (activity manager) - менеджер активностей. У данных команд есть немало ключей, которые можно посмотреть на портале разработчиков . Остановимся на некоторых.

Для начала получим список установленных на устройстве приложений в виде названий пакетов, которые пригодятся позже:

Продолжение доступно только подписчикам

Вариант 1. Оформи подписку на «Хакер», чтобы читать все материалы на сайте

Подписка позволит тебе в течение указанного срока читать ВСЕ платные материалы сайта. Мы принимаем оплату банковскими картами, электронными деньгами и переводами со счетов мобильных операторов.

Лучшие статьи по теме