当前位置: 首页 > 知识库问答 >
问题:

AVD模拟器已终止-Mac

鲁鸿朗
2023-03-14

我花了一整天的时间尝试了在堆栈溢出和数十个Google结果(简短摘要)的多个问题中找到的所有方法

  • 重新启动计算机
  • 删除并重新创建AVD
  • 将AVD图形更改为软件(既在AVD管理器中,也直接在文件中)
  • 在SDK管理器中重新安装Emulator(所有可能的方式-更新、删除和重新安装,启动AVD时按需重新安装)
  • 重新安装HAXM
  • 重新安装Android studio
  • 在SDK管理器中检查所有Android版本
  • 从命令行启动AVD(此方法对本文很重要)
  • 可能更多
  • …这一切以不同的顺序和组合多次发生

然后我在youtube上的(这个)视频下面找到了这个评论回复:

  
  
I managed to fix the issue after looking for it for 5 hours. There is no error message when I tried to run from the android studio. However, running the emulator the terminal will print the error message and this will help a lot. Run from terminal: /Users/hendrysetiadi/Library/Android/sdk/emulator/emulator emulator -avd Pixel_4_API_29 My error message is like below: emulator: Android emulator version 30.5.0.0 (build_id 7145572) (CL:N/A) dyld: Library not loaded: /System/Library/Frameworks/IOUSBHost.framework/Versions/A/IOUSBHost Referenced from: /Users/hendrysetiadi/Library/Android/sdk/emulator/qemu/darwin-x86_64/qemu-system-x86_64 Reason: image not found Abort trap: 6 I managed to get the IOUSBHost.framework from my friend laptop and then upload it to google drive (in zip format) I follow the steps in here https://apple.stackexchange.com/questions/300222/accidentally-deleted-a-system-framework-macos-screwed The steps are - restart mac and command+R to show recovery option, choose safari icon to launch safari in recovery mode - In safari, open the google drive link I have uploaded earlier, then download the zip file directly into /System/Library/Frameworks/ (it will automatically unzip) - restart the laptop. - Done

这与我使用命令行方法得到的错误完全相同。

问题是,我确实可以访问另一台运行OSX的计算机 - 莫哈韦在我的情况下。但我不知道操作系统版本是否那么重要。

我的问题是:“有没有人有能力并愿意提供OSX(最好是Mojave)的/System/Library/Frameworks/中的文件IOUSBHost.framework,并在这里发布链接?”最好是拉链,但我可以自己处理。

我将立即测试该方法,如果它有效,我将自己托管该文件(以保持可用性并释放海报的资源)并在此处创建解决方案答案。

谢谢你

共有3个答案

百里海超
2023-03-14

我收到与您相同的错误。所建议的解决方案没有任何效果。我已经尝试了你所做的一切。到目前为止,似乎唯一的解决方案是将我们的Mac至少升级到卡塔利娜...或者降级所有内容...这似乎不是最简单的方法。

在macOS 10.15 Catalina中,Apple引入了一个以用户模式访问USB设备的新框架,即IOUSBHost框架

您可以在此阅读更多信息:

  • https://tejusadiga.wordpress.com/2020/06/06/time-to-farewell-kernel-extensions-kext-on-macos/
  • https://developer.apple.com/documentation/iousbhost

希望这也能给你带来光明;)

郑宏朗
2023-03-14

谷歌正在研究这个bug。下一版本的仿真器将不依赖于该框架。这里有36个测试版:

https://issuetracker.google.com/issues/183218284

端木澄邈
2023-03-14

编辑:

更新到Android Emulator 30.5.4.0后,不再需要该框架。谷歌可能已经解决了这个问题。

经过进一步的研究和感谢这里的评论,特别是Don Pato的回答,很明显,在Android模拟器更新到30.5.3.0版本后,由于缺少框架,它开始在OSX Mojave和较旧的版本上显示给定的错误。

这种情况有两个明显的解决方案:

    < li >更新操作系统 < li >降级Android模拟器(以及Android studio本身) < li >此解决方案

由于某些其他软件的兼容性,第一种解决方案可能无法使用,而第二种解决方案则可能不切实际,因为较旧的仿真器最多可以运行Android API 29。

感谢YouTube评论的原作者(亨德利·塞蒂亚迪)提供了所需的文件(他是这里的英雄),这个问题可以解决,避免了之前的2个选项。我不得不稍微改变一下他的步骤,因为由于“磁盘空间不足”错误,我无法直接在恢复模式下Safari下载文件。

解决方案流程:

  1. 从以下链接下载缺少的框架:https://www.dropbox.com/s/i9bzzw5sr0s7e81/IOUSBHost.framework.zip?dl=0
  2. 统一
  3. 现在有必要将文件 IOUSBHost.framework 获取到 /系统/库/框架 这是系统只读目录。谁知道该怎么做,可以停止阅读,只是去做。我通过以下步骤进行操作 - 其中一些可能是不必要的。
  4. 使用 Cmd R 重新启动以恢复,并在实用程序启动终端中禁用系统完整性保护,并禁用 csrutil
  5. 重新启动到系统并安装系统,通过放入终端 sudo 安装 -uw /
  6. 现在你可以复制文件 - 我在Finder中做了(mac用户密码是必需的)
  7. 不要忘记在恢复中再次打开SIP通过启用

开始您的AVD!

 类似资料:
  • 在升级到Android Studio 2020.3.1 canary 15后,当我尝试运行模拟器时,它被以下错误杀死: AVD Pixel_4_API_30的模拟器进程已终止。 它在以前的版本(4.1.3)中工作正常,但现在在安装新版本后,它显示了相同的错误。 我已经尝试了一些解决方案,建议在几乎类似的情况下;然而,它仍然不起作用。 我删除了我的模拟器(我也清除了目录: /.android/avd

  • 仿真程序停止运行。配置:Windows 10,Intel,HAXM安装,虚拟化,GPU软件,模拟器重新安装.在打开后,该错误立即发生(AVD的仿真程序进程被终止),仿真程序甚至没有出现

  • 7)在中,更改模拟器实例的绝对路径 当尝试在docker中运行模拟器时,会重新创建带有更改的qcow2文件,而不是使用现有文件。:( 我得到相同的android-sdk工具和模拟器版本,相同的JDK等等。 还试图将harware-qemu.ini中的路径更改为新路径(),但没有成功。 关于系统和Docker的一些信息: 1)Android版本23(6.0)x86 google_apis映像 但是现

  • 我使用的是Arch Linux x86_64位系统,4个内核,Intel i5处理器和4 GB RAM。 我一直试图通过执行从命令行运行Android模拟器,但我得到以下错误: 下面是该目录的内容。我试过下面的帖子: 恐慌:AVD系统路径断裂。检查您的ANDROID_SDK_ROOT值 不管用。非常感谢您的回复

  • 错误:调整分区e2fsck的大小失败,退出代码为%1。 我已经确保我在设置我的AVD时完全遵循这段视频。每当我使用x86_64系统映像运行AVD时,我会得到以下消息: 无法在仿真程序中启动AVD。输出:模拟器:警告:userdata分区的大小已从550 M调整为800 M错误:调整分区e2fsck的大小失败,退出代码为1 Hax已启用Hax ram_size 0x60000000 Hax正在工作,