Android SDK

Материал из Национальной библиотеки им. Н. Э. Баумана
Последнее изменение этой страницы: 15:26, 17 июня 2017.
Android-Developers-Thumb.png

Пакет средств разработки программного обеспечения для Android (SDK) содержит всеобъемлющий набор инструментов разработки.[Источник 1] Они включают в себя отладчик, библиотеки, эмулятор, основанный на QEMU, документацию, примеры кода и учебники. Поддерживаемые платформы разработки включают компьютеры под управлением Linux (любой современный настольный дистрибутив Linux), Mac ОС x версии 10.5.8 или более поздней версии и Windows 7 и выше. По состоянию на март 2015 года SDK не доступен для разработки под Android, исключения составляют специализированные Android приложения.

До конца 2014 года, официально поддерживаемой программой integrated development environment (IDE) был Eclipse с плагином Android Development Tools (ADT), хотя IntelliJ IDEA IDE (все версии) полностью поддерживает разработку Android "из коробки", как и NetBeans IDE поддерживает разработку Android через плагин. По состоянию на 2015 год, Android Studio, созданная компанией Google и работающая над IntelliJ, является официальной IDE; тем не менее, разработчики могут свободно использовать другие инструменты, но Google дал понять, что поддержка ADT была официально завершена с конца 2015 года, с целью сосредоточиться на Android Studio в качестве официальной IDE для Android. Кроме того, разработчики могут использовать любой текстовый редактор для редактирования Java и XML файлов, а затем использовать инструменты командной строки (Java Development Kit и Apache Ant не обязательны) для создания, построения и отладки приложений для Android, а также контролировать добавленные Android устройства (например, запуск, перезагрузку, установку пакетов программ удаленно).

Улучшение Android's SDK идут рука об руку с общим развитием платформы Android. SDK также поддерживает старые версии Android, если разработчики хотят сосредоточить свои приложения на старых устройствах. Инструменты разработки - это загружаемые компоненты, поэтому после скачивания последней версии и платформы, старые платформы и инструменты могут быть использованы для тестирования совместимости.[Источник 2]

Приложения Android упакованы в .формат apk и хранятся в папке /Data/App на ОС Android (папка доступна только для пользователя root по соображениям безопасности). APK -пакет содержит .DEX-файлы[Источник 3] (скомпилированный исполняемый код- называемый Dalvik), файлы ресурсов и т.д.

Android Debug Bridge

The Android Debug Bridge (ADB) представляет собой набор инструментов, включенных в пакет SDK для Android.[Источник 4] Он состоит из клиентской и серверной программ, которые взаимодействуют друг с другом. ADB, как правило, доступен через интерфейс командной строки, хотя существуют многочисленные графические пользовательские интерфейсы для управления ADB.

Например, приложения для Android могут быть сохранены с помощью команды "backup" в файл с названием "backup.ab"(по умолчанию).

В вопросе безопасности докладываемом в марте 2011 года, целью ADB была установка программ rootkit на подключенных телефонах с помощью "resource exhaustion attack".

Fastboot

Fastboot - это протокол диагностики, входящий в состав пакета SDK, который применяется в первую очередь для перепрошивки файловой системы через порт USB компьютера. Это необходимо, чтобы устройство было переведено в режим загрузчика, в котором выполняется только самая основная установка оборудования. После включения протокола на самом устройстве, он будет принимать определенный набор команд, посылаемых к нему через USB с помощью командной строки. Некоторые из наиболее часто используемых команд быстрой загрузки включают в себя:

  • flash – переписывает раздел с бинарных изображений(образов) прошивок, хранящихся на компьютере
  • erase – стирает определенный раздел
  • reboot – перезагружает устройство с запуском операционной системы, раздела восстановления или обратно загрузчика
  • devices – отображает список всех устройств (по серийному номеру) подключенных кк компьютеру
  • format – форматирование определенного раздела; файловая система раздела должна быть определена устройством

Источники

  1. Command Line Tools//developer.com: сайт URL: https://developer.android.com/studio/command-line/index.html (дата обращения: 09.06.2017).
  2. SDK Tools Release Notes//developer.com: сайт URL: https://developer.android.com/studio/releases/sdk-tools.html (дата обращения: 09.06.2017).
  3. Android SDK Glossary//developer.com: сайт URL: https://developer.android.com/guide/appendix/glossary.html (дата обращения: 09.06.2017).
  4. Android SDK Glossary//Википедия: сайт URL: https://en.wikipedia.org/wiki/Android_software_development#Android_SDK (дата обращения: 09.06.2017).