该存储库基于MagiskOnWSA和WSAPatch,使用 Gihub Actions 自动将 Magisk root 和 Google Apps 集成到 WSA 中并使其在 Windows 10 上运行
本项目仅保证在Windows 10上稳定运行(理论上也可以在Windows 11上运行),如果您使用的是Windows 11,WSA-Script是更好的选择。
English |简体中文(github)|简体中文(gitee)
系统要求
Windows 内部版本号 | Windows™ 10:22H2 Build 10.0.19045.2311 或更高版本(推荐)Windows™ 10:20H2 Build 10.0.19042.2604(最低) | Windows™ 11:21H2 内部版本 22000.526 或更高版本 |
要使用 WSA,必须安装KB5014032,然后安装KB5022834
才能在这些 Windows 10 版本上使用 WSA
| 内存
- 8 GB(最小)
- 16 GB(推荐)
| |贮存
| |最低存储要求:系统驱动器 (C:\) 上必须至少有 10GB 可用空间
| |所需的 Windows 功能
| |启用虚拟机平台:需要!!!
| |启用 Windows Hypervisor 平台(可选)
| |启用适用于 Linux™ 的 Windows 子系统(可选)
| |启用 Hyper-V(可选)
| |这些可选设置用于虚拟化并提供运行 WSA 所需的组件。您可以通过按键盘上的 Windows 键 + R 并在框中键入“OptionalFeatures.exe”来启用这些设置,按 Enter 键并选择上面的功能,然后按应用虚拟化
| |计算机必须支持虚拟化 (Intel VT-x/AMD-V) 并在 BIOS/UEFI 和可选功能中启用。
| |不同的主板/笔记本有不同的启用方法,具体方法请到品牌官网查询,或者网上搜索
有关如何启用的指南
安装
注意:如果您安装了官方 Windows Subsystem For Android™,则必须完全卸载它才能使用 MagiskOnWSA。
如果您想保留以前安装(官方或MagiskOnWSA)的数据,您可以
1 | %LOCALAPPDATA%\Packages\MicrosoftCorporationII.WindowsSubsystemForAndroid_8wekyb3d8bbwe\LocalCache\userdata.vhdx |
在卸载前进行备份并在安装后恢复。有关更全面和详细的指南,请查看备份和恢复部分
- 进入发布页面
- 在最新版本中,转到资产部分并下载您选择的 Windows Subsystem For Android™ 版本(不要下载“源代码”)
注意:如果您想构建自定义版本,请打开一个Issue,然后从 Github Actions 下载 Artifact。请访问定制构建了解更多信息。
- 检查下载文件的完整性
- 按键盘上的 Win + X,然后根据您运行的 Windows™ 版本选择 Windows™ Terminal (Admin) 或 Powershell (Admin)
- 输入以下命令并按回车键,将 {X:\path\to\your\downloaded\archive\package} 包括 {} 替换为下载的存档包的路径
- cd “{X:\path\to\your\downloaded\archive\package}”
- 输入以下命令并回车,替换WSA_2XXX.XXXXX.X.X_XXXX_Release-with-magisk-XXXXXXX-XXXXXX-MindTheGapps-XX.X为压缩包名称
- certutil -hashfile “WSA_2XXX.XXXXX.X.X_XXXX_Release-with-magisk-XXXXXXX-XXXXXX-MindTheGapps-XX.X” SHA256
- 将 SHA256 输出与发布页面或 sha256-checksum.txt 中的输出进行比较(如果您从自定义构建任务下载工件)。
- 注意:如果软件包没有相同的 SHA-256 哈希值,请下载并再次检查。不要安装!
- 提取 zip 文件
- 删除 zip 文件
- 将新提取的文件夹移动到合适的位置并重命名(推荐),因为您需要将该文件夹保留在电脑上才能使用 WSAOnWin10
注意:
如果您要更新 WSA,请在询问时合并文件夹并替换所有项目的文件。请访问更新说明以获取更多信息。
- 打开 Windows Subsystem For Android™ 文件夹:搜索并双击Run.bat
- 如果您之前安装过 MagiskOnWSA,它会自动卸载之前的版本,同时保留所有用户数据并安装新的版本,因此不必担心您的数据。
- 如果弹出窗口在未请求管理权限的情况下消失并且 Windows Subsystem For Android™ 未成功安装,您应该以管理员身份手动运行 Install.ps1:
- 按Win+X并选择Windows™ 终端(管理员)
- 输入以下命令并按 Enter 键,将 {X:\path\to\your\extracted\folder}(包括 {})替换为解压文件夹的路径cd “{X:\path\to\your\extracted\folder}”
- 输入下面的命令并按回车键PowerShell.exe -ExecutionPolicy Bypass -File .\Install.ps1
- 该脚本将运行并安装 Windows Subsystem For Android™
- 如果此解决方法不起作用,则您的电脑不支持 WSA
- 安装过程完成后,Windows Subsystem For Android™ 将启动(如果这是首次安装,则会显示一个请求同意诊断信息的窗口。有时会显示两个相同的窗口,这很好,不会发生任何不良情况如果您在两个窗口中单击“确定”)
- 单击 PowerShell 窗口,然后按键盘上的任意键,PowerShell 窗口应该关闭
- 关闭文件资源管理器
- 享受
注意(适用于 Windows 10 和 11):
- 您无法删除 Windows Subsystem For Android™ 安装文件夹。作用Add-AppxPackage -Register .\AppxManifest.xml是使用一些现有的未打包文件注册 appx 包,因此只要您想使用 Windows Subsystem For Android™,就需要保留它们。检查https://learn.microsoft.com/en-us/powershell/module/appx/add-appxpackage?view=windowsserver2022-ps了解更多详细信息。
- 您需要先注册 Windows Subsystem For Android™ appx 包,然后才能运行 Windows Subsystem For Android™。对于WSAOnWin10和MagiskOnWSALocal用户,您需要Run.bat在提取的目录中运行。如果脚本失败,可以采取以下步骤进行诊断(需要管理员权限):
- 打开 PowerShell 窗口并将工作目录更改为 Windows Subsystem For Android™ 目录。
- 在 PowerShell 中运行以下命令。这应该会失败并显示 ActivityID,这是下一步所需的 UUID。Add-AppxPackage -ForceApplicationShutdown -ForceUpdateFromAnyVersion -Register .\AppxManifest.xml
- 在 PowerShell 中运行以下命令。这应该打印失败操作的日志。Get-AppPackageLog -ActivityID
- 检查日志,找出失败原因并修复。
更新中
如何在不丢失 Windows Subsystem for Android (WSA) 上的任何应用程序和数据的情况下进行更新
- 下载您想要更新到的版本
- 确保 Android 的 Windows 子系统未运行(单击 WSA 设置中的“关闭”并等待旋转加载程序消失)
- 使用 7-Zip、WinRAR 或任何其他选择的工具,打开 .zip 文件
- 在 .zip 存档中打开子文件夹(示例:WSA_2XXX.XXXXX.X.X_XXXX_Release-with-magisk-XXXXXXX-XXXXXX-MindTheGapps-XX.X)
- 选择此子文件夹中的所有文件,并将它们解压到 Windows Subsystem For Android 文件所在的当前文件夹(您从中解压并安装 WSA 的文件夹)
- 当提示替换文件夹时,选择“对所有当前项目执行此操作”,然后单击“是”
- 当提示替换文件时,单击“替换目标中的文件”
- 运行Run.bat文件
- About启动 Windows Subsystem For Android 设置应用程序并使用侧边栏转到选项卡
- 检查 WSA 版本是否与最新版本/您要更新到的版本号匹配
卸载
注意:
如果您想保留数据,请备份该%LOCALAPPDATA%\Packages\MicrosoftCorporationII.WindowsSubsystemForAndroid_8wekyb3d8bbwe\LocalCache\userdata.vhdx文件。卸载后,将VHDX文件复制回该%LOCALAPPDATA%\Package\MicrosoftCorporationII.WindowsSubsystemForAndroid_8wekyb3d8bbwe\LocalCache文件夹。
如需更全面、更详细的指南,请查看此自述文件中的备份和恢复部分
- 要删除已安装的 WSA:
- **1.)**确保 Windows Subsystem For Android™ 未运行
- **2.)**Windows Subsystem For Android™ Settings使用内置的 Windows 搜索进行搜索,或通过添加和删除程序进行搜索,然后按卸载
- **3.)**删除您解压并运行 Run.bat 以安装 WSA 的 WSA 文件夹(MagiskOnWSA 文件夹)
- **4.)**转到%LOCALAPPDATA%/Packages/并删除名为的文件夹MicrosoftCorporationII.WindowsSubsystemForAndroid_8wekyb3d8bbwe
- 如果您收到一条错误消息,指出无法删除文件,请确保 WSA 已关闭
- 要从 Microsoft Store 中删除安装的 WSA:
- **1.)**Windows Subsystem For Android™ Settings使用内置的 Windows 搜索进行搜索,或通过“添加和删除程序”进行搜索,然后按卸载
备份和恢复用户数据
备份您的用户数据
为了备份您的 WSA 数据,您必须将位于 的 Userdata.vhdx(包括但不限于 Android 应用程序及其数据、设置等)复制到安全%LOCALAPPDATA%\Packages\MicrosoftCorporationII.WindowsSubsystemForAndroid_8wekyb3d8bbwe\LocalCache\userdata.vhdx位置
恢复您的备份
在尝试恢复备份之前,您必须删除 WSA(如果已安装)。然后,在运行“Run.bat”脚本(在删除 WSA 后重新安装 WSA)之前,您需要从 Install.ps1 中删除这些行:
Start-Process “wsa://com.topjohnwu.magisk” Start-Process “wsa://com.android.vending” Start-Process “wsa://com.amazon.venezia” Start-Process “wsa://com.android.settings”
运行脚本后,根本不要运行 WSA,然后转到%localappdata%\Packages和(如果文件夹不存在,请创建它们)MicrosoftCorporationII.WindowsSubsystemForAndroid_8wekyb3d8bbwe\LocalCache\粘贴userdata.vhdx
现在运行 WSA,您的 Serdata 应该会恢复
定制建造
❗重要: ⚠️DO NOT FORK⚠️ |
---|
该存储库专门设计为不可分叉。由于滥用 GitHub Actions ,MagiskOnWSA 以及该平台上出现的一些(_可能_)各种分支和克隆违反了 GitHub 的服务条款,并最终被警告、禁用或禁止。 |
因此,除非您是开发人员并且想要修改代码本身和/或想要为此 Github 存储库做出贡献,否则不要分叉此存储库。 |
如果您想创建自定义构建,请按照明确的说明进行操作,以避免由于大量分叉而误用 Github Actions 导致存储库被删除。另外,如果您想使用最新的 Insider 版本进行构建,请跳过前 7 个步骤 |
1. 首先从Releases中查看版本。如果没有您想要的版本,请继续遵循本指南。如果是这样,那么请随意使用那些预构建的 WSA 版本
2. 直接打开此页面,然后选择您要构建的选项。然后单击“提交新问题”(绿色按钮)并等待。
3. 大约20分钟后,机器人会回复工作流程已成功构建(如下图),打开机器人评论下方的链接
4.下载包作为工件
不要通过 IDM 等多线程下载器下载
[]
5. 使用此存储库中的说明像平常一样安装
如何上传icu.dllWindowswinhttp.dll11 图像
icu.dll而winhttp.dll在Windows 11中镜像是WSA在Windows 10上运行的关键,因为有些函数在Windows 10镜像中并不存在上述dll文件。此存储库提供的所有构建都已包含上述 dll 文件以及“WSAPatch.dll”,因此如果您只是使用此存储库提供的构建,则可以忽略此部分
该存储库使用 Issues 和 Github Actions 自动获取 Windows 11 映像中的 dll 文件并注入“WSAPatch.dll”。访问此链接可查看存储库中已有的 dll 文件。如果您想提交更新的 dll 文件,请按照以下步骤操作
笔记
请不要随意上传dll文件,并正确填写信息
1. 访问此链接,然后根据图片填写信息。如果您确定所填写的信息,请选中“上传”复选框;如果您不确定,请不要选中“上传”复选框。然后单击“提交新问题”(绿色按钮)并等待。
[]
2. 大约5分钟后,机器人会回复下载成功(如下图),打开机器人评论下方的链接查看日志。Artifacts中的文件是获取的dll文件
[]
3. 如果您选择了“上传”复选框,Github Actions 将自动上传获取的 dll 文件。如果没有,可以查看日志和获取的dll文件,然后根据情况重复上述步骤
如果您无法提供 Windows 11 映像的链接,请手动获取icu.dll并winhttp.dll打开拉取请求。
常问问题
帮助我,我在使用 MagiskOnWSA 构建时遇到问题
- 在 Github 中打开一个问题并足够详细地描述该问题
请帮助我,我在 Windows™ 10 上安装适用于 Android™ 的 Windows 子系统时遇到问题
- 我没有开发该补丁,也没有声称这样做。在 Github 中提出问题,如果可能的话,我会尽力帮助您解决问题。如需全面支持,请访问项目主页并在那里打开问题
我如何获得 logcat?
有两种方法:
1
adb logcat
或者
在 Windows 中的位置 —>
%LOCALAPPDATA%\Packages\MicrosoftCorporationII.WindowsSubsystemForAndroid_8wekyb3d8bbwe\LocalState\diagnostics\logcat
我可以删除已安装的文件夹吗?
- 不。
如何将 Windows Subsystem For Android™ 更新到新版本?
- 正如更新说明中所解释的。下载您想要更新的Windows Subsystem For Android™ 版本Install.ps1并替换之前安装的内容并重新运行。别担心,您的数据将被保留。
如何更新 Magisk?
- 执行与更新 Windows Subsystem For Android™ 相同的操作。等待包含较新 Magisk 版本的新MagiskOnWSA 版本,然后按照更新说明进行更新。
我可以通过 SafetyNet/Play Integrity 吗?
- 不可以。由于缺乏 Google 签名,像 Windows Subsystem For Android™ 这样的虚拟机无法自行通过这些机制。通过需要更奇特的(且未经测试的)解决方案,例如:kdrag0n/safetynet-fix#145(评论)
什么是虚拟化?
- 运行 Windows Subsystem For Android™ 等虚拟机需要虚拟化。 Run.bat帮助您启用它。重新启动后,重新运行Run.bat以安装 Windows Subsystem For Android™。如果仍然无法正常工作,您必须在 BIOS/UEFI 中启用虚拟化。说明因 PC 供应商而异,请在线寻求帮助。
我可以将系统分区重新挂载为可读写吗?
- 不会。Windows Subsystem For Android™ 由 Hyper-V 以只读方式安装。system.img但是,您可以通过创建 Magisk 模块或直接修改文件来修改系统分区。
我无法 adb 连接 localhost:58526
- 确保开发者模式已启用。如果问题仍然存在,请在设置 —> 开发者页面上检查 Windows Subsystem For Android™ 的 IP 地址并尝试。Magisk在线模块列表为空?
1
adb connect ip:5555
- Magisk 主动删除在线模块存储库。您可以在本地安装该模块,也可以通过步骤1第2步
1
adb push module.zip /data/local/tmp
如何卸载 Magisk?1
adb shell su -c magisk --install-module /data/local/tmp/module.zip
- 使用问题从发布页面
请求不包含 Magisk 的 Windows Subsystem For Android™ 版本。然后按照更新说明进行操作
如何安装KernelSU管理器?
- 使用 ADB 连接到 WSA。
- 运行以下命令:adb shell ksuinstall
- 如果安装成功完成,KernelSU Manager 将启动。
制作人员
- Microsoft:用于提供 Windows Subsystem For Android™ 和相关文件。Windows Subsystem For Android™、Windows Subsystem For Android™ 徽标、Windows™ 10 和 Windows™ 11 徽标是 Microsoft Corporation 的商标。微软公司保留对这些商标的所有权利。下载并安装 Windows Subsystem For Android™ 即表示您同意条款和条件以及隐私政策
- Cinit 和 WSAPatch 指南:非常感谢 Cinit 和 WSAPatch 存储库的贡献者提供的全面指南、文件和支持。此存储库中的 Windows™ 10 构建依赖于该项目的辛勤工作,因此在适当的时候给予了信任
- StoreLib:用于下载 WSA 的 API
- Magisk:Android 版魔法面具
- KernelSU:基于内核的 Android 根解决方案
- MagiskOnWSALocal:将 Magisk root 和 Google Apps 集成到 WSA 中
- WSA-Script:使用 GitHub Actions 将 Magisk root 和 Google Apps 集成到 WSA(适用于 Android 的 Windows 子系统)中
该存储库作为实用程序提供。
Android 是 Google LLC 的商标。Windows™ 是 Microsoft LLC 的商标。