Я пытался реализовать Google Maps v2 в своем приложении для Android, но, к сожалению, вместо карт я получаю это сообщение:
Можно ли запускать эти карты на эмуляторе Android (платформа 4.2)?
Я пытался реализовать Google Maps v2 в своем приложении для Android, но, к сожалению, вместо карт я получаю это сообщение:
Можно ли запускать эти карты на эмуляторе Android (платформа 4.2)?
В настоящий момент, ссылаясь на Google Android Map API v2, вы не можете запускать Google Maps v2 в эмуляторе Android; вы должны использовать устройство для своих тестов.
Для тех, кто обновился до последней версии google-play-services_lib и/или имеет эту ошибку Google Play services out of date. Requires 3136100 but found 2012110
эту более новую версию com.google.android.gms.apk(Google Play Services 3.1.36) и com.android.vending.apk(Google Play Store 4.1.6).
Проверьте эту конфигурацию на Android SDK Tools 22.0.1. Другая конфигурация, ориентированная на чистый Android, а не на Google, тоже должна работать.
...
Выполните это в терминале /cmd
adb -e install com.google.android.gms.apk
adb -e install com.android.vending.apk
Перезагрузите AVD
Я нашел этот способ самым простым, чистым и работает с новейшей версией программного обеспечения, которая позволяет вам получить все исправления ошибок.
Попробуйте следующее. Это было успешно для меня.
Шаги:
Создайте новый эмулятор с такой конфигурацией:
Запустите эмулятор и установите следующие APK файлы: GoogleLoginService.apk
, GoogleServicesFramework.apk
и Phonesky.apk
, Вы можете сделать это со следующими командами:
adb shell mount -o remount,yourAvdName -t yaffs2 /dev/block/mtdblock0 /system
adb shell chmod 777 /system/app
adb push GoogleLoginService.apk /system/app/
adb push GoogleServicesFramework.apk /system/app/
adb push Phonesky.apk /system/app/
Ссылки для APK:
Установите сервисы Google Play и Карты Google в эмуляторе
adb install com.google.android.apps.maps-1.apk
adb install com.google.android.gms-2.apk
sdkmanager->extra->google play service
.google-play-services_lib
из androidsdk\extras\google\google_play_services
.Я успешно установил Google Maps v2 на эмуляторе, используя это руководство.
Вы должны сделать следующие шаги:
Я рекомендую использовать эмулятор от Genymotion вместо эмуляторов Google. Он запускается быстрее и реагирует почти в режиме реального времени. Он также поддерживает службы Google Play и, следовательно, Карты Google.
Попробуй! Вот сообщение в блоге, которое поможет вам настроить эмулятор.
Я могу запустить эмулятор для моего приложения с Google Map V.2 (с Google Play Service V.4). Я последовал за шагами, которые другие предложили с некоторыми неудачами, однако я узнал об этом и как-то заставил его работать. Вот как это делается:
Прежде всего: вы должны закодировать свое картографическое приложение. правильно со всеми соответствующими настройками разрешений в вашем метафайле XML, а также частью приложения Google Play Services APK вашего приложения. Чтобы убедиться, что это так, вы должны запустить приложение на устройстве REAL и знать, что оно работает с его картой. Затем вы можете продолжить обработку своего эмулятора, как показано ниже.
Создайте новый эмулятор или используйте существующий эмулятор со спецификациями:
Запустите эмулятор (ваш целевой эмулятор должен быть запущен!)
Загрузите следующие APK (доступные через Dropbox за 4/2/2013) в свой локальный каталог (сканирование на наличие вирусов!):
com.android.vending.apk, (Google Play Store, v.3.10.9)
com.google.android.gms.apk, (Служба Google Play, v.2.0.12)
Установите эти два APK в ваш эмулятор запуска (целевого) с помощью команды ADB:
DOS/Console Prompt > adb -e install [путь к APK файлу]
ПРИМЕЧАНИЕ. Возможно, у вас были эти APK, установленные в вашем эмуляторе во время этой пробной ошибки, и по какой-то причине необходимо переустановить. Вы должны сначала удалить их: adb -e uninstall (com.google.android.gms или com.android.vending)
Здесь ситуация может оказаться сложной. Вы считаете, что все готово, но когда вы снова открываете приложение с помощью карты, но все, что вы получаете, это ошибка, говорящая о том, что "службы Google Play устарели. Требуется 2012100, но найдено 2010110" и могут видеть кнопку "Обновить" Google Play. Если это так, НЕ пытайтесь нажимать кнопку обновления, поскольку он ничего не сделает. Я тоже получил эту ошибку, и я решил ее выполнить оба этих дополнительных шага:
Что это, он работает сейчас красиво.
Вам нужно попробовать эмулятор с версией API Google. Каждая платформа имеет две версии: Android и Android + API Google. Убедитесь, что при создании AVD вы выбираете версию Google API в целевом поле.
И страница Убедитесь, что устройства имеют APK сервисов Google Play, также могут быть полезны.
Я успешно выполнил наше приложение, которое требует API Карт Google 2, на AndroVM виртуальной машине.
AndroVM не поставляется с установленными Google Maps или Google Play, но предоставляет измененную копию архива Cyanogen Gapps, который представляет собой набор проприетарных приложений Google, установленных на большинстве Android-устройств.
Инструкции, скопированные из FAQ AndroVM:
Как установить Google Apps (включая приложение Market/Play)?
- Загрузите Google Apps: gapps-jb-20121011-androvm.tgz [в основном каталог /system из архива Cyanogen gapps без приложения GoogleTTS, которое вылетает на AndroVM]
- Отмените файл gapps... tgz на вашем хосте - у вас будет созданный системный каталог.
- Получите IP-адрес управления вашего AndroVM (инструмент настройки AndroVM) и выполните "adb connect x.y.z.t"
- сделать "adb root"
- подключитесь к "adn connect x.y.z.t"
- do "adb remount"
- do "adb push system//system/"
Ваша виртуальная машина перезагрузится, и у вас должны быть приложения Google, в том числе Market/Play.
У вас не будет некоторых Google Apps, таких как Карты, но они могут быть загружены с рынка/игры.
Итак, следуйте этим инструкциям, а затем просто установите Карты Google в Google Play!
Некоторые большие побочные эффекты использования виртуальной машины, а не эмулятора:
Единственным ударом на дороге пока не хватало жестов с несколькими касаниями, что является обломком для картографического приложения! Я планирую обойти это со скрытым механизмом пользовательского интерфейса, поэтому не такая огромная проблема.
Google обновил API 23 для таргетинга виртуальных устройств. Теперь он поставляется с Google Play Services 9.0.80. Поэтому, если вы используете Google Maps API V 2.0 (я использую игровые сервисы-карты: 9.0.0 и play-services-location.9.0.0), обходной путь не требуется. Он просто работает!
Я попытался выполнить описанные выше шаги (paniniluncher), но получил следующее сообщение:
Google Play services out of date. Requires 3025100 but found 2012110
Я получил это сообщение, потому что мне нужны разные версии файлов, отмеченные выше. Чтобы решить проблему, я сначала удалил файлы, на которые были упомянуты выше, загрузил нужные мне версии (как указано в следующей публикации StackOverflow:
Устаревшие службы Google Play. Требуется 3025100, но найдено 2012110
а затем установили эти файлы с помощью `adb -e install [path-to-APK-file], а затем перезапустили эмулятор, и он работал отлично!
Я уже ответил на этот вопрос в ответе на вопрос "Переполнение стека" . Неисправность с помощью кнопки входа в систему Google в эмуляторе. Он работает только для Android 4.2.2, но позволяет использовать "Intel Atom (x86)" в AVD.
Я думаю, что это легко сделать для других версий Android. Просто найдите правильные файлы.