2016-02-03 3 views
-2

Мое приложение должно определить, имеет ли устройство новейшее программное обеспечение ОС, предоставляемое Google.Есть ли способ определить, что такое последняя выпущенная версия Android?

Например, в настоящее время мне нужно определить, работает ли устройство Marshmallow, независимо от того, что телефон, возможно, никогда не сможет установить Marshmallow.

Должно ли это быть то, что жестко закодировано в приложении?

Благодаря

+2

Зачем вам это нужно? Учитывая, что только потому, что была выпущена новая сборка, это не значит, что устройство может получить ее версию (большинство телефонов более или менее никогда не получают обновление ОС). Во всяком случае, нет API или какой-либо способ закодировать его в ОС, вам нужно настроить веб-сервис, который сообщает о последней выпущенной версии, и вручную обновлять его каждый раз, когда Google объявляет о выпуске новой версии. –

+0

Посмотрите этот ответ http://stackoverflow.com/a/3993933/2802875 –

+0

Я решил, что нам нужно будет настроить его как веб-сервис, спасибо за ваш ответ. – markreed49

ответ

1

Будет ли эта потребность быть чем-то, что трудно закодированного в приложение?

Да, более или менее. Вы можете использовать отражение для проверки значений в Build.VERSION_CODES и посмотреть, какая из них самая высокая в непрерывном диапазоне, начиная с 1.

Однако эти значения скомпилированы в ваше приложение; они не исходят из рамки, так как это значения static final int. Таким образом, хотя этот подход будет работать и для текущих и будущих версий Android, вам необходимо создать приложение с последним compileSdkVersion, отправив это обновленное приложение (которое теперь выберет более высокий код максимальной версии) и будет полагаться на пользователей для обновления приложение.

Если вы не хотите, чтобы —, например, вы не хотите полагаться на пользователей, обновляющих приложение —, вам нужно будет вытащить информацию из последней версии из Интернета, желательно с какого-либо хоста, которым вы управляете.

+0

Спасибо! Мы собираемся добавить сервис для этого в нашу CMS. – markreed49

Смежные вопросы