Как решить, для какой версии Android разрабатывать приложение?

Мое исследование показывает, что Android 2.2 и 2.3 занимают главную долю рынка. Но при разработке приложения я должен сохранить уровень API приложения 2.1 или перейти на 2.2+?

Какие факторы обычно принимаются во внимание?

2 ответа

Решение

Я использую 2.1 (API 7) в качестве цели и 1.6 (API 4) в качестве минимальной версии.

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

Если мне нужно использовать некоторые (необязательные) функции из 2.2 или 2.3, я использую их с отражением.

Вот пример:

    // try to override the transition animation
    if (VERSION.SDK_INT > android.os.Build.VERSION_CODES.DONUT) {
      try {
        Method method = getClass().getMethod("overridePendingTransition",
            new Class[]{int.class, int.class});
        method.invoke(this, 0, 0);
      } catch (Throwable e) {
        // can not override transition animation, so do nothing
      }
    }

Мой ответ прост: начните с SDK4 (Android 1.6), в более ранних версиях отсутствуют некоторые важные функции (в частности, обработка размеров экрана) и накапливается количество нефиксированных ошибок. Затем проверьте, требует ли ваше приложение более новых функций выпуска Android - таких как уведомления от облака к устройству или поддержка барометра.

Старайтесь не сокращать количество пользователей на дату выпуска, вам поможет статистика Android Platform: http://developer.android.com/resources/dashboard/platform-versions.html

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