Так что мне нужно было довести уровень моего минимума до 11 для предпочтения (addpreferenceresource был обесценен) - получается, что 9-10 выдает 50% рынка. Поэтому мой вопрос: лучше ли просто подавлять предупреждение, чтобы угодить рынку пряников или есть другой способ сделать ссылку на мои предпочтения без использования фрагментов предпочтений?Лучший способ повысить мой минимальный уровень API?
ответ
Я бы реализовал оба типа (тот, который работает в 11+, и тот, который работает в 10-), затем используйте для них условные проверки. Это написано довольно подробно в this answer.
В принципе, вы в конечном итоге создание OtherPreferencesActivity
с PreferenceFragment
, а затем PreferencesActivity
с устаревшей PreferenceActivity
. (Ваш APK не сломается, включив в этот устаревший код, до тех пор, пока вы используете проверку версии, так что если/когда он удален в будущем, он не пытается найти его.)
if (Build.VERSION.SDK_INT < 11) {
startActivity(new Intent(this, PreferencesActivity.class);
} else {
startActivity(new Intent(this, OtherPreferencesActivity.class);
}
Имейте в виду, что вы захотите, чтобы они использовали методы друг друга как можно больше, чтобы вы не дублировали код.
Последний совет: @TargetApi(11)
и @SuppressWarnings("deprecation")
пригодится здесь. Просто будьте осторожны, что вы не игнорируете другие отклонения, делая это.
«обесцененный» не означает, что вы не можете его использовать и разорвут систему, если вы запустите код. Это означает, что его официально не рекомендуется использовать, и этот метод может быть удален из api. В будущем, но мы не знаем, когда. Поэтому я бы сказал, что сейчас это экономить на использовании.
- 1. Уровень андроида минимальный уровень api
- 2. Минимальный уровень API для Google Analytics
- 3. Минимальный уровень API Android для AdMob?
- 4. Минимальный уровень грамотности прямоугольника
- 5. Лучший способ повысить производительность моей игры LWJGL?
- 6. Минимальный уровень нормализации в Caffe
- 7. Как установить минимальный уровень api для проектов в Android Studio?
- 8. Лучший способ вставить HttpServletResponse в сервисный уровень
- 9. Минимальный уровень API SDK для использования Android-приложений Google Apps?
- 10. Какой минимальный уровень API для Android для Smack 4.1?
- 11. Как найти фактический минимальный уровень API, поддерживаемый проектом android?
- 12. Как узнать минимальный уровень api каждой включенной библиотеки
- 13. Как узнать, каков минимальный уровень api для класса?
- 14. Лучший способ изменить мой спринт
- 15. Лучший способ использовать мой синглтон
- 16. Как повысить уровень звука с цифровой интерполяцией
- 17. Установите минимальный уровень масштабирования webview (Android)
- 18. Как повысить минимальный уровень журнала для определенных библиотек с помощью NLog?
- 19. Установить минимальный уровень масштабирования для MapView
- 20. Минимальный/максимальный уровень масштабирования в OpenLayers
- 21. Невозможно понизить минимальный уровень Android sdk
- 22. Как повысить уровень доступа к данным?
- 23. Лучший способ настроить мой угловой проект
- 24. Лучший способ защиты вызовов API без SSL?
- 25. Оборонительные функции, инварианты, минимальный уровень шума
- 26. Лучший способ создать ключ криптографического API
- 27. В WSO2 как повысить уровень подписки/понизить уровень подписки?
- 28. Лучший способ повысить привилегии программно в разных версиях Linux?
- 29. Лучший способ повысить производительность (и включить некоторое восстановление после сбоя)
- 30. Как повысить уровень детализации в Capistrano выходе
Почему бы не использовать настройки, обеспечиваемые Eclipse? Активность? И, как сказал @ wtsang02, устаревшее не означает непригодность к использованию. Фактически, вы должны использовать методы «устаревшие из 3.0» в 2.3 <, поскольку там нет фрагментов. –