儲存庫:
https://github.com/WSA-Community/WSAGAScript
翻譯版本:
f9d6b42
(2021/12/2)
首次嘗試翻譯,不一定精確流暢。
微軟在Windows 11中推出子系統Android,至目前翻譯時(2021/12/09)為止,還只有在美國的測試員通道有在Microsoft Store中提供。
但WSA中微軟只有跟Amazon合作,裡面的應用程式商店只有Amazon Store,而非大家常用的Google Play,其中選擇非常少,ADeltaX在幾天後就找到方法來在WSA中安裝Google GApps框架,就是此專案。
這個專案會經常不照時程的更新。
現在這個README可能不會完全的清楚,將會盡速修復。
至於潛在問題,請發起討論(Discussions)來取代問題(Issues)。
只有在有實際的問題在阻礙著你使用這個專案時才需提出問題(Issues)。
當你在使用這個專案提供的工具時(例如包括但不限於腳本(Script)),視同你同意 未授權條款(Unlicence Licence) ,其中指出「軟體『按照現況』提供」(“THE SOFTWARE IS PROVIDED “AS IS”")。
對於終端使用者這是一個警告,儘管我們現在沒有任何明確的確認——這種安裝Google服務和Google Play的方式可能處於法律灰色地帶。
在這份文件(或是整個專案)中的產品、商標屬於原作者,沒有刻意侵害版權。
作為一個暫時的措施與附加資訊(特別是README還是不清楚的時候, @ADeltaX 在YouTube上提供了一個影片教學)
點擊圖片以查看影片
譯註:Windows子系統Linux原文為Windows Subsystem for Linux,縮寫為WSL。
如果你從未用過WSL,請確認以下事情:
確認你的組建最快的方式是在Windows搜尋執行winver指令,也可以透過「執行新工作」(在開始按鈕上按右鍵>「執行」)
因為Android作為作業系統的建置——我們需要的特定的修改工具只在Linux基底的作業系統上有提供。最快去存取那些工具的方法就是透過WSL。
wsl --install:這樣一來就會安裝Ubuntu 20.04 LTS於WSL(第二版)中,而且全部必要的組件需要在它是預設的情況下執行(推薦)在下載與安裝必要組件的時候,你的電腦可能會重新啟動數次。
在這之後跟著安裝精靈的指示繼續進行,如果你有任何問題,微軟提供的WSL官方文件可以幫上忙。
wsl --list --verbose確認你的WSL發行版是安裝在第二版的。Microsoft Docs: Installing WSL
Microsoft Docs: Set up and best practices
如果你在用wsl --install安裝WSL2時出了些麻煩,或是一些原因讓你接收到了WSL第一版的安裝,這個段落是給你的。
跟隨以下步驟:
wsl --shutdown以停止全部WSL相關的處理程序(如果有正在執行的話)wsl --list --verbose來取得你的安裝發佈名稱,在Ubuntu的情況下,它會像是Ubuntu-20.04。wsl --set-version <發佈名稱> 2,把發佈名稱換成你的情況。wsl --set-default-version 2。現在我們假設你使用的是預設安裝(Ubuntu),終端機指令都會針對Ubuntu版本提供。
這些指令在其他大部分的Linux發行版中也會正常運作,但可能會使用到其他的套件管理器。
請在網路上確認如何正確地安裝應用程式在你使用的發行版上。
執行以下WSL終端機(如果你不確定WSL終端機是什麼,請參考影片、微軟說明文件、或是在你的開始功能表中搜尋Ubuntu):
注意!給從未使用過Linux終端機的使用者——當你被要求輸入密碼(你在安裝WSL時設定的)時,輸入內容因為安全考量不會在終端機顯示,你必須盲打密碼並且按下Enter。
如果密碼輸入錯誤,系統會再給你兩次輸入機會,兩次之後你需要重新執行指令,並再次輸入密碼。
sudo apt update
sudo apt install unzip lzip
我們確認了更新的可用性與要求安裝兩個執行這個專案中的腳本必須要有的套件,它們可能已經在你安裝的時候已經存在,但無論如何確認一下還是比較好。
為了簡化過程,請在C槽根目錄建立一個資料夾,然後像是這樣C:\WSA。
如果你想要也可以建立在其他位置,但請確實地調整以下指令以符合新的位置。
**注意!**放置下載檔案的資料夾將會變成安裝資料夾,不要刪除那些資料夾!
注意!在這份README最後一次更新的時候,嘗試在含有空白字元的路徑下(例如D:\Zulu Storage\WSA中的「Zulu Storage」)執行將會導致錯誤,請確定在問題修正前不要使用含有空白字元的路徑。
譯註:也盡量確保路徑中只有ASCII字元,否則也有可能出現無法預期的錯誤。
提示:你也可以打開任何資料夾,即使那些位置在Linux WSL檔案系統中,輸入explorer.exe .(對,就是點)在WSL終端機中,來移動檔案到那裏。
譯註:Windows Subsystem for Android™,縮寫為WSA。
由於我們需要修改安裝檔,我們不能從Microsoft Store下載WSA,我們用這個 服務 來直接下載。
譯註:該服務是協助我們從Microsoft Store取得產品的安裝檔連結的,實際上下載的來源是官方,而非第三方儲存,請確認下載連結的對象網域是microsoft.com。
使用以下設定:
譯註:該服務左方的選單要選擇成ProductID,右方下拉選單是Ring。
點擊確認按鈕,然後找到檔案大小約為1.2GB(通常在頁面的底端)且副檔名是.misxbundle。
按下檔案名稱來開始下載,你可能會被瀏覽器警告「無法安全的下載」,請忽略警告然後強制下載(點擊類似「仍要保留」的按鈕,每種瀏覽器會有所不同)。
儲存該檔案到我們準備的資料夾C:\WSA。
譯註:有些瀏覽器(例如Chrome、Edge)在點擊連結的時候不會有反應,請對連結按下右鍵>另存連結為。
C:\WSA\MicrosoftCorporationII.WindowsSubsystemForAndroid_versionnumber_neutral___identifier\.misx檔案,用「用大小排序」來找到兩個最大的檔案。WsaPackage_1.8.32822.0_x64_Release-Nightly.msixAppxBlockMap.xml、AppxSignature.p7x、[Content_Types].xmlAppxMetadata不要關掉這個資料夾,我們會回來這裡收集*.img檔案。
要安裝Play商店,我們需要從某些地方拿到它,使用 OpenGApps 。
使用設定:
暫時儲存.zip檔案在C:\WSA\gapps-zip-file-name.zip,不要將它解壓縮。
由於我們使用C:\WSA,所以你可以用Windows檔案總管來移動檔案。
提醒:指令針對Ubuntu提供
注意!確定你可以從WSL中存取你的Windows檔案系統,你可以執行cd FolderName來變更到其他資料夾,用ls來列出你在的地方有什麼檔案與資料夾。
典型的情況下,Windows檔案系統在「/mnt/$儲存區代號」中,所以/mnt/c/Users會是你的Windows中的C:\Users
cd /mnt/c/WSA
git clone https://github.com/WSA-Community/WSAGAScript
等待指令結束運作。
在這個教學的抽取步驟(位於下載Windows Subsystem Android™安裝套件)中,我們取得了一個資料夾其中包含四個*.img檔案分別為product、system、system_ext、vendor。
移動那些檔案到C:\WSA\WSAGAScript\#IMAGES
我們也有檔案C:\WSA\gapps-zip-file-name.zip,複製這個.zip檔案到C:\WSA\WSAGAScript\#GAPPS
不要解壓縮它,只要移動檔案就好。
如果你在ARM架構的裝置上(例如Qualcomm、Snapdragon)上使用這個專案,請編輯VARIABLES.sh並更正架構,提示都在檔案中。
你應該在WSL終端機中保持在同一個目錄,如果沒有的話,用cd /mnt/c/WSA來會到那裏。
設定執行權限給腳本:
chmod +x *.sh
執行ls -l來驗證你的腳本有執行權限,你應該要看到-rwxrwxrwx在VARIABLES.sh、apply.sh、extend_and_mount_images.sh、extract_gapps_pico.sh的行首。
請確定你位於跟前一步同一個目錄,然後執行:
./extract_gapps_pico.sh
sudo ./extend_and_mount_images.sh
sudo ./apply.sh
sudo ./unmount_images.sh
在成功執行之後,你可以把映像檔從C:\WSA\WSAGAScript\#IMAGES複製回C:\WSA\MicrosoftCorporationII.WindowsSubsystemForAndroid_1.8.32822.0_neutral___8wekyb3d8bbwe\WsaPackage_1.8.32822.0_x64_Release-Nightly(只是範例,請複製回你拿出映像檔的地方)。
Add-AppxPackage -Register path-to-extracted-msix\AppxManifest.xmlpath-to-extracted-msix用「複製編輯過的映像檔」段落(右上)來替換。
譯註:如果註冊時出現錯誤訊息說Microsoft.UI.Xaml.2.6版本找不到或是有衝突,就去剛才下載WSA安裝檔的地方一併下載Microsoft.UI.Xaml2.6的appx來安裝。
WSA將會安裝帶有GApps,請登入到Play商店並安裝「Android System WebView」,否則大多數應用程式會因為沒有該組件而導致崩潰。
C:\WSA),刪除它。完成。
你可以藉由複寫核心(Kernel)來取得root權限。(在登入GApps時這個步驟已經不必要了)
從這個儲存庫(misc資料夾)複製核心檔案到你解壓縮misx資料夾中的Tools資料夾(請確保WSA沒有在運作,按下WSA設定中的Stop按鈕然後關閉設定)。
在misc中的核心檔案用它們各自的架構命名,在複製到Tools之前不要忘記重新命名核心檔案。
這樣做會允許你可以在adb shell中使用su。進入adb shell然後執行以下指令:
su
你現在就是root了。
Keyboard Shortcuts
| Command | Function |
|---|---|
| ? (Shift+/) | Bring up this help modal |
| g+h | Go to Home |
| g+p | Go to Posts |
| g+e | Open Editor page on GitHub in a new tab |
| g+s | Open Source page on GitHub in a new tab |
| r | Reload page |