在上次更新 arm64-v8a 后模拟器在 M1 Mac 上出现离线

问题描述 投票:0回答:4

昨天模拟器运行良好。系统映像是 arm64-v8a。我不完全记得工作系统映像的版本名称,但是昨天我接受了 ARM 64 系统映像的更新,版本名称是“S”。

我可以从我的 AVD 管理器启动模拟器,当我按下“运行应用程序”按钮时,模拟器也会启动,但是,应用程序没有加载到模拟器上,如果我检查“adb devices”或者如果我点击它显示的“排除设备连接故障”:

“emulator-5554 - 设备当前处于离线状态”

我已经尝试了 StackOverflow 上的大部分建议,例如:

  • adb kill-server, adb start-server

  • 删除并重新创建 AVD 设备

  • 使缓存无效/重新启动

  • 在模拟器中启用 USB 调试

  • 从 AVD 管理器擦除数据和冷启动

    我正在使用Android Studio 4.1.3

    Build #AI-201.8743.12.41.7199119,建于 2021 年 3 月 10 日 运行时版本:1.8.0_242-release-1644-b3-6915495 x86_64 VM:JetBrains s.r.o 的 OpenJDK 64 位服务器 VM macOS 10.16 GC:ParNew,ConcurrentMarkSweep 内存:1981M 核心数:8 注册表:ide.new.welcome.screen.force=true, external.system.auto.import.disabled=true 非捆绑插件:org.jetbrains.kotlin

AVD:

Name: Pixel_4_API_S
CPU/ABI: Google Play ARM (arm64-v8a)
Path: ~/.android/avd/Pixel_4_API_S.avd
Target: google_apis_playstore [Google Play] (API level S)
Skin: pixel_4
SD Card: 512M
fastboot.chosenSnapshotFile: 
runtime.network.speed: full
hw.accelerometer: yes
hw.device.name: pixel_4
hw.lcd.width: 1080
image.androidVersion.codename: S
hw.initialOrientation: Portrait
image.androidVersion.api: 29
tag.id: google_apis_playstore
hw.mainKeys: no
hw.camera.front: emulated
avd.ini.displayname: Pixel 4 API S
hw.gpu.mode: auto
hw.ramSize: 1536
PlayStore.enabled: true
fastboot.forceColdBoot: no
hw.cpu.ncore: 4
hw.keyboard: yes
hw.sensors.proximity: yes
hw.dPad: no
hw.lcd.height: 2280
vm.heapSize: 256
skin.dynamic: yes
hw.device.manufacturer: Google
hw.gps: yes
hw.audioInput: yes
image.sysdir.1: system-images/android-S/google_apis_playstore/arm64-v8a/
showDeviceFrame: yes
hw.camera.back: virtualscene
AvdId: Pixel_4_API_S
hw.lcd.density: 440
hw.arc: false
hw.device.hash2: MD5:6b5943207fe196d842659d2e43022e20
fastboot.forceChosenSnapshotBoot: no
fastboot.forceFastBoot: yes
hw.trackBall: no
hw.battery: yes
hw.sdCard: yes
tag.display: Google Play
runtime.network.latency: none
disk.dataPartition.size: 6442450944
hw.sensors.orientation: yes
avd.ini.encoding: UTF-8
hw.gpu.enabled: yes

知道出了什么问题吗?或者如何解决这个问题?

android android-studio android-emulator apple-m1 avd-manager
4个回答
106
投票

用r02镜像替换你下载的avd系统镜像。 r03 对我来说坏了,但恢复到 r02 挽救了一天!

更新:看来 r03、r04 和 r05 在 m1 上都不起作用

Google Play ARM 64 v8a 系统映像(修订版:2)

Google APIs ARM 64 v8a 系统映像(修订版:2)

在 macOS 上使用最新的 android (4.1.3),您要将解压缩图像放入的目录可能类似于

~/Library/Android/sdk/system-images/android-S
.

例如google play图片的路径是

~/Library/Android/sdk/system-images/android-S/google_apis_playstore/arm64-v8a


11
投票

如果你不使用 API 级别 S,你可以试试这个:(我的 API 级别是 31)

  1. 这里下载

  2. 如下图新建一个文件夹,将下载的文件解压并放入新文件夹中 路径:

    /Users/<Username>/Library/Android/sdk/system-images/android-S/google_apis_playstore/arm64-v8a

  3. 启动 Android Studio 并单击配置 > AVD 管理器

  4. 点击 Create Virtual Device ...,选择任何设备,按下 Next 按钮并确认已添加 API 级别 S。

  5. 将它添加到您的设备并验证它是否适用于 VSCode。


3
投票

我遇到了类似的问题,不确定你是否解决了它,但我在寻找解决方案时遇到了这篇文章,上面的解决方案对我不起作用。

我确实发现的一个解决方案是从 google 安装 android-emulator-m1-preview,启动它而不是从 Android Studio 内部启动模拟器。事实证明要解决的问题多么简单,这几乎令人讨厌。

在尝试不同解决方案 12 个多小时后看到构建成功真是太好了。


2
投票

mac M1 用户只需删除模拟器并添加另一个模拟器即可。 API 级别 30 对我有用

© www.soinside.com 2019 - 2024. All rights reserved.