Intereting Posts
Как создать специальный каталог приложения на SDCard, который следует удалить при удалении приложения Как настроить Admob с помощью Adobe AIR для Android Android: PreferenceFragment показывает только первое предпочтение Ошибка при создании Android-проекта с Maven: уровень 16 платформы / API недоступен Как мы можем нарисовать векторное изображение? Как создать ярлык, который приводит к активности без запуска? Удалите лишние строки после Html.fromHtml () Получение ошибки в webview на сэндвич с мороженым Eclipse не может найти R.layout.simple_list_item_1 Как сохранить скользящий ящик с верхней части виртуальной клавиатуры Как я могу получить код страны своего Android-телефона без использования GPS? Возможно ли с ежемесячной подпиской на андроид в приложении? Проблемы с запуском ошибки в Android Studio, когда packageDebug в Max OS X Универсальный-Image-Loader | SSLHandshakeException: сообщение об ошибке не выполнено Запустить приложение для телефонного звонка на устройстве Android

Что делать, если я хочу опубликовать обновление с более высоким значением minSDK, чем тот, который представлен на рынке?

Я выпустил приложение на рынке с minSDK, установленным на 4 (Android 1.6), но теперь я хочу опубликовать обновление с функциями, недоступными в 1.6, поэтому мне нужен более высокий minSDK .

Итак, мой вопрос: будут ли пользователи, работающие с 1.6, получать уведомление об этом обновлении? … и если да, они смогут загрузить / установить его?

Нет, они не должны быть уведомлены об обновлении. Рынок будет фильтровать приложение вместе, и они больше не смогут его видеть или получать обновления.

Если вы хотите добавить функции, которые используют более высокий уровень api, но не исключают пользователя с более низким уровнем api, вы можете использовать некоторое отражение, чтобы включить это:

public static Method getExternalFilesDir; try { Class<?> partypes[] = new Class[1]; partypes[0] = String.class; getExternalFilesDir = Context.class.getMethod("getExternalFilesDir", partypes); } catch (NoSuchMethodException e) { Log.e(TAG, "getExternalFilesDir isn't available in this devices api"); } 

Этот фрагмент кода говорит:

В Context.class я получил этот метод getExternalFilesDir (уровень API 9)

Если это так, создайте переменную getExternalFilesDir как отражающий вызов этого метода, оставите ее равной нулю.

Затем вы можете просто сделать

  // If the user's device is API9 or above if(getExternalFilesDir != null){ // Invoke is basically the same as doing Context.getExternalFilesDir(var1, var2); getExternalFilesDir.invoke(variable1, variable2); } else { // User cannot use this method do something else } 

надеюсь, это поможет