Какой android sdk выбрать

Обновлено: 19.09.2024

Разработка под Android начинается с Android SDK (Software Development Kit). Хотя существует множество различных языков программирования и множество IDE (интегрированных сред разработки), которые вы можете использовать для создания приложения, SDK остается неизменным.

Хотя существует множество различных языков программирования и множество IDE, которые вы можете использовать для создания приложения, SDK является постоянным

Итак, все, что вам действительно нужно знать, это то, что вам нужен Android SDK. Настройка с помощью SDK должна быть первым учебным курсом по разработке Android, который вы пройдете (обратите внимание, что вам также понадобится Java Development Kit). Но есть еще кое-что, и использование всех инструментов разработки в полной мере и точное знание того, как работает SDK, приведет к созданию лучших приложений.

Анатомия Android SDK

Android SDK можно разбить на несколько компонентов. Это включает:

  • Платформа-инструменты
  • Строить-инструменты
  • SDK-инструменты
  • Мост отладки Android (ADB)
  • Эмулятор Android

Возможно, наиболее важные части этого пакета находятся в SDKtools. Эти инструменты понадобятся вам независимо от того, на какую версию Android вы ориентируетесь. Это то, что на самом деле создаст APK – превратит вашу Java-программу в Android-приложение, которое можно запустить на телефоне. К ним относятся ряд инструментов сборки, инструментов отладки и графических инструментов. Примером является DDMS, который позволяет нам использовать Android Device Monitor для проверки состояния Android-устройства.

Руководство по Android SDK для начинающих - что вам нужно знать

Инструменты сборки когда-то относились к той же категории, что и инструменты платформы, но с тех пор были разделены, чтобы их можно было обновлять отдельно. Как следует из названия, они также необходимы для создания ваших приложений для Android. Это включает, например, инструмент zipalign, который оптимизирует приложение для использования минимального объема памяти при запуске до генерации окончательного APK, и apksigner, который подписывает APK (сюрприз!) Для последующей проверки.

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

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

Эмулятор Android – это то, что позволяет вам тестировать и контролировать приложения на ПК, без необходимости иметь доступное устройство. Чтобы использовать это, вы также получаете образ системы Android, предназначенный для работы на оборудовании ПК. Вы будете использовать диспетчер виртуальных устройств Android, чтобы выбрать, какую версию Android вы хотите эмулировать, а также спецификации устройства (размер экрана, производительность и т.д. ).

Руководство по Android SDK для начинающих - что вам нужно знать

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

Использование Android SDK

Короче говоря, многие инструменты, включенные в SDK, включают тестирование, отладку и упаковку приложений для Android. Они обеспечивают своего рода мост между Android Studio и физическим устройством или эмулятором, чтобы ваше приложение можно было надлежащим образом упаковать, а затем протестировать по мере разработки. По большей части вы можете оставить SDK в покое: Android Studio порекомендует необходимые обновления и вызовет необходимые компоненты, когда вы нажмете «Выполнить» или «Создать APK».

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

Использование диспетчера SDK

Хотя Android Studio обычно сообщает вам, когда вам нужно что-то обновить, вы также можете управлять обновлениями SDK вручную через диспетчер. Вы найдете это в Android Studio, если перейдете в Инструменты – Android – Диспетчер SDK. Вы увидите, что здесь есть три вкладки для платформ SDK, инструментов SDK и сайтов обновления SDK.

Руководство по Android SDK для начинающих - что вам нужно знать

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

Использование AVD Manager

Вы также найдете AVD Manager в разделе Tools – Android – AVD Manager. Это позволяет создавать собственные эмуляторы. Вы выберете размер устройства и некоторые другие характеристики, и вам будет предложено загрузить необходимый образ системы x86, если он еще не установлен.

Руководство по Android SDK для начинающих - что вам нужно знать

Использование монитора устройств Android

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

Использование ADB

Использование ADB немного отличается. Для этого вам нужно будет найти папку установки Android SDK и перейти в каталог инструментов платформы. В Windows удерживайте нажатой клавишу Shift и щелкните правой кнопкой мыши в любом месте папки, чтобы открыть командную строку. На Mac просто откройте Терминал из Launchpad (обычно находится в папке Other).

Руководство по Android SDK для начинающих - что вам нужно знать

Теперь вы можете использовать ряд команд. Например, если вы наберете «adb devices», вы получите список подключенных устройств Android вместе с их идентификаторами устройств. Введите «adb install [options] package-name», и вы сможете удаленно установить APK. Вы можете найти список команд ADB здесь.

Доступ к документации

Было время, когда Android SDK также поставлялся в комплекте с набором полезных примеров проектов. Сегодня это уже не так, но вы можете найти их, открыв Android Studio и перейдя в File – New – Import Sample.

Независимое использование SDK

Хотя Android SDK и Android Studio тесно связаны, вы не всегда захотите использовать их вместе. Вы можете использовать другую IDE (интегрированную среду разработки), например, если вы хотите упростить процесс создания 3D-игры (в этом случае вы можете использовать Unity или Unreal) или если вас интересует кроссплатформенность. мобильная разработка (в этом случае вы можете использовать Xamarin).

В любом случае вам нужно будет показать выбранную IDE, где находится SDK, обычно путем вставки пути куда-нибудь. Вы также можете найти расположение Android SDK в Android Studio на случай, если вам когда-нибудь понадобится его переместить, или просто для справки. Просто зайдите в Файл – Структура проекта. Вы также найдете расположение JDK и Android NDK.

Руководство по Android SDK для начинающих - что вам нужно знать

Вы выберете местоположение SDK при его установке. Если вы оставили этот параметр по умолчанию, то есть вероятность, что он может находиться в каталоге AppData Local. Имейте в виду, что эта папка скрыта в Windows по умолчанию, поэтому вам может быть сложно ее найти.

NDK (Native Development Kit) позволяет создавать приложения с использованием собственных языков, таких как C и C ++. Это дает вам доступ к определенным библиотекам и может помочь выжать немного больше производительности из устройства, что делает его полезным, среди прочего, для разработки игр. NDK можно загрузить через диспетчер SDK, и вы можете узнать о нем подробнее здесь.

Как уже упоминалось, если вас интересует только SDK, вы можете загрузить его самостоятельно, посетив страницу загрузок и затем выбрав включение sdkmanager. Это позволит вам обновить SDK через командную строку. Также есть способы получить доступ к AVD Manager без Android Studio. Но для подавляющего большинства пользователей имеет смысл установить полный пакет и пользоваться графическим интерфейсом и другими удобствами, даже если вы собираетесь использовать другую IDE для разработки.

Руководство по Android SDK для начинающих - что вам нужно знать

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


Любой, кто сейчас разрабатывает потребительский софт, знает, что мы живём, прежде всего, в мобильном мире. Все мы видели компании, которые еще до сайта запускали мобильное приложение.

Ранее в этом году comScore показал, что большинство потребителей использует комбинацию РС/смартфона/планшета для доступа к сайтам магазинов. Такой же переход от традиционных методов взаимодействия (бумажной почты и телефона) к веб, что мы наблюдали в 90-ых, мы наблюдаем и сейчас, только из веб все переходят в мобайл.

Пользователи также предпочитают использовать мобильные приложения, вместо мобильного веба. Данные Nielsen о времени, которое люди проводят в мобильных медиа, показывают, что 89% времени уделяется приложениям и только 11% мобильному вебу.

Разработчикам в mobile-first мире должны делать лучшие приложения, или они никогда не добьются успеха. Но для того, чтобы предложить пользователям самый лучший функционал, они должны использовать сторонние SDK в своих приложениях.

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

Вот почему важно выбирать лучшие SDK для своих приложений, предпочитая проверенные и профессиональные системы с хорошей историей. В конце концов, купите ли вы китайский no-name кардиостимулятор, или предпочтете тот, что выпускают именитые фирмы с хорошей историей?

SDK повсюду

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

В среднем одно iOS приложение содержит семь сторонних библиотек: аналитику (чаще несколько), рекламу, A/B тестирование, списки лидеров, пуш-уведомления, Facebook, Twitter, PhoneGap/Titanium/Sencha и так далее.

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

Есть много факторов, которые следует учесть при выборе мобильного SDK. Это, например, размер, использование процессорного времени и сетевого трафика, стабильность, потребление памяти и энергоэффективность. Плохо оптимизированные SDK приведут к перерасходу ресурсов у всего приложения.

Android уже говорит пользователям, кто потребляет их ресурсы больше всего, iOS в новом релизе также станет это делать. Как показывают исследования, 90% пользователей прекращает использовать приложение в течение шести месяцев. Конкуренция на рынке и так невероятная, и последнее, что вам надо – плохо написанные SDK, отталкивающие пользователя от вашего приложения.

Какой же SDK выбрать?

Можно сказать, что самые распространенные SDK являются самыми хорошо написанными и полезными.

Flurry – для аналитики пользователей. Компания, недавно купленная Yahoo, является одной из ведущих платформ в области мобильной аналитики. Система показывает, что делают пользователи в приложении.

Что еще посмотреть:

Crashlytics – для отслеживания сбоев. Отличный пример прекрасно написанного SDK: функциональный, стабильный и маленький.

Что еще посмотреть:

Что еще посмотреть:

Helpshift – SDK для общения с пользователями прямо внутри приложения. Пользователи могут задавать вопросы, а вы отвечать на них – не выходя из приложения.

Что еще посмотреть:

Admob – для показа рекламы. Рекламная сеть Google является самой большой мобильной рекламной платформой в мире и, пожалуй, лучше всех доставляет пользователям рекламу, позволяя монетизировать ваше приложение.

Что еще посмотреть:

Конечно, это лишь малая часть всех тех сервисов, что предоставляют компании мобильным разработчикам. Мы прошлись по самым верхам, а дальше уже предстоит выбирать и решать вам. Найдете лучшие варианты? Напишите нам!

Таблица сравнения номера версии Android SDK и уровня API

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

Ctrl + G

  • Набор основных пакетов и классов
  • Набор элементов и атрибутов XML, используемых для объявления файла манифеста
  • Набор XML-элементов и атрибутов для объявления и доступа к ресурсам
  • Набор намерений
  • Набор разрешений, которые может запросить приложение, и разрешения, включенные в систему для обеспечения соблюдения

Приложение может использовать элемент manifest (), предоставляемый API фреймворка, для описания минимального и максимального уровней API, которые оно может запускать, и предпочтительных уровней API, которые оно поддерживает в проекте. Этот элемент имеет следующие три важных атрибута:

  • android: minSdkVersion - укажите минимальный уровень API, на котором может запускаться приложение. Значение по умолчанию - «1».
  • android: targetSdkVersion - укажите целевой уровень API для запущенного приложения. В некоторых случаях это позволяет приложению использовать элементы файла манифеста или поведения, определенные на целевом уровне API, а не ограничиваться теми, которые определены для самого низкого уровня API.

android: maxSdkVersion - укажите наивысший уровень API, на котором может запускаться приложение.
Важное примечание. Перед использованием этого атрибута прочтите документацию.
Например, чтобы указать минимальный уровень системного API, необходимый для запуска приложения, приложению необходимо добавить элемент с атрибутом android: minSdkVersion в свой манифест. android: minSdkVersion - это целое число, которое соответствует уровню API минимальной версии платформы Android, на которой может запускаться приложение.

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

Если атрибут android: minSdkVersion объявлен, его значение должно быть меньше или равно целому числу системного уровня API. Если не объявлено, система предполагает, что приложению требуется уровень API 1.

Я знаю, что это очень элементарный вопрос, но, к моему удивлению, я не смог найти никакого документа об инструментах сборки Android SDK. Помимо Android SDK Tools и Android SDK Platform-инструментов, существует множество Android SDK Build-инструментов, как показано на прилагаемом скриншоте. Кто-нибудь может указать на источник, объясняющий их все, и помочь выяснить, как определенная версия Android SDK Build-tools выбрана для использования?

введите описание изображения здесь

Отредактировано (2014-02-27) :

Я до сих пор не до конца понимаю все инструменты. Ниже приведены мои ограниченные знания, основанные на последних документах Google:

  • Инструменты Android SDK Build раньше были компонентами инструментов платформы Android SDK . Они были отделены от инструментов платформы Android SDK, поэтому инструменты сборки можно обновлять независимо от компонентов интегрированной среды разработки (IDE).
  • Инструменты Android SDK Platform настроены для поддержки функций новейшей платформы Android. Они имеют обратную совместимость, поэтому вы всегда используете последние обновления инструментов Android SDK Platform, даже если ваше приложение предназначено для более старых платформ Android.
  • Инструменты SDK не зависят от платформы и требуются независимо от того, на какой платформе Android вы разрабатываете.

Я до сих пор не понимаю смысла использования инструментов Android SDK Build из инструментов Android SDK Platform, которые имеют единственный экземпляр и которыми легко управлять обновлением. Единственная возможная причина, по которой я могу придумать, заключается в том, что для создания некоторых приложений приходится использовать более старые компоненты сборки. Документ Google упоминает об этом, но не объясняет почему. Взглянув на заметки о выпуске, вы заметите, что обновления Android SDK Build-tools предназначены в основном для исправления ошибок или поддержки новых платформ. Единственная причина, по которой я могу подумать, что некоторые приложения используют более старые версии Android SDK Build-tools, заключается в том, что они полагаются на определенные ошибки Android SDK Build-tools, Эти приложения не будут функционировать нормально, если не будут созданы с этими ошибками. Хотелось бы, чтобы Google мог объяснить это лучше, приведя один или два примера, показывающих, почему эти ошибки в инструментах важны для определенных приложений.

О версии Android SDK Build-tools ответ

По умолчанию в Android SDK используется самая последняя загруженная версия инструментов сборки.

В Eclipse вы можете выбрать конкретную версию, используя sdk.buildtools свойство в project.properties файле.

Кажется, нет официальной страницы, объясняющей все инструменты сборки. Вот что об этом говорит команда Android.

Инструменты [build], такие как aidl, aapt, dexdump и dx, обычно вызываются инструментами сборки Android или инструментами разработки Android (ADT), поэтому вам редко нужно вызывать эти инструменты напрямую. Как правило, вы должны полагаться на инструменты сборки или плагин ADT, чтобы вызывать их по мере необходимости.

В любом случае, вот синтез различий между инструментами, инструментами платформы и инструментами сборки:

Читайте также: