¿Cómo saber un proceso de una aplicación es de 32 bits o de 64 bits por programación en Android Lollipop?
Como todos sabemos de Android 5.0.64bit soporte está allí. Tengo pregunta muy simple. ¿Podemos comprobar mediante programación en qué modo se ejecuta cualquier aplicación, es decir, 32 bits o 64 bits? Por ejemplo: ¿Tengo la aplicación de Facebook funcionando en mi Nexus 9, así que puedo comprobar usando mi aplicación de Android si el proceso de la aplicación de Facebook se ejecuta en modo de 32 bits o modo de 64 bits?
¡Gracias por adelantado!
- FindFragmentById (R.id.map) devuelve null en Android L
- Colisiones nativas recibidas en dispositivos Samsung sólo con las versiones Lollipop 5.0 y 5.1
- Adb shell dumpsys iphonesubinfo no funciona desde Android 5.0 Lollipop
- ¿Cómo implementar una interfaz de usuario similar a la UI de aplicaciones recientes de Lollipop?
- EditText lineSpacingExtra comportamiento extraño
- Deshabilitar / habilitar datos móviles en Android L con acceso root
- La aplicación Android se bloquea en Lollipop
- Android: Fondo de degradado de AppBarLayout
- ¿Cuál es la diferencia entre Android 4.4W (API20) y Android L (API20, L Preview) en el SDK Manager?
- Java: acceso al campo final estático en JNI
- Configuración del color del encabezado de la aplicación en la vista general (aplicaciones recientes)
- Cómo agregar divisores entre los elementos deshabilitados en ListView? - Lollipop
- ¿Cuál es la api de Android para obtener la lista de dispositivos de audio conectados?
Pruebe System.getProperty("os.arch")
. No lo he probado en 64-bit android, pero debe devolver algo como 'aarch64' en caso de dispositivo de 64 bits.
http://developer.android.com/reference/java/lang/System.html#getProperty(java.lang.String)
En Nexus 5x
String arch = System.getProperty("os.arch");
devoluciones
armv8l
no es aarch64
y mi código se rompió. Sin embargo,
root@bullhead:/ # uname -m aarch64 root@bullhead:/ # getprop ro.product.cpu.abilist arm64-v8a,armeabi-v7a,armeabi
Cableado Así que cambié mi código a
boolean is64 = (android.os.Build.VERSION.SDK_INT >= 21) && System.getProperty("ro.product.cpu.abilist").contains("64");
Actualizado el 2016-02-11
En Samsung Samsung Galaxy S5 Neo, Android 5.1.1
String arch = System.getProperty("os.arch");
devuelve aarch64
pero no es un dispositivo de 64 bits !!!
ro.product.cpu.abilist
devuelve armeabi-v7a,armeabi
bool is64Bit = System.getProperty("ro.product.cpu.abilist").contains("64");
la comprobación es la única manera de comprobar.
¿Qué te hace pensar que tu dispositivo no es de 64 bits? Las especificaciones para el teléfono indican que utiliza un Exynos 7 Octa 7580 que es arm8 y 64-bit.
- ¿Cómo programatically fijar el tema al cuadro de diálogo androide?
- Android Studio: Mantenga el estado del árbol del archivo de proyecto ampliado