TechMoon 科技月球
WordPress、SEO 與 AI 工具實測指南
TechMoon 科技月球
WordPress、SEO 與 AI 工具實測指南

Mac.apk 是 2026 年 10 月公開的開源相容層,把 Android App 直接跑成 Mac 視窗程式:ARM 原生直跑、Metal 繪圖、免模擬器。本文從簽章驗證與 71 款實測相容表,拆解它的技術路線、沒有沙箱的安全模型,以及 Google 服務的誠實邊界。
用 AI 摘要這篇文章:
想在 Mac 上開一個 Android App,傳統路徑是裝一套安卓模擬器:先讓一台「虛擬手機」在背景開機,吃掉幾 GB 記憶體,你要的 App 才在裡面跑起來,視窗裡還有一條手機狀態列陪著你。2026 年 10 月初公開的開源專案 Mac.apk 走了另一條路:不下載模擬器、不開虛擬機,APK 檔點兩下,App 就以一個普通 Mac 視窗的形式出現在 Dock 裡,有自己的縮放、有自己的深色模式,看起來跟原生軟體沒有兩樣。
這條路線叫相容層,概念上跟 Linux 上跑 Windows 程式的 Wine 是同一族。我這次沒有實際把 App 跑起來,做的是把最新版安裝映像抓下來、驗證它的簽章與蘋果公證、拆開看內容物,並逐頁核對它的文件與相容性清單。先講結論:技術路線是真的、工程態度罕見地誠實,但它用一個很大的東西換來了原生體驗,那個東西叫沙箱,而且它只支援 Apple Silicon 的 Mac。
兩條路線的差異值得先講清楚,因為它決定了你機器上實際發生什麼事。
模擬器的思路是「模擬一整台手機」:背景跑一個完整的 Android 系統,你的 App 住在裡面,隔著一層虛擬化硬體跟 Mac 溝通。好處是隔離完整,App 看到的就是一台手機;代價是資源開銷大、啟動慢,而且你操作的是模擬器裡的螢幕,App 並不真的活在 macOS 裡。
Mac.apk 的思路是「缺什麼補什麼」。按照官方文件的說明,一支 Android App 大致由三種東西組成,它對每種各有對策。Java 與 Kotlin 寫的程式碼,第一次執行時被轉換成標準 Java 位元碼,跑在它內嵌的 OpenJDK 21 上,這也是首次啟動特別慢的原因,之後就快了;App 裡的 64 位元 ARM 原生程式碼,因為 Apple Silicon 本身就是 64 位元 ARM 處理器,直接原樣執行,32 位元的部分則事先重編成 64 位元再跑。至於 App 依賴的 Android 系統框架,Mac.apk 自己重新實作了一套對齊 AOSP 開放原始碼行為的版本,視窗就是 Mac 視窗、剪貼簿就是 Mac 剪貼簿、位置資訊來自 macOS 的定位服務。繪圖方面,Android 常見的 OpenGL ES 走 ANGLE、Vulkan 走 MoltenVK,最後都落在蘋果的 Metal 上,由你的 GPU 直接畫。
這中間沒有 Linux 核心,沒有系統呼叫的即時翻譯,也沒有逐條指令的直譯。官方把自己類比成 Wine、Proton 那一族,就工程分類來說是準確的。
安裝進來的每個 App 會被包成自己的 Mac 應用程式,APK、原生函式庫、轉換過的程式碼與存檔都收在裡面;它的資料則放在家目錄函式庫下的專屬資料夾,依套件名分家。這帶來兩個實際後果:把 App 拖進垃圾桶會留下孤兒資料,要走它視窗裡的解除安裝才清得乾淨,而那份存檔在解除安裝時可以保留,重裝回來遊戲進度還在。細節如遊戲控制器走 macOS 原生的支援、鍵盤方向鍵可以當方向盤用,都看得出它是朝「像個 Mac 軟體」而不是「像台手機」去設計的。
這個專案另一個讓我願意認真對待的地方,是它的安裝包經得起檢驗。我下載了 2026 年 10 月 20 日發行的 v1.0.2279 安裝映像,約 105 MB,掛載後檢查簽章:應用程式由開發者 Kaleb Simpson 的 Developer ID 簽名,通過蘋果公證,系統判定來源為 Notarized Developer ID。換句話說,它是走完蘋果正規管道的軟體,打開時不會跳未驗證開發者的警告。
映像裡的 App 本體約 147 MB,內容物與文件宣稱一致:內嵌的 OpenJDK 執行環境、ANGLE 與 MoltenVK 的繪圖函式庫,以及一份逐項列出的第三方授權聲明檔,連 LGPL 授權的 GLib 元件都把對應版本的完整原始碼附在每個發行版裡供人取用,這是授權潔癖等級的作法。App 第一次使用時還要再安裝一份執行環境,官方給的整體磁碟數字約 280 MB,每個安裝進來的 App 大約佔 APK 檔的 1.5 到 3 倍空間。
系統要求要留意:macOS 26.4 以上、Apple Silicon 限定,Intel Mac 明確不支援。它認得的安裝檔格式倒是齊全,.apk、.apkm、.xapk、.apks、.apkx 都吃。
上手的流程是四步:把 App 拖進應用程式資料夾、打開後在左上角點一下安裝執行環境、到設定裡把檔案類型關聯設成預設,之後任何 APK 檔點兩下就進安裝。首次啟動每個 App 都要等上一段時間,大的可能接近一分鐘,那是它在做 DEX 轉換,之後的開啟就是正常速度。把這段等待想成一次性的翻譯費,心裡會平衡一些。
Alpha 階段的工具最怕「理論上能跑」,這個專案的回答是一份手工實測的相容清單,更新日期就是今天:71 款 App 逐一試過,58 款可用、10 款部分可用、3 款還不行。清單不是點綴,每款都附版本號與狀態,問題款另有具體的備註說明。

可用的名單頗有看頭。Minecraft 能開多人連線還能 Xbox 登入;Among Us、Candy Crush、Geometry Dash Lite 這類遊戲直接過關;Asphalt Legends 靠 Vulkan 跑起來,傾斜操控也能用;Metrolist 這個 YouTube Music 第三方客戶端不只 Google 登入成功,播放狀態還會進 macOS 的「現在播放」介面。F-Droid 與 Aurora Store 兩個應用商店本身也能裝能跑,Epic Games Store 甚至能裝下 Rocket League Sideswipe。
卡住的同樣有名有姓,而且備註誠實到有點礙眼。Instagram 版面錯亂、影片播放不順;Duolingo 無法註冊新帳號也登不進去;Efteling 主題樂園 App 停在歡迎畫面、相簿類的 Gallery 卡在檔案權限;兩因素認證器 Aegis 因為相機不能用而只能部分運作;拿 AnkiDroid 背單字的人會遇到部分畫面的顯示瑕疵。清單裡還看得到同一款遊戲不同版本的命運差異,Hill Climb Racing 的新版能跑,前一版卻是開機就崩潰,這是相容層路線的日常:修好一款,下一版更新可能又要有新功課。開著的問題清單則集中在另一個方向,觸控板的手勢細節、滑鼠懸停事件、標準使用者的安裝權限,都是把 Android 觸控經驗對接 Mac 輸入裝置的收尾工程。對台灣使用者還有一條值得盯著:目前有開著的問題回報指出 Flutter 架構的 App 中文字會顯示成缺字的方框,遇到豆腐字的機率是真實的,這條修好之前,重度中文 App 先降低期待。

多數工具對自己最大的弱點輕描淡寫,這個專案把它一字不含糊地寫進 README 的免責聲明,這是我說它誠實的原因。原文的意思很直白:在 Mac.apk 上跑的 Android App,就是以你這個使用者帳號的權限在執行的普通程式碼,身邊沒有手機那種應用程式沙箱;它讀寫檔案的能力,跟你手動下載執行的任何 Mac 軟體一樣大。文件甚至進一步說明,Android 的權限提示只能約束 App 的 Java 程式碼,帶原生碼的 App 可以不經提示就讀共享資料夾。結論只有一句:只安裝你信任的 APK。
信任邊界還在,只是換了位置。檔案面向上,App 之間有共享儲存區,而這個共享區裡的圖片、影片、音樂、下載、文件五個資料夾,預設直接映射到你 Mac 上真實的個人資料夾,也就是說 Android App 存的圖會出現在 Finder 裡;介意的人可以在設定裡關掉映射,App 會改用 Mac.apk 共享區裡的普通資料夾,App 之間仍然共用,但碰不到你 Mac 上的個人資料夾。照片圖庫的存取是唯讀的,App 看得到、動不了。權限走兩層,Android 先問一次,macOS 自己再問一次,後者照樣保護你的文件、下載與桌面;定位也是雙層設計,App 問完 Mac.apk 還會再問一次系統層,事後都能在系統設定的隱私頁關掉。麥克風有一個環境變數可以整個關掉,連問都不問。而任何 App 的安裝與移除,一律要過 Touch ID 或密碼確認,這道閘門放在 Android App 動不到的系統層,而且不能關。
所以正確的理解是:它沒有取消安全機制,它把「要不要信任」的決定從系統手上交還給你。這對只裝 F-Droid 開源 App 的人是合理交換,對習慣隨手抓 APK 的人是每天都要清醒一次的提醒。
Android App 繞不開 Google 服務,這個專案的處理方式一樣是攤開來講。
它自己實作了 Google Play Services 裡最常用的部分,但對 App 誠實表明自己是 Mac.apk 裝置,不假裝是 Google 認證的手機。後果寫得一清二楚:靠 Google 帳號按鈕登入的 App,多數能用(先把 Google 帳號加進它的帳號管理,App 的「繼續用 Google」就會帶你選帳號),但有些 App 堅持要 Google 自己簽名的服務框架,那些 App 的 Google 按鈕就會按了沒反應,文件直接點名 Reddit 是其中之一,請你改用信箱登入。
授權這塊的處理最見品格。當 App 檢查你有沒有在 Google Play 買過它,Mac.apk 用你自己的 Google 帳號去問 Google 伺服器,把 Google 簽名過的答案原封不動轉交給 App,自己不偽造、不破解。沒買過就是驗不過,跟真手機一樣。付費與否也一樣乾脆:應用內購買整個不支援,團隊立場是這套工具不服務廣告與消費,開發者如果不希望自己的 App 在上面跑,寫信來就會被尊重。要從 Google Play 目錄拿 App,文件指引你裝開源的 Aurora Store,並提醒要先在裡面把裝置設定檔設成 Pixel Tablet、重新登入才拿得到對應晶片版本的安裝包。
登入這個環節也有值得一提的設計。多數 App 的網頁式登入會開在一個 Mac.apk 自己的小視窗裡,登完自動關閉回到 App;但 Google 帳號的登入一律開在你真正的瀏覽器裡,因為 Google 不允許它的登入頁被包在應用程式自帶的視窗中。順帶一提那個小視窗不認得你瀏覽器記住的密碼與通行金鑰,密碼得自己打,這對安全是好事,對懶人是小小的稅。
時間軸本身是重要資訊。這個倉庫 2026 年 5 月就建立了,但首次對外公開發行是 10 月 2 日,到今天正好十八天,已經出了六個發行版,最新一版今天稍早剛推上來,星數已經突破 1,200。全部程式碼都在同一個倉庫裡開源,AGPL-3.0 授權,想把它包進閉源產品的商業授權另外談。背後是單一開發者 Kaleb Simpson 與 Voltare 這個名義,連 DEX 轉 Java 的轉換器都拆成獨立的 Apache 授權專案另行公開。版號也透露了工作節奏:十八天內六個公開發行版,版號尾數已經從 1666 走到 2279,每次都帶著完整的第三方聲明與 LGPL 原始碼附件。這種更新密度下,今天寫的相容表明天就可能翻頁,使用的心理準備是把它當一列快車,而不是一座蓋好的房子;也因為它還在 alpha,別把它當成唯一的工作環境,重要 App 留著退路。
適合上車的人很明確:Apple Silicon 的 Mac、想跑的 App 在相容清單上是綠字、來源是 F-Droid 或你信得過的管道,而且你理解自己在裝的是以你權限執行的原生程式。這三個條件同時成立,它比模擬器輕太多,體驗也原生太多。最典型的場景是那種「手機上有、Mac 上就是沒有」的小工具:一台 Android 平板上的小遊戲、一個只有行動版的服務,以前你得為它開一整台虛擬手機,現在它就是 Dock 裡的一個圖示,存的圖會直接進你的圖片資料夾。
先留在月台的人也一樣明確:需要完整穩定 Android 環境的人,模擬器目前還是省心的選擇;App 依賴 Google 登入或應用內購買的人,先查相容表的備註欄;中文 Flutter App 的重度使用者,等缺字問題修復再說。而「在 Mac 上跑一個隔離系統」這個需求,本來就有更對口的工具,想跑完整 Linux 或舊版 macOS 的人可以看我先前介紹過的開源虛擬機工具 VirtualBuddy,兩者的安全模型是不同世代的設計。
它是安卓模擬器嗎? 不是。它不在背景跑 Android 系統,也不用虛擬機,直接在 macOS 上補出 App 需要的執行環境,跟 Wine 跑 Windows 程式是同一類做法。App 會變成一般的 Mac 視窗程式。
Intel Mac 能用嗎? 不能,明確只支援 Apple Silicon,且需要 macOS 26.4 以上。
能裝 Google Play 商店嗎? Google Play 本體沒有,但開源的 Aurora Store 可以裝,它連的是同一個目錄;文件提醒要把裝置設定檔設成 Pixel Tablet 並重新登入。F-Droid 與 Epic Games Store 也能用。
安全嗎? 軟體本身經過蘋果簽名與公證,我親自驗證過。風險模型在於它執行的 Android App 沒有手機級沙箱,以你的使用者權限跑,等於你親手執行的任何 Mac 程式,所以來源不明的 APK 不要裝。
把模擬器換成相容層,省下來的是記憶體與開機時間,換出去的是系統替你把關的那道牆。Mac.apk 最難得的地方,在於它對這筆交易毫不含糊:沒有沙箱講在前面、Google 服務的極限列成表格、付費功能直接不碰、連不要假裝是認證手機這種細節都寫進文件。這種把限制當產品文件來寫的態度,在 alpha 軟體裡少見,值得你在下載前把那頁免責聲明讀完。清單是綠字、來源你信得過、Mac 是 Apple Silicon,三關都過,它就是目前最輕的一條路。對 Android 生態的其他開源工具好奇的人,把手機畫面收進可搜尋歷史的 SnapSeek與在背景替你操作手機的 OpenCyvis是兩個可以順路看看的鄰居。