2012-01-03 7 views
13

En mi producto, descubro que cuando instalo el archivo APK en el Galaxy Nexus ejecutando Android 4.0.1, se instala el archivo .so incorrecto. Tengo un APK llamado "gordo" que incluye código nativo para armeabi, armeabi-v7a y x86.Galaxy Nexus: se ha seleccionado la CPU ABI incorrecta durante el tiempo de instalación

Estoy viendo que el archivo .so para la CPU ABME armeabi se extrae del archivo APK en lugar del archivo armeabi-v7a .so. Si elimino la carpeta "armeabi" del archivo APK, entonces galaxy nexus instala correctamente el archivo .so de la carpeta armeabi-v7a.

He verificado que la CPU ABI del nexo es "armeabi-v7a" y su ABI secundario es "armeabi".

¿Alguien más ha visto este problema y han encontrado una manera de evitar el problema sin eliminar la carpeta "armeabi" de su directorio libs en el APK?

Respuesta

12

Esto parece ser un error. También lo probé creando un pequeño proyecto con código nativo y, de hecho, Galaxy Nexus elige la biblioteca incorrecta (armeabi en lugar de armeabi-v7a).

He informado este error en http://code.google.com/p/android/issues/detail?id=25321, con el proyecto de ejemplo adjunto en el error. Por favor, ejecútelo para llamar la atención a los ingenieros de Android.

Parece que otra pregunta de StackOverflow también se origina en esta falla: Android floating point math performance.

Cuestiones relacionadas