Android 模拟器无法在 Linux 中启动

发布于 2025-01-04 08:42:27 字数 5410 浏览 1 评论 0原文

我正在尝试启动模拟器臂,但它似乎卡住了并​​且从不显示模拟器 GUI。这是我的命令

emulator-arm -avd Android403 -verbose

这是打印输出:

emulator: found SDK root at /home/xxxx/development/android-sdk-linux_x86
emulator: Android virtual device file at: /home/xxxx/.android/avd/Android403.ini
emulator: virtual device content at /home/xxxx/.android/avd/Android403.avd
emulator: virtual device config file: /home/xxxx/.android/avd/Android403.avd/config.ini
emulator: using core hw config path: /home/xxxx/.android/avd/Android403.avd/hardware-qemu.ini
emulator: Found AVD target API level: 15
emulator: found skin 'WVGA800' in directory: /home/xxxx/development/android-sdk-linux_x86/platforms/android-15/skins
emulator: autoconfig: -skin WVGA800
emulator: autoconfig: -skindir /home/xxxx/development/android-sdk-linux_x86/platforms/android-15/skins
emulator: keyset loaded from: /home/xxxx/.android/default.keyset
emulator: trying to load skin file '/home/xxxx/development/android-sdk-linux_x86/platforms/android-15/skins/WVGA800/layout'
emulator: skin network speed: 'full'
emulator: skin network delay: 'none'
emulator: autoconfig: -kernel /home/xxxx/development/android-sdk-linux_x86/system-images/android-15/armeabi-v7a//kernel-qemu
emulator: autoconfig: -ramdisk /home/xxxx/development/android-sdk-linux_x86/system-images/android-15/armeabi-v7a//ramdisk.img
emulator: Using initial system image: /home/xxxx/development/android-sdk-linux_x86/system-images/android-15/armeabi-v7a//system.img
emulator: autoconfig: -data /home/xxxx/.android/avd/Android403.avd/userdata-qemu.img
emulator: autoconfig: -initdata /home/xxxx/.android/avd/Android403.avd/userdata.img
emulator: autoconfig: -cache /home/xxxx/.android/avd/Android403.avd/cache.img
emulator: autoconfig: -sdcard /home/xxxx/.android/avd/Android403.avd/sdcard.img
emulator: Physical RAM size: 512MB

Content of hardware configuration file:
  hw.cpu.arch = arm
  hw.cpu.model = cortex-a8
  hw.ramSize = 512
  hw.touchScreen = yes
  hw.mainKeys = yes
  hw.trackBall = yes
  hw.keyboard = yes
  hw.keyboard.lid = no
  hw.keyboard.charmap = qwerty2
  hw.dPad = yes
  hw.gsmModem = yes
  hw.camera = no
  hw.camera.maxHorizontalPixels = 640
  hw.camera.maxVerticalPixels = 480
  hw.gps = yes
  hw.battery = yes
  hw.accelerometer = yes
  hw.audioInput = yes
  hw.audioOutput = yes
  hw.sdCard = yes
  hw.sdCard.path = /home/xxxx/.android/avd/Android403.avd/sdcard.img
  disk.cachePartition = yes
  disk.cachePartition.path = /home/xxxx/.android/avd/Android403.avd/cache.img
  disk.cachePartition.size = 66m
  hw.lcd.width = 480
  hw.lcd.height = 800
  hw.lcd.depth = 16
  hw.lcd.density = 240
  hw.lcd.backlight = yes
  hw.gpu.enabled = no
  hw.fakeCamera = back
  hw.webcam.count = 6
  hw.webcam.0.name = webcam0
  hw.webcam.1.name = webcam1
  hw.webcam.2.name = webcam2
  hw.webcam.3.name = webcam3
  hw.webcam.4.name = webcam4
  hw.webcam.5.name = webcam5
  hw.webcam.0.direction = front
  hw.webcam.1.direction = back
  hw.webcam.2.direction = front
  hw.webcam.3.direction = front
  hw.webcam.4.direction = front
  hw.webcam.5.direction = front
  vm.heapSize = 48
  hw.sensors.proximity = yes
  hw.sensors.magnetic_field = yes
  hw.sensors.orientation = yes
  hw.sensors.temperature = yes
  kernel.path = /home/xxxx/development/android-sdk-linux_x86/system-images/android-15/armeabi-v7a//kernel-qemu
  kernel.parameters =  android.checkjni=1
  disk.ramdisk.path = /home/xxxx/development/android-sdk-linux_x86/system-images/android-15/armeabi-v7a//ramdisk.img
  disk.systemPartition.initPath = /home/xxxx/development/android-sdk-linux_x86/system-images/android-15/armeabi-v7a//system.img
  disk.systemPartition.size = 166m
  disk.dataPartition.path = /home/xxxx/.android/avd/Android403.avd/userdata-qemu.img
  disk.dataPartition.size = 66m
  disk.snapStorage.path = 
  avd.name = Android403
.
QEMU options list:
emulator: argv[00] = "development/android-sdk-linux_x86/tools/emulator-arm"
emulator: argv[01] = "-android-hw"
emulator: argv[02] = "/home/xxxx/.android/avd/Android403.avd/hardware-qemu.ini"
Concatenated QEMU options:
 development/android-sdk-linux_x86/tools/emulator-arm -android-hw /home/xxxx/.android/avd/Android403.avd/hardware-qemu.ini
emulator: registered 'boot-properties' qemud service
emulator: nand_add_dev: system,size=0xa600000,initfile=/home/xxxx/development/android-sdk-linux_x86/system-images/android-15/armeabi-v7a//system.img
emulator: mapping 'system' NAND image to /tmp/android-xxxx/emulator-wDcx8t
emulator: rounding devsize up to a full eraseunit, now a608000

emulator: nand_add_dev: userdata,size=0x4200000,file=/home/xxxx/.android/avd/Android403.avd/userdata-qemu.img
emulator: registered 'boot-properties' qemud service
emulator: Adding boot property: 'dalvik.vm.heapsize' = '48m'
emulator: Adding boot property: 'qemu.sf.lcd_density' = '240'
emulator: Adding boot property: 'qemu.hw.mainkeys' = '1'
emulator: Adding boot property: 'qemu.sf.fake_camera' = 'back'
emulator: nand_add_dev: cache,size=0x4200000,file=/home/xxxx/.android/avd/Android403.avd/cache.img
emulator: Kernel parameters: qemu.gles=0 qemu=1 console=ttyS0 android.qemud=ttyS1 android.checkjni=1 ndns=2

它永远不会再变长。它还发送我的计算机主机名的 DNS 请求(并得到答案!)。当我使用 ctrl-c 取消模拟器时,GUI 在进程被终止之前会显示几分之一秒。

我运行的是 64 位 Linux,但安装了 32 位 java。如果我从 Eclipse 中启动模拟器(当然),也会发生同样的事情。

有人见过这个吗?我在谷歌上搜索过这个问题,但似乎人们只有其他模拟器启动问题。

我认为这与我的64位系统有关。

I'm trying to start emulator-arm but it seems to get stuck and never shows the emulator gui. This is my command

emulator-arm -avd Android403 -verbose

And this is the printout:

emulator: found SDK root at /home/xxxx/development/android-sdk-linux_x86
emulator: Android virtual device file at: /home/xxxx/.android/avd/Android403.ini
emulator: virtual device content at /home/xxxx/.android/avd/Android403.avd
emulator: virtual device config file: /home/xxxx/.android/avd/Android403.avd/config.ini
emulator: using core hw config path: /home/xxxx/.android/avd/Android403.avd/hardware-qemu.ini
emulator: Found AVD target API level: 15
emulator: found skin 'WVGA800' in directory: /home/xxxx/development/android-sdk-linux_x86/platforms/android-15/skins
emulator: autoconfig: -skin WVGA800
emulator: autoconfig: -skindir /home/xxxx/development/android-sdk-linux_x86/platforms/android-15/skins
emulator: keyset loaded from: /home/xxxx/.android/default.keyset
emulator: trying to load skin file '/home/xxxx/development/android-sdk-linux_x86/platforms/android-15/skins/WVGA800/layout'
emulator: skin network speed: 'full'
emulator: skin network delay: 'none'
emulator: autoconfig: -kernel /home/xxxx/development/android-sdk-linux_x86/system-images/android-15/armeabi-v7a//kernel-qemu
emulator: autoconfig: -ramdisk /home/xxxx/development/android-sdk-linux_x86/system-images/android-15/armeabi-v7a//ramdisk.img
emulator: Using initial system image: /home/xxxx/development/android-sdk-linux_x86/system-images/android-15/armeabi-v7a//system.img
emulator: autoconfig: -data /home/xxxx/.android/avd/Android403.avd/userdata-qemu.img
emulator: autoconfig: -initdata /home/xxxx/.android/avd/Android403.avd/userdata.img
emulator: autoconfig: -cache /home/xxxx/.android/avd/Android403.avd/cache.img
emulator: autoconfig: -sdcard /home/xxxx/.android/avd/Android403.avd/sdcard.img
emulator: Physical RAM size: 512MB

Content of hardware configuration file:
  hw.cpu.arch = arm
  hw.cpu.model = cortex-a8
  hw.ramSize = 512
  hw.touchScreen = yes
  hw.mainKeys = yes
  hw.trackBall = yes
  hw.keyboard = yes
  hw.keyboard.lid = no
  hw.keyboard.charmap = qwerty2
  hw.dPad = yes
  hw.gsmModem = yes
  hw.camera = no
  hw.camera.maxHorizontalPixels = 640
  hw.camera.maxVerticalPixels = 480
  hw.gps = yes
  hw.battery = yes
  hw.accelerometer = yes
  hw.audioInput = yes
  hw.audioOutput = yes
  hw.sdCard = yes
  hw.sdCard.path = /home/xxxx/.android/avd/Android403.avd/sdcard.img
  disk.cachePartition = yes
  disk.cachePartition.path = /home/xxxx/.android/avd/Android403.avd/cache.img
  disk.cachePartition.size = 66m
  hw.lcd.width = 480
  hw.lcd.height = 800
  hw.lcd.depth = 16
  hw.lcd.density = 240
  hw.lcd.backlight = yes
  hw.gpu.enabled = no
  hw.fakeCamera = back
  hw.webcam.count = 6
  hw.webcam.0.name = webcam0
  hw.webcam.1.name = webcam1
  hw.webcam.2.name = webcam2
  hw.webcam.3.name = webcam3
  hw.webcam.4.name = webcam4
  hw.webcam.5.name = webcam5
  hw.webcam.0.direction = front
  hw.webcam.1.direction = back
  hw.webcam.2.direction = front
  hw.webcam.3.direction = front
  hw.webcam.4.direction = front
  hw.webcam.5.direction = front
  vm.heapSize = 48
  hw.sensors.proximity = yes
  hw.sensors.magnetic_field = yes
  hw.sensors.orientation = yes
  hw.sensors.temperature = yes
  kernel.path = /home/xxxx/development/android-sdk-linux_x86/system-images/android-15/armeabi-v7a//kernel-qemu
  kernel.parameters =  android.checkjni=1
  disk.ramdisk.path = /home/xxxx/development/android-sdk-linux_x86/system-images/android-15/armeabi-v7a//ramdisk.img
  disk.systemPartition.initPath = /home/xxxx/development/android-sdk-linux_x86/system-images/android-15/armeabi-v7a//system.img
  disk.systemPartition.size = 166m
  disk.dataPartition.path = /home/xxxx/.android/avd/Android403.avd/userdata-qemu.img
  disk.dataPartition.size = 66m
  disk.snapStorage.path = 
  avd.name = Android403
.
QEMU options list:
emulator: argv[00] = "development/android-sdk-linux_x86/tools/emulator-arm"
emulator: argv[01] = "-android-hw"
emulator: argv[02] = "/home/xxxx/.android/avd/Android403.avd/hardware-qemu.ini"
Concatenated QEMU options:
 development/android-sdk-linux_x86/tools/emulator-arm -android-hw /home/xxxx/.android/avd/Android403.avd/hardware-qemu.ini
emulator: registered 'boot-properties' qemud service
emulator: nand_add_dev: system,size=0xa600000,initfile=/home/xxxx/development/android-sdk-linux_x86/system-images/android-15/armeabi-v7a//system.img
emulator: mapping 'system' NAND image to /tmp/android-xxxx/emulator-wDcx8t
emulator: rounding devsize up to a full eraseunit, now a608000

emulator: nand_add_dev: userdata,size=0x4200000,file=/home/xxxx/.android/avd/Android403.avd/userdata-qemu.img
emulator: registered 'boot-properties' qemud service
emulator: Adding boot property: 'dalvik.vm.heapsize' = '48m'
emulator: Adding boot property: 'qemu.sf.lcd_density' = '240'
emulator: Adding boot property: 'qemu.hw.mainkeys' = '1'
emulator: Adding boot property: 'qemu.sf.fake_camera' = 'back'
emulator: nand_add_dev: cache,size=0x4200000,file=/home/xxxx/.android/avd/Android403.avd/cache.img
emulator: Kernel parameters: qemu.gles=0 qemu=1 console=ttyS0 android.qemud=ttyS1 android.checkjni=1 ndns=2

And it never gets any longer. It also sends a DNS-request of my computers hostname (and gets an answer!). When I cancel the emulator with ctrl-c the gui shows up for a fraction of a second before the process is killed.

I'm running 64-bit Linux but have 32-bit java installed. The same thing happens if I start the emulator from within Eclipse (of course).

Have anyone seen this? I've googling on this but seems people only have other emulator startup problems.

I think it something to do with my 64-bit system.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

爱殇璃 2025-01-11 08:42:27

添加 -noaudio 标志在 RHEL6 上为我解决了这个问题。而且我不需要需要像一些人建议的那样重命名libOpenglRender.so

例如:

emulator -avd avdNameHere -verbose -noaudio

Adding the -noaudio flag fixed this issue for me on RHEL6. And I did not need to rename libOpenglRender.so as some have suggested.

For example:

emulator -avd avdNameHere -verbose -noaudio
懷念過去 2025-01-11 08:42:27

今天,当我更新操作系统时,这个问题得到了惊人的解决(我通常每周至少更新一次)。
更新了 3 个软件包。其中:

emul-linux-x86-baselibs-20120127
emul-linux-x86-xlibs-20120127

以前的版本:

emul-linux-x86-baselibs-20110928
emul-linux-x86-xlibs-20110928

不适用于旧版本。但已修复这些库的新版本。

This was amazingly solved today when I updated my OS (which I usually do at least once a week).
3 packages where updated. Among them:

emul-linux-x86-baselibs-20120127
emul-linux-x86-xlibs-20120127

Previous versions where:

emul-linux-x86-baselibs-20110928
emul-linux-x86-xlibs-20110928

Didn't work with the old versions. But fixed with new versions of those libs.

可能是模拟器试图加载错误的快照,请

$ emulator -avd Android403 -verbose -no-snapshot-load

注意,不需要指定架构,因为将选择与您的 avd 匹配的架构。

It might be the emulator trying to load the wrong snapshot, try

$ emulator -avd Android403 -verbose -no-snapshot-load

also notice that it's not needed to specify the architecture because the one that matches your avd will be selected.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文