我要测试使用Google地图的现有Android应用。我能够使用Google API(API 17)在模拟器AVD中运行它。我必须在三星Galaxy S4(1920x1080)等高分辨率设备上测试它。然后我更新了SDK,现在所有AVD(旧的和新创建的)与Google API的行为方式相同:它在启动后启动,发生分段错误(核心转储)并崩溃。 DDMS监视器显示最后一个错误与EGL有关。
我正在使用2GB内存和AMD Turion64 1.6Ghz处理器的Linux机器(Fedora,内核2.6.35)运行模拟器。
尝试使用API 16,17和18运行它,仍然会发生同样的错误。使用普通SDK的AVD工作正常,问题在于谷歌API,它启用了播放,地图服务等。尝试了模拟器臂,但它甚至没有启动。
尝试了这个(Android emulator segmentation fault)的提示,但这不起作用。这是运行Nexus10(2560x1600)的AVD时的输出:
[rajeesh@localhost ~]$ emulator -avd N10APINew -verbose -scale .3
emulator: found SDK root at /media/45d0873a-eafc-43a5-bcd8-6d674ae690c8/droid-kit
emulator: Android virtual device file at: /home/rajeesh/.android/avd/N10APINew.ini
emulator: virtual device content at /home/rajeesh/.android/avd/N10APINew.avd
emulator: virtual device config file: /home/rajeesh/.android/avd/N10APINew.avd/config.ini
emulator: using core hw config path: /home/rajeesh/.android/avd/N10APINew.avd/hardware-qemu.ini
emulator: Found AVD target API level: 16
emulator: 'magic' skin format detected: 2560x1600
emulator: autoconfig: -skin 2560x1600
emulator: autoconfig: -skindir (null)
emulator: keyset loaded from: /home/rajeesh/.android/default.keyset
emulator: found SDK root at /media/45d0873a-eafc-43a5-bcd8-6d674ae690c8/droid-kit
emulator: trying to load skin file '/media/45d0873a-eafc-43a5-bcd8-6d674ae690c8/droid-kit/tools/lib/emulator/skins/dynamic//layout'
emulator: loaded dynamic skin width=2560 height=1600 bpp=16
emulator: autoconfig: -kernel /media/45d0873a-eafc-43a5-bcd8-6d674ae690c8/droid-kit/system-images/android-16/armeabi-v7a//kernel-qemu
emulator: autoconfig: -ramdisk /media/45d0873a-eafc-43a5-bcd8-6d674ae690c8/droid-kit/add-ons/addon-google_apis-google-16/images/armeabi-v7a//ramdisk.img
emulator: Using initial system image: /media/45d0873a-eafc-43a5-bcd8-6d674ae690c8/droid-kit/add-ons/addon-google_apis-google-16/images/armeabi-v7a//system.img
emulator: autoconfig: -data /home/rajeesh/.android/avd/N10APINew.avd/userdata-qemu.img
emulator: autoconfig: -initdata /home/rajeesh/.android/avd/N10APINew.avd/userdata.img
emulator: autoconfig: -cache /home/rajeesh/.android/avd/N10APINew.avd/cache.img
emulator: Physical RAM size: 1024MB
Content of hardware configuration file:
hw.cpu.arch = arm
hw.cpu.model = cortex-a8
hw.ramSize = 1024
hw.screen = touch
hw.mainKeys = no
hw.trackBall = no
hw.keyboard = yes
hw.keyboard.lid = no
hw.keyboard.charmap = qwerty2
hw.dPad = no
hw.gsmModem = yes
hw.gps = yes
hw.battery = yes
hw.accelerometer = yes
hw.audioInput = yes
hw.audioOutput = yes
hw.sdCard = no
disk.cachePartition = yes
disk.cachePartition.path = /home/rajeesh/.android/avd/N10APINew.avd/cache.img
disk.cachePartition.size = 66m
hw.lcd.width = 2560
hw.lcd.height = 1600
hw.lcd.depth = 16
hw.lcd.density = 320
hw.lcd.backlight = yes
hw.gpu.enabled = yes
hw.camera.back = none
hw.camera.front = none
vm.heapSize = 128
hw.sensors.proximity = no
hw.sensors.magnetic_field = yes
hw.sensors.orientation = yes
hw.sensors.temperature = yes
hw.useext4 = no
kernel.path = /media/45d0873a-eafc-43a5-bcd8-6d674ae690c8/droid-kit/system-images/android-16/armeabi-v7a//kernel-qemu
kernel.parameters = android.checkjni=1
disk.systemPartition.initPath = /media/45d0873a-eafc-43a5-bcd8-6d674ae690c8/droid-kit/add-ons/addon-google_apis-google-16/images/armeabi-v7a//system.img
disk.systemPartition.size = 200m
disk.dataPartition.path = /home/rajeesh/.android/avd/N10APINew.avd/userdata-qemu.img
disk.dataPartition.size = 200m
avd.name = N10APINew
.
QEMU options list:
emulator: argv[00] = "/home/rajeesh/droid-kit/tools/emulator-arm"
emulator: argv[01] = "-android-hw"
emulator: argv[02] = "/home/rajeesh/.android/avd/N10APINew.avd/hardware-qemu.ini"
Concatenated QEMU options:
/home/rajeesh/droid-kit/tools/emulator-arm -android-hw /home/rajeesh/.android/avd/N10APINew.avd/hardware-qemu.ini
emulator: registered 'boot-properties' qemud service
emulator: nand_add_dev: system,size=0xc800000,initfile=/media/45d0873a-eafc-43a5-bcd8-6d674ae690c8/droid-kit/add-ons/addon-google_apis-google-16/images/armeabi-v7a//system.img
emulator: mapping 'system' NAND image to /tmp/android-rajeesh/emulator-Tt0j9K
emulator: rounding devsize up to a full eraseunit, now c810000
emulator: nand_add_dev: userdata,size=0xc800000,file=/home/rajeesh/.android/avd/N10APINew.avd/userdata-qemu.img
emulator: rounding devsize up to a full eraseunit, now c810000
emulator: registered 'boot-properties' qemud service
emulator: Adding boot property: 'dalvik.vm.heapsize' = '128m'
emulator: Adding boot property: 'qemu.sf.lcd_density' = '320'
emulator: Adding boot property: 'qemu.hw.mainkeys' = '0'
emulator: Adding boot property: 'qemu.sf.fake_camera' = 'none'
emulator: nand_add_dev: cache,size=0x4200000,file=/home/rajeesh/.android/avd/N10APINew.avd/cache.img
emulator: Initializing hardware OpenGLES emulation support
failed to create drawable
Failed to load libGL.so
error libGL.so: cannot open shared object file: No such file or directory
failed to create drawable
Failed to load libGL.so
error libGL.so: cannot open shared object file: No such file or directory
emulator: Kernel parameters: qemu.gles=1 qemu=1 console=ttyS0 android.qemud=ttyS1 android.checkjni=1 ndns=1
emulator: Trace file name is not set
emulator: Could not open file: (null)/system/build.prop: No such file or directory
emulator: control console listening on port 5554, ADB on port 5555
emulator: sent '0012host:emulator:5555' to ADB server
emulator: ping program: /media/45d0873a-eafc-43a5-bcd8-6d674ae690c8/droid-kit/tools/ddms
emulator: ping command: /media/45d0873a-eafc-43a5-bcd8-6d674ae690c8/droid-kit/tools/ddms ping emulator 22.2.1.0 "Mesa Project" "Software Rasterizer" "2.1 Mesa 7.9"
failed to create drawable
failed to create drawable
failed to create drawable
failed to create drawable
failed to create drawable
failed to create drawable
failed to create drawable
failed to create drawable
failed to create drawable
[2]+ Done android avd
Segmentation fault (core dumped)
[rajeesh@localhost ~]$
答案 0 :(得分:0)
不幸的是,即使使用谷歌api,你也无法在模拟器中测试谷歌地图api v2,虽然有些人已经完成了look here.我尝试为谷歌地图配置模拟器但是无法做到。使用谷歌api的模拟器捆绑的地图应用程序,但其他地图相关的应用程序没有。
最简单的方法是在实际硬件中测试它。