- Build.VERSION
- Class Overview
- Summary
- Fields
- public static final String BASE_OS
- public static final String CODENAME
- public static final String INCREMENTAL
- public static final int PREVIEW_SDK_INT
- Как получить номер сборки/версии вашего приложения для Android?
- ОТВЕТЫ
- Ответ 1
- Ответ 2
- Ответ 3
- Ответ 4
- Ответ 5
- Использование Gradle и BuildConfig
- Получение VERSION_NAME из BuildConfig
- Возвращает ли пустая строка для VERSION_NAME?
- Удаление versionName и versionCode из AndroidManifest.xml
- Ответ 6
- Ответ 7
- Ответ 8
- Ответ 9
- Ответ 10
- Ответ 11
- Ответ 12
- Ответ 13
- Ответ 14
- Ответ 15
- Ответ 16
- Ответ 17
- Ответ 18
- Ответ 19
- Нет, вам не нужно ничего делать с AndroidManifest.xml
- Ответ 20
- Ответ 21
- Ответ 22
- Как проверить системную версию Android?
- ОТВЕТЫ
- Ответ 1
- Ответ 2
- Ответ 3
- Ответ 4
- Ответ 5
- Ответ 6
- Ответ 7
- Ответ 8
- Ответ 9
- Ответ 10
- Русские Блоги
- Таблица номеров версий Android-SDK
- Предисловие
- 1. Таблица версий SDK
- 2. Назначение номера версии SDK
Build.VERSION
Class Overview
Various version strings.
Summary
Fields | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
BASE_OS | The base OS build the product is based on. | ||||||||||
CODENAME | The current development codename, or the string «REL» if this is a release build. | ||||||||||
INCREMENTAL | The internal value used by the underlying source control to represent this build. | ||||||||||
PREVIEW_SDK_INT | The developer preview revision of a prerelease SDK. | ||||||||||
RELEASE | The user-visible version string. | ||||||||||
SDK | This field was deprecated in API level 4. Use SDK_INT to easily get this as an integer. | ||||||||||
SDK_INT | The user-visible SDK version of the framework; its possible values are defined in Build.VERSION_CODES . | ||||||||||
SECURITY_PATCH | The user-visible security patch level. |
Public Constructors |
---|
[Expand] Fieldspublic static final String BASE_OSThe base OS build the product is based on. public static final String CODENAMEThe current development codename, or the string «REL» if this is a release build. public static final String INCREMENTALThe internal value used by the underlying source control to represent this build. E.g., a perforce changelist number or a git hash. public static final int PREVIEW_SDK_INTThe developer preview revision of a prerelease SDK. This value will always be 0 on production platform builds/devices. When this value is nonzero, any new API added since the last officially published API level is only guaranteed to be present on that specific preview revision. For example, an API Activity.fooBar() might be present in preview revision 1 but renamed or removed entirely in preview revision 2, which may cause an app attempting to call it to crash at runtime. Experimental apps targeting preview APIs should check this value for equality ( == ) with the preview SDK revision they were built for before using any prerelease platform APIs. Apps that detect a preview SDK revision other than the specific one they expect should fall back to using APIs from the previously published API level only to avoid unwanted runtime exceptions. Источник Как получить номер сборки/версии вашего приложения для Android?Мне нужно выяснить, как получить или сделать номер сборки для моего приложения Android. Мне нужно, чтобы номер сборки отображался в пользовательском интерфейсе. Нужно ли что-то делать с AndroidManifest.xml ? ОТВЕТЫОтвет 1И вы можете получить код версии с помощью этого Ответ 2Если вы используете плагин Gradle/Android Studio, от версии 0.7.0, код версии и имя версии доступны статически в BuildConfig , Убедитесь, что вы импортируете пакет приложений, а не другой BuildConfig : Не требуется контекстный объект! Также не забудьте указать их в файле build.gradle вместо AndroidManifest.xml . Ответ 3Немного короче, если вам просто нужно имя версии. Ответ 4Есть две части, которые вам нужны: Android: версия Код Android: версия Имя versionCode — это число, и каждая версия приложения, которую вы отправляете в Маркет, должна иметь больший номер, чем последняя. VersionName — это строка, которая может быть любой, какой вы хотите. Здесь вы определяете свое приложение как «1.0», «2.5» или «2 Alpha EXTREME!» или что угодно. Ответ 5Использование Gradle и BuildConfigПолучение VERSION_NAME из BuildConfigДа, теперь это легко. Возвращает ли пустая строка для VERSION_NAME?Если вы получаете пустую строку для BuildConfig.VERSION_NAME , то читайте дальше. Я продолжал получать пустую строку для BuildConfig.VERSION_NAME , потому что я не устанавливал versionName в файле сборки Grade (я перенес из ANT в Gradle). Итак, вот инструкции по обеспечению установки VERSION_NAME с помощью Gradle. build.gradle Примечание: это от мастерски Jake Wharton. Удаление versionName и versionCode из AndroidManifest.xmlИ поскольку теперь вы установили versionName и versionCode в файл build.gradle , вы также можете удалить их из своего файла AndroidManifest.xml , если они есть. Ответ 6Я не вижу необходимости получать его от менеджера пакетов Ответ 7Вот чистое решение, основанное на решении scottyab (отредактированное Xavi). Он показывает, как сначала получить контекст, если он не предоставлен вашим методом. Кроме того, он использует несколько строк вместо вызова нескольких методов на строку. Это облегчает вам задачу отладки вашего приложения. Теперь, когда вы получили имя версии в String myVersionName , вы можете установить его в TextView или все, что вам нравится. Ответ 8Используйте класс BuildConfig Ответ 9Если вы используете PhoneGap, создайте собственный плагин PhoneGap: Создайте новый класс в своем приложении: В plugins.xml добавьте следующую строку: В deviceready event добавьте следующий код: Затем вы можете получить атрибут versionName, выполнив: Ответ 10Очень простой способ: Ответ 11Вот простой способ получить название версии и код версии Ответ 12Для пользователей xamarin используйте этот код, чтобы получить имя и код версии 1) Название версии: Ответ 13Получить код сборки, который используется для идентификации apk по его коду версии. Код версии используется для определения фактической конфигурации сборки во время обновления базы данных, публикации и т.д. int versionCode = BuildConfig.VERSION_CODE; Имя версии используется для ознакомления пользователей с разработчиками последовательности Developmemt. Вы можете добавить любое название версии по своему желанию. String versionName = BuildConfig.VERSION_NAME; Ответ 14Если вы хотите использовать его в xml, добавьте строку ниже в файл gradle: И затем используйте его на вашем xml следующим образом: Ответ 15Всегда делайте это с блоком try catch : Ответ 16Вот способ получения кода версии: Ответ 17У меня есть SOLVE this, используя класс предпочтений. Ответ 18Есть несколько способов получить versionCode и versionName программно.
Есть некоторые детали, кроме использования второго способа в проекте библиотеки. В новом плагине Android Gradle (3.0. 0+) некоторые функциональные возможности удалены. Итак, на данный момент, т.е. установка разных версий для разных вкусов работает некорректно. Код выше будет правильно установить значение в BuildConfig , но от PackageManager вы получите 0 и null , если вы не установили версию в по default конфигурации. Таким образом, ваше приложение будет иметь код 0 версии на устройстве. Существует обходной путь — установите версию для выходного файла apk вручную: Ответ 19Нет, вам не нужно ничего делать с AndroidManifest.xmlКак правило, название и код версии вашего приложения находятся в файле gradle уровня приложения под тегом defaultConfig: Примечание. Если вы хотите загрузить приложение в PlayStore, можно указать любое имя в качестве имени версии, но код версии должен отличаться от кода текущей версии, если это приложение уже находится в Play Store. Просто используйте следующий фрагмент кода, чтобы получить код версии и название версии из любой точки вашего приложения: Ответ 20для Api 28 PackageInfo.versionCode устарел, поэтому используйте следующий код: Ответ 21Этот код упоминался выше, но здесь он снова включен. Вам нужен блок try/catch, потому что он может вызывать «NameNotFoundException». Надеюсь, это упростит для кого-то дорогу.:) Ответ 22Кому-то, кому нужна информация о BuildConfig для пользовательского интерфейса приложения, однако, хочет использовать эту информацию для настройки конфигурации задания CI или других, таких как я. В вашем каталоге проектов автоматически создается файл BuildConfig.java, пока вы успешно строите проект. Разделите информацию, необходимую для python script или других инструментов. Вот пример: Пожалуйста, извините мои ограниченные возможности английского языка, но надеюсь, что это поможет. Источник Как проверить системную версию Android?Кто-нибудь знает, как я могу программно проверить версию системы (например, 1.0 , 2.2 и т.д.)? ОТВЕТЫОтвет 1
Ответ 2Ответ 3Это даст вам фактические номера вашей версии; a 2.3.3 или 2.2. Проблема с использованием Build.VERSION.SDK_INT заключается в том, что если у вас есть встроенный телефон или пользовательский ром, у вас не может быть ни одной стандартной ОС (например, мой Android не работает 2.3.5), и это вернет null при использовании Build.VERSION.SDK_INT поэтому Build.VERSION.RELEASE будет работать независимо от того, что! Ответ 4Build.Version — это место для этих данных. Вот фрагмент кода для его форматирования. Похоже на это «Android SDK: 19 (4.4.4)» Ответ 5Вы можете узнать версию Android, глядя на Build.VERSION . В документации рекомендуется проверить Build.VERSION.SDK_INT на значения в Build.VERSION_CODES . Это прекрасно, если вы понимаете, что Build.VERSION.SDK_INT был введен только в API Level 4, то есть Android 1.6 (Donut). Таким образом, это не повлияет на вас, но если вы хотите, чтобы ваше приложение запускалось на Android 1.5 или ранее, вам придется использовать устаревший Build.VERSION.SDK . Ответ 6Я не могу комментировать ответы, но в Каушике есть большая ошибка: SDK_INT не совпадает с версией системы, но на самом деле относится к уровню API. Значение Build.VERSION_CODES.ICE_CREAM_SANDWICH равно 14. 14 — уровень API Ice Cream Sandwich, а версия системы — 4,0. Поэтому, если вы напишете 4.0, ваш код будет выполнен на всех устройствах, начиная с Donut, потому что 4 — уровень API Donut ( Build.VERSION_CODES.DONUT равно 4). Этот пример является причиной того, что использование «магического числа» является плохой привычкой. Ответ 7Для проверки версии устройства, которая больше или равна Marshmallow, используйте этот код. для ckecking другие просто изменяют VERSION_CODES, например, Ответ 8Ответ 9Например, функция работает только для api21 до следующего исправления ошибок в api21 down Ответ 10Помните, что Build.VERSION.SDK_INT не является надежным, о чем упоминал @Falcon165o, и недавно я столкнулся с этим. Итак, чтобы получить данные String (на основе списка версий Android) установленного в настоящий момент Android, я сделал такой код: Источник Русские БлогиТаблица номеров версий Android-SDKПредисловиеПоскольку часто бывает необходимо адаптировать версию SDK по-другому, необходимо знать номер версии SDK. Здесь для удобства дальнейшего просмотра запишите его в виде стол. Просто запишите4.0В конце концов, указанная выше версия Android4.0Вышеуказанный уровень проникновения достиг97.4%。 1. Таблица версий SDKНа основе Android 6.0 (уровень API 23)
Если вам нужна более подробная версия NDK, см. Здесь:Форма SDK с версией NDK 2. Назначение номера версии SDK2.1. Получите номер версии
2.2. Адаптировать под номер версии
Судите, есть ли разрешение, если версия больше 5.1, ее нужно судить (то есть 6.0 или выше), а другие судить не нужно. Build.VERSION.SDK_INT относится к уровню API текущего устройства.
Подзаголовок уведомления требует использования API уровня 16. Источник |
---|