Для какой версии Android я должен разработать?

Как мне сделать выбор? Какие параметры я должен учитывать?

8 ответов

Посмотрите на долю Android-версии на рынке. Я бы разработал для 1.6+. Если в середине разработки вы поймете, что вам нужна какая-то функция API от более новой версии, у вас будет 3 варианта:

  1. Не используйте эту функцию
  2. Определите версию Android из приложения и затем решите, что делать
  3. Измените требуемую версию Android в файле манифеста и настройках проекта.

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

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

Например: ваше приложение требует мультитач? Целевая версия 2.1

Моему приложению не нужны никакие функциональные возможности, представленные в более новых версиях, поэтому я нацеливаюсь на 1.5

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

Также я чувствую, что разработка для>2.0 побуждает людей обновлять свои телефоны =P

Я согласен с ответами, опубликованными выше, и добавил бы, что на справочном сайте API Android в большинстве случаев указан минимальный уровень API ( http://developer.android.com/reference/android/package-summary.html). Вы можете посмотреть на эту страницу, чтобы определить версию Android, связанную с данным уровнем API: http://developer.android.com/guide/appendix/api-levels.html

@Falmarri: Я вижу некоторые недостатки в вашей логике. Обычно я бы шел по тому же пути, что и вы, если бы разрабатывал на другой платформе, например Windows. Я делаю свои приложения на C# всегда против самой последней (не бета) версии, так как.NET Framework свободно доступен для всех (вычеркните новые версии, недоступные для Win2k, которой уже почти 10 лет).

С Android эта попытка не работает. Большинство устройств, работающих под управлением 1.5 и 1.6, делают это, потому что для этого устройства нет обновлений, так как производитель прекратил разработку новых версий для этого телефона (либо для того, чтобы мотивировать пользователей получить новую обновленную версию), либо потому, что это требует времени сделать бэкпорт на это "старое" устройство.

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

Поэтому, если вы хотите предложить свое приложение как можно большему количеству людей, вы должны разработать его с гораздо более старой версией ОС. В случае Android против 1.5.

И это в основном то, что я делаю. Я сделал свои приложения с учетом 1,5.

Если вы разрабатываете с помощью Android Studio: 1. Перейдите в Инструменты -> Android -> Диспетчер AVD 2. Нажмите кнопку Создать виртуальное устройство... в диалоговом окне Диспетчер AVD. 3. Выберите устройство на странице мастера "Выбор оборудования" диалогового окна и нажмите "Далее". 4. В правом нижнем углу страницы мастера "Образ системы" вы увидите следующее:

Ссылка диаграммы распределения уровня API

Если щелкнуть ссылку "Диаграмма распределения уровня API", она предоставит вам сводную информацию о совокупном распределении по уровням API. Я предполагаю, что информация обновляется с каждым выпуском. Оттуда вы можете нажать на уровень API, чтобы получить конкретную информацию об этом уровне API. Основываясь на информации, представленной там, вам нужно использовать API уровня 18 или ниже, чтобы около 75% текущего Android Market могли использовать ваше приложение.

График распределения уровня API

Возможно, это тип информации, которую вы ищете. Надеюсь, поможет!

Это прямая цитата из Документов Android:

Как правило, рекомендуется поддерживать около 90% активных устройств, ориентируя свое приложение на последнюю версию.

С практической точки зрения это невозможно, если у вас нет неограниченного бюджета.

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

На данный момент я рекомендую поддерживать Android 7 и далее. Это должно покрыть 57,9% доли рынка.

Если вы прокрутите страницу вниз, вы увидите таблицу, в которой отображается информация о поддержке Android.

Он будет обновляться ежемесячно, поскольку цифры, которые я цитирую выше, будут со временем меняться.

Другие вопросы по тегам