Waydroid + postmarketOS使用教學,Linux執行Android APP

Waydroid可以在x86的Linux電腦跑Android APP,且宿主機的3D圖形功能正常的話,Android遊戲也能正常執行。

若平台是ARM架構就更簡單了,Linux手機的處理器大部分是ARM架構,沒有轉譯問題,於是Waydroid讓Linux系統的手機也能執行Android程式。

示範影片看這部:


  • 系統: postmarketOS
  • 桌面環境: Phosh (顯示協定為Wayland)
  • Waydroid映像檔版本:LineageOS 18.1 (Android 11)

1. 安裝Waydroid

  1. 依序執行以下指令,在postmarketOS安裝Waydroid。
1
2
3
4
sudo apk add waydroid iptables dnsmasq
sudo rc-service cgroups start
sudo rc-update add cgroups
sudo rc-service waydroid-container start
  1. 初始化Waydroid,下載Android 11的映像檔
1
sudo waydroidi init -f -s GAPPS
  1. 設定開機自動讓Waydroid通過防火牆,並自動啟動Waydroid容器,再重開機。
1
2
3
4
5
6
sudo echo 'echo "ip route add default via 192.168.250.1" | sudo waydroid shell' >> /etc/local.d/waydroidnetwork.start
sudo chmod +x etc/local.d/waydroidnetwork.start
sudo rc-update add local

sudo rc-update add waydroid-container
sudo reboot
  1. 點選桌面的Waydroid圖示就會進入主畫面。接著Android APP圖示會出現在Linux桌面上,如圖。

2. Waydroid的操作邏輯

  1. 確認Waydroid啟動後,點選Linux桌面的程式圖示就能開啟Android程式,例如「計算機」

  2. 但此時如果點選Android的「首頁鍵」,則會直接退回到Linux的桌面。

  3. 如果要進入好像在使用Android手機的狀態,請點選"Waydroid"的圖示,這樣它就會開啟Android的桌面。或者使用以下指令顯示:

1
waydroid show-full-ui
  1. Waydroid的3D圖形正常的話,甚至能玩遊戲,Google框架已經內建,你只要使用指令稿驗證裝置就行。
  1. 要將Waydroid「關機」只要停止服務即可:
1
sudo rc-service waydroid-container stop

3. 其他小問題

如何避免Android APP的圖示出現在Linux桌面上

Waydroid的Android應用圖示位於~/.local/share/applications/,全部都以"waydroid"開頭。

刪除桌面圖示用以下指令,但下次Waydroid啟動這些圖示又會長回來。

1
rm ~/.local/share/applications/waydroid.*

點選Waydroid圖示,Android桌面的版面跑掉

狀況:在Linux桌面環境為Phosh的情況下,有時候點選Waydroid圖示,桌面會變成切一半,有時候會大小錯誤。

可能的解決法:手機重開機。

Waydroid開機後還是沒有網路

在開啟Android應用程式後,手動在終端機執行以下指令:

1
2
3
echo "ip route add default via 192.168.250.1" | sudo waydroid shell
#或者改用這個
sudo apk add waydroid-nftables

無法調整音量

手機實體鍵無法控制Android容器內的音量,所以得另外安裝調整音量的APP。

另外,Waydroid偶爾會有有音效不同步的問題。

4.延伸閱讀


感謝您的閱讀。歡迎分享Ivon的部落格(ivonblog.com)的文章,引用或轉載請註明文章網址,並遵守創用CC-姓名標示-非商業性-禁止改作 4.0 國際授權條款。如需商業使用請來信告之。

written by human, not by AI

如果本網站文章對您有幫助,歡迎請我喝杯珍珠奶茶。

留言板

點選按鈕,選擇您覺得方便的留言系統。要討論程式碼請用Giscus,匿名討論請用Disqus。

這是Giscus留言板,需要登入Github帳號才能留言。支援markdown語法,方便您張貼程式碼,若要上傳圖片請貼Imgur連結。您的留言會在Github Discussions向所有人公開。

這是Disqus留言板,您可能會看到Disqus投放的廣告。無論有無登入皆可留言。此處留言只有本站參與者看得到。若您選擇以訪客身份匿名留言,就不會收到後續回覆通知。