OSX:安卓模拟器崩溃

3

我刚刚重新安装了32位的eclipse indigo和最新的Android SDK。在启动后,Android模拟器立即崩溃。

以下是我的步骤:

  1. 创建一个新的Android项目,目标是Android 4.0,SDK 14。
  2. 在Eclipse中按运行按钮。
  3. 看到模拟器启动并在大约2秒后崩溃。

崩溃窗口的输出:

Exception Type:  EXC_BAD_ACCESS (SIGBUS)
Exception Codes: KERN_PROTECTION_FAILURE at 0x0000000000000000
Crashed Thread:  0  Dispatch queue: com.apple.main-thread

Eclipse控制台报告以下问题:
Warning once: This application, or a library it uses, is using NSQuickDrawView,
which has been deprecated. Apps should cease use of QuickDraw and move to Quartz.
goldfish_fb_load: framebuffer dimensions mismatch
savevm: unable to load section goldfish_fb
emulator-5554 disconnected!
Cancelling 'com.sparky1.HelloAnrdroidActivity activity launch'!

有没有想法让模拟器表现更好?
6个回答

3

看起来这种情况通常发生在连接了外部显示器时。请尝试断开外接显示器,然后启动模拟器。等模拟器启动后,可以重新连接外接显示器。


3

1
谢谢您的建议。我已经尝试了上面列出的解决方法^,但是没有成功。每次我尝试运行它时,模拟器仍然会立即崩溃。 - Sparky1
重新安装最终让我再次启动。 - Sparky1
最好的解决方法不是绕过问题,而是使用真实设备。虽然令人遗憾,但这是事实。 - Martin Marconcini

1

我也遇到过这个问题。我发现从命令行运行模拟器并禁用快照可以很好地解决这个问题。 我正在运行:

$ emulator -no-snapshot-load @avd

非常感谢您的建议。恐怕我在这里也没有什么运气。实际上,对我来说添加这个东西会让模拟器更快地崩溃。有了这个,它只需要一瞬间就会崩溃。 - Sparky1
创建一个新的 AVD。将 hw.lcd.density 设置为 240。使用 -scale 0.5 让窗口适应您的屏幕。 - Diego Torres Milano

0
一个替代方案是切换到使用Virtual Box中的AndroVM,它是一个X86 Android映像。其最大优点是与ARM版本相比速度快得惊人。它可以在2-3秒内启动。缺点是您必须手动进行ADB连接,而虚拟盒子捕获鼠标的方式很繁琐。并且并非所有应用程序都能在x86上运行。
要使用它,您必须将第一个以太网适配器配置为Host Only,运行AndroVM配置实用程序以获取模拟器的IP地址,然后使用adb connect IP地址。
另一个提示是,如果屏幕超时了,您需要按F1键唤醒它。

0

我也遇到过所有这些崩溃,并在我的崩溃日志中发现了这个:

Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0   com.apple.CoreFoundation        0x97585bc1 CFStringGetLength + 17
1   com.apple.CoreFoundation        0x9759df63 CFStringCompareWithOptionsAndLocale + 35
2   com.apple.CoreFoundation        0x9759df2c CFStringCompare + 60
3   com.b-l-a-c-k-o-p.CamCamX5      0x03ff3b44 CoreBundleyes::IsMainMember() const + 48
4   com.b-l-a-c-k-o-p.CamCamX5      0x03ff11cc QVDigBaseClass::ClassFactory(ComponentInstanceRecord*) + 50
5   com.b-l-a-c-k-o-p.CamCamX5      0x03ff317b QVDIG_DATA_Open + 23

在网上只花了几个小时 :-(,我找到了一个提示来删除 /Library/Quicktime/CamCamX5.component 之后就不再崩溃了 :-)。

0
如果在创建设备时禁用快照,那就没问题。不要启用快照。 如果启用了快照,在启动设备时勾选“保存到快照”是可以的。 但是勾选“从快照启动”是不行的。如果已经保存了快照,它会导致模拟器崩溃。 在“从快照启动”导致模拟器崩溃后,通过AVD管理器禁用快照无效。但是运行配置>目标>附加命令行选项(-no-snapshot-load)有效。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接