Как мне сделать выбор? Какие параметры следует учитывать?
Для какой версии Android мне следует разрабатывать?
Ответы (9)
Прежде всего вы должны принять во внимание относительное количество устройств, на которых работает данная версия Платформа Android
Ознакомьтесь с рыночной долей версий Android. Я бы разрабатывал под 1.6+. Если в середине разработки вы поймете, что вам нужна какая-то функция API из более новой версии, у вас будет 3 варианта:
- Не используйте эту функцию
- Определите версию Android из приложения, а затем решите, что делать
- Измените необходимую версию Android в файле манифеста и настройках проекта.
Если возможно, вам следует поддерживать самую старую версию Android, которая все еще широко используется. Это было бы 1,5. Если вам нужны функции из более поздних версий, вы можете подумать о том, чтобы потребовать более новые версии, но если вы можете работать с самой старой доступной версией, вам следует увеличить количество людей, которые могут использовать ваше приложение.
Самая старая версия, которая поддерживает все функции, необходимые вашему приложению.
Например: вашему приложению требуется мультитач? Целевая версия 2.1
Мое приложение не нуждается в каких-либо функциях, представленных в более новых версиях, поэтому я нацелен на 1.5.
Я согласен с ответами, опубликованными выше, и добавлю, что на справочном сайте Android API большую часть времени указывается минимальный уровень API (http://developer.android.com/reference/android/package-summary.html). Вы можете просмотреть эту страницу, чтобы определить версию Android, связанную с данным уровнем API: http://developer.android.com/guide/appendix/api-levels.html
Лично я все разрабатываю для 2.1. Есть лишь несколько устройств, на которых все еще работает ‹2.0, и большинство из них уже установили на них специальные ромы. Я знаю, что это отвлекает людей от старых телефонов, но мне не нравится идея испортить свое приложение только для того, чтобы сделать его обратно совместимым.
Также мне кажется, что разработка для> 2.0 побуждает людей обновлять свои телефоны = P
@Falmarri: Я вижу некоторые изъяны в вашей логике. Обычно я бы пошел по тому же пути, что и вы, если бы разрабатывал на другой платформе, например Windows. Я делаю свои приложения C # всегда в соответствии с последней доступной (не бета-версией) версией, поскольку .NET Framework свободно доступен для всех (исключите новые версии, недоступные для Win2k, которой уже почти 10 лет).
С Android эта попытка не работает. Большинство устройств с версиями 1.5 и 1.6 делают это, потому что для этого устройства нет обновлений, поскольку производитель прекратил разработку новых версий для этого телефона (либо для мотивации пользователей на получение новой обновленной версии), либо потому, что для этого требуется много времени. делать бэкпорты на эти "старые" устройства.
Таким образом, у этих пользователей нет «свободного выбора» для обновления своих телефонов. Технически это, конечно, возможно с рутированными / пользовательскими ПЗУ, однако большинство пользователей не имеют технических знаний для рутирования / прошивки своих устройств с пользовательскими ПЗУ или не хотят терять свою гарантию.
Поэтому, если вы хотите предложить свое приложение как можно большему количеству людей, вы должны разрабатывать его с учетом гораздо более старой версии ОС. В случае с Android против 1.5.
И я в основном этим занимаюсь. Я сделал свои приложения с учетом 1.5.
Если вы разрабатываете с помощью Android Studio: 1. Перейдите в Инструменты -> Android -> AVD Manager. 2. Нажмите кнопку «Создать виртуальное устройство ...» в диалоговом окне AVD Manager. 3. Выберите устройство на странице мастера «Выбор оборудования» диалогового окна и нажмите Далее. 4. В правом нижнем углу страницы мастера «Образ системы» вы увидите следующее:
Если вы нажмете ссылку «Диаграмма распределения уровней API», она предоставит вам сводку кумулятивного распределения по уровням API. Я предполагаю, что информация обновляется с каждым выпуском. Оттуда вы можете щелкнуть уровень API, чтобы получить конкретную информацию об этом уровне API. Основываясь на информации, представленной там, вам необходимо использовать API уровня 18 или ниже, чтобы около 75% текущего Android Market могли использовать ваше приложение.
Возможно, именно такую информацию вы ищете. Надеюсь, поможет!
Это прямая цитата из Документов Android:
Как правило, рекомендуется поддерживать около 90% активных устройств, ориентируя свое приложение на последнюю версию.
С практической точки зрения это невозможно, если у вас нет неограниченного бюджета.
Даже сами Android выпускают обновления безопасности только начиная с версии 8.
На данный момент я рекомендую поддерживать Android 7 и далее. Это должно покрыть 57,9% доли рынка.
Если вы прокрутите страницу вниз, то увидите таблицу , в которой отображается информация о поддержке Android..
Он будет обновляться ежемесячно, поскольку цифры, которые я цитирую выше, будут со временем меняться.