2012-03-23 12 views
20

Acabo de intentar ejecutar la aplicación de mi compañía en el nuevo emulador de Android x86, pero nuestra aplicación se basa en la API de Google Maps, y eso no está disponible en la imagen del sistema x86 que google provisto con el lanzamiento de android sdk 17. Mi intuición dice que la respuesta es no, pero ¿es posible obtener las API de Google en esta imagen del sistema de alguna manera? Si no, ¿hay alguna manera de no utilizar condicionalmente una API del sistema como google maps si no está presente en el dispositivo/emulador que está utilizando actualmente?accediendo google apis en el nuevo emulador de Android Intel x86

+2

Duplicado de http://stackoverflow.com/a/10540106/82156 – emmby

+1

Mi pregunta fue hecha dos días antes de esa. – Kevlar

+2

He creado listas para ejecutar imágenes de Android x86 con soporte de Google Maps. Puede descargarlos a través de mi blog: http://www.seal.io/2012/09/android-x86-images-with-google-sdk-maps.html – sealskej

Respuesta

12

Mi intuición dice que la respuesta es no, pero ¿es posible obtener las API de Google en esta imagen del sistema de alguna manera?

No hay más que una imagen, por lo que si los mapas no están allí, entonces los mapas no están allí. No puede agregar el complemento de Maps a una imagen de emulador existente, excepto tal vez mediante piratería de software, como recomienda la otra respuesta a esta pregunta.

Si no, ¿hay alguna forma de no utilizar condicionalmente una API del sistema como google maps si no está presente en el dispositivo/emulador que está utilizando actualmente?

¡Absolutamente!

Paso # 1: Añadir android:required="false" a su elemento <uses-library> para Google Maps, por lo que puede instalar la aplicación

Paso # 2: En algún momento antes de empezar a tratar de usar Google Maps, ver si tiene mapas relacionados con las clases utilizando Class.forName()

Por ejemplo, en this book sample project, mi actividad lanzador ve si tenemos MapActivity, y si lo hacemos, se pasa el control a una instancia MapActivity, y si no muestra una Toast.

32

Debe crear una imagen del sistema con las bibliotecas y permisos de Google. Consulte http://38911bytes.blogspot.de/2012/03/how-to-use-google-maps-api-in-android.html para obtener un libro de cocina para crear y usar dicha imagen.

+0

probé el método descrito en este blog y funcionó para mí: ahora puedo probar mi API de Google Maps en el nuevo emulador de Android x86 – vallllll

+0

Información muy interesante. No he investigado esto todavía, ¡pero definitivamente lo haré! – Kevlar

+0

Bueno, esto no funcionó para mí. Obtengo INSTALL_FAILED_CONTAINER_ERROR, cuando intento instalar la aplicación con google maps en la imagen del emulador modificado. – sealskej

1

A partir del API 19 (Android 4.4), parece que el propio Google ofrece ahora el paquete de API de Google para x86.

Package Description 
Google APIs (x86 System Image), Android API 19, revision 2 
By Google Inc. 
Android x86 + Google APIs 
Requires SDK Platform Android API 19 

Archive Description 
Archive for any OS 
Size: 195.5 MiB 
SHA1: 0fb71d18800064c96a5645166e2ae666275a1e59 
Cuestiones relacionadas