...之后的所有后续尝试都会导致崩溃。一旦任何AVD启动并退出,它就永远无法再次成功启动。我已尝试使用ARM和英特尔ABI,无论是否有快照。似乎没什么区别。
我甚至无法从AVD Manager的列表中删除AVD;它声称它目前在模拟器中运行并且无法删除",它不是(没有模拟器进程正在运行)。我必须从〜/ .android / avd /手动删除.avd文件,然后创建一个全新的AVD。我没有看到任何其他进程,而不是Android Studio应用程序运行(至少没有看起来与远程相关),但是当我退出它时,它会询问我是否要"断开与进程的关联' app' " (实际上它会多次询问),即使活动监视器没有显示名为" app"的进程。退出并重新启动Android Studio以及机器本身后,模拟器继续崩溃。
SO上其他与AVD相关的帖子似乎都没有相关性。
我在最新版本的OS X Mavericks上运行最新版本的Android Studio(通过内置更新程序更新为0.8.2)。这是崩溃的堆栈跟踪的有趣部分:
Process: emulator64-arm [10831]
Path: /Users/USER/*/Android Studio.app/sdk/tools/emulator64-arm
Identifier: emulator64-arm
Version: ???
Code Type: X86-64 (Native)
Parent Process: studio [3462]
Responsible: studio [3462]
User ID: 501
Date/Time: 2014-07-09 14:17:37.966 -0600
OS Version: Mac OS X 10.9.4 (13E28)
Report Version: 11
Anonymous UUID: B18B64F8-4A66-F624-243B-2AE2C192F57D
Sleep/Wake UUID: EE9F3B06-E894-4CA3-A022-8D4FC325A1BC
Crashed Thread: 0 Dispatch queue: com.apple.main-thread
Exception Type: EXC_BAD_ACCESS (SIGSEGV)
Exception Codes: KERN_INVALID_ADDRESS at 0x0000000000000000
VM Regions Near 0:
-->
__TEXT 000000010b732000-000000010b966000 [ 2256K] r-x/rwx SM=COW /Users/USER/*/Android Studio.app/sdk/tools/emulator64-arm
Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0 emulator64-arm 0x000000010b8ae18a 0x10b732000 + 1556874
1 com.apple.AppKit 0x00007fff8f457321 __67-[NSWindow _updateSettingsSendingScreenChangeNotificationIfNeeded:]_block_invoke + 237
2 com.apple.AppKit 0x00007fff8f4571e8 NSPerformWithScreenUpdatesDisabled + 65
3 com.apple.AppKit 0x00007fff8f457197 -[NSWindow _updateSettingsSendingScreenChangeNotificationIfNeeded:] + 197
4 com.apple.AppKit 0x00007fff8f44f491 -[NSWindow _setFrame:updateBorderViewSize:] + 914
5 com.apple.AppKit 0x00007fff8f44ea0e -[NSWindow _oldPlaceWindow:] + 652
6 com.apple.AppKit 0x00007fff8f44de3c -[NSWindow _setFrameCommon:display:stashSize:] + 1633
7 com.apple.AppKit 0x00007fff8f46225c -[NSWindow setFrameOrigin:] + 369
8 emulator64-arm 0x000000010b8abeb4 0x10b732000 + 1547956
9 emulator64-arm 0x000000010b8a8e95 SDL_SetVideoMode + 469
10 emulator64-arm 0x000000010b77749b 0x10b732000 + 283803
11 emulator64-arm 0x000000010b778aa8 0x10b732000 + 289448
12 emulator64-arm 0x000000010b778d4e skin_window_create + 190
13 emulator64-arm 0x000000010b77b471 0x10b732000 + 300145
14 emulator64-arm 0x000000010b742599 qemu_main + 5833
15 emulator64-arm 0x000000010b74d656 SDL_main + 6086
16 emulator64-arm 0x000000010b8b0270 0x10b732000 + 1565296
17 com.apple.CoreFoundation 0x00007fff9726ce0c __CFNOTIFICATIONCENTER_IS_CALLING_OUT_TO_AN_OBSERVER__ + 12
18 com.apple.CoreFoundation 0x00007fff9716082d _CFXNotificationPost + 2893
19 com.apple.Foundation 0x00007fff8ac407ba -[NSNotificationCenter postNotificationName:object:userInfo:] + 68
20 com.apple.AppKit 0x00007fff8f334b69 -[NSApplication _postDidFinishNotification] + 289
21 com.apple.AppKit 0x00007fff8f33489c -[NSApplication _sendFinishLaunchingNotification] + 195
22 com.apple.AppKit 0x00007fff8f331786 -[NSApplication(NSAppleEventHandling) _handleAEOpenEvent:] + 570
23 com.apple.AppKit 0x00007fff8f3311db -[NSApplication(NSAppleEventHandling) _handleCoreEvent:withReplyEvent:] + 242
24 com.apple.Foundation 0x00007fff8ac5ef0a -[NSAppleEventManager dispatchRawAppleEvent:withRawReply:handlerRefCon:] + 294
25 com.apple.Foundation 0x00007fff8ac5ed7d _NSAppleEventManagerGenericHandler + 106
26 com.apple.AE 0x00007fff8c91ae1f aeDispatchAppleEvent(AEDesc const*, AEDesc*, unsigned int, unsigned char*) + 381
27 com.apple.AE 0x00007fff8c91ac32 dispatchEventAndSendReply(AEDesc const*, AEDesc*) + 31
28 com.apple.AE 0x00007fff8c91ab36 aeProcessAppleEvent + 315
29 com.apple.HIToolbox 0x00007fff8e098161 AEProcessAppleEvent + 56
30 com.apple.AppKit 0x00007fff8f32d0b6 _DPSNextEvent + 1026
31 com.apple.AppKit 0x00007fff8f32c89b -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] + 122
32 com.apple.AppKit 0x00007fff8f32099c -[NSApplication run] + 553
33 emulator64-arm 0x000000010b8b0917 main + 1351
34 emulator64-arm 0x000000010b7377e4 start + 52
任何提示/伏都教魔法/修复此建议都将非常感谢。
答案 0 :(得分:1)
为后代回答我自己的问题......
进一步调查显示,当窗口在外部监视器上时退出AVD进程是导致崩溃的原因。这样做会将窗口的位置保存到AVD的.avd目录中的“emulator-user.ini”文件中,当此值大于主屏幕的边界时,AVD将在启动时崩溃。将此值编辑为主屏幕范围内的值将允许AVD再次成功启动。
错误报告:https://code.google.com/p/android/issues/detail?id=73364。