En primer lugar, buen día para todas!
Mi código necesita detectar en qué versión de Android se está utilizando mediante getprop ro.build.version.release
. Lo hago usando sistemas con root y python para Android.
Por el momento, los dispositivos que probé el código funcionaban bien, pero en parte, por supuesto, porque no he tenido en cuenta las actualizaciones entre las nuevas versiones del sistema operativo. Acabo de agregar la nueva versión que estaba probando en un diccionario.
Entonces digamos que tengo este diccionario:
VersionName = {'4.0':"Ice Cream Sandwich", '4.0.4':"Ice Cream Sandwich", '4.1':"Jelly Bean", '4.2':"Jelly Bean", '4.3':"Jelly Bean", '4.4':"KitKat", '5.0':"Lollipop", '5.1':'Lollipop', '6.0':"Marshmallow", '7.1.1':"Nougat"}
Yo podria agregar:
'4.4.2':'KitKat'
Para guardar y detectar la nueva versión en la que estaba trabajando, pero eso no va a funcionar. Para superar esto, simplemente hice una búsqueda para seleccionar la primera y la última versión de una versión de Android.
VersionName = {'Ice Cream Sandwich':['4.0', '4.0.4'], 'Jelly Bean':['4.1', '4.3.1'], 'KitKat':['4.4', '4.4.4'], 'Lollipop':['5.0', '5.1.1'], 'Marshmallow':['6.0', '6.0.1'], 'Nougat':['7.0', '7.1.1']}
El problema surge si la versión de actualización se encuentra entre los dos valores.
Dada la {'KitKat':['4.4', '4.4.4']}
y la versión del dispositivo 4.4.2
, ¿cómo puedo detectar si es parte de KitKat
2 respuestas
Tal vez almacene el mínimo y el máximo como dos variables, luego haga si os (versión)> (valor mínimo): luego verifique si os (versión) <(valor máximo)
¡Así es como abordaría el problema con la ayuda brindada! Hay mejores maneras de saberlo, así que si alguien tiene otro método, por favor comparta.
def DroidName(ReleaseVersion):
# ReleaseVersion = '4.4.2'
VersionValue = {'Ice Cream Sandwich':['4.0', '4.0.4'], 'Jelly Bean':['4.1', '4.3.1'], 'KitKat':['4.4', '4.4.4'], 'Lollipop':['5.0', '5.1.1'], 'Marshmallow':['6.0', '6.0.1'], 'Nougat':['7.0', '7.1.1']}
for i in VersionValue.items():
AndroidName = i[0]
MinimalValue = i[1][0]
MaximunValue = i[1][1]
if ReleaseVersion >= MinimalValue and ReleaseVersion <= MaximunValue:
print AndroidName, ReleaseVersion
break
Preguntas relacionadas
Nuevas preguntas
android
Android es el sistema operativo móvil de Google, que se utiliza para programar o desarrollar dispositivos digitales (teléfonos inteligentes, tabletas, automóviles, televisores, ropa, vidrio, IoT). Para temas relacionados con Android, use etiquetas específicas de Android, tales como intención de Android, actividad de Android, adaptador de Android, etc. Para preguntas que no sean de desarrollo o programación, pero relacionadas con el marco de Android, use este enlace: https: // android.stackexchange.com.