工具用的順手嗎?
你的回饋能幫助我們做得更好
從 APK、DEX、AAB、AAR 與常見分割套件中擷取可讀程式碼和應用程式資源。
點選檔案拖放檔案到此處,或點擊選擇
.apk · .xapk · .aab · .aar · .apks · .apkm · .dex
最大 10 MB
上傳上限:訪客 10 MB,一般會員 20 MB,進階會員 50 MB,專業會員 50 MB。
概覽
了解工具能解決的問題、計算或處理邏輯,以及資料邊界。
Android 安裝套件包含供執行階段使用的位元組碼、資源和資訊清單等內容。APK 常用於安裝;AAB 是後續產生裝置適用 APK 的發布格式;AAR 通常是供 Android 專案引用的程式庫套件;DEX 則儲存 Dalvik/ART 可執行程式碼。分割套件可能會分開儲存基礎套件和裝置設定資源。上傳後,處理結果會將可讀的 Java 風格程式碼及可辨識的套件內檔案整理為 ZIP。
反編譯程式碼是從位元組碼重建的近似結果。Kotlin 編譯產物可能呈現為 Java 風格結構,協程、行內函式及編譯器產生的程式碼會與原始 Kotlin 寫法不同。R8 或 ProGuard 混淆會縮短類別名稱和方法名稱;資源名稱、註解及原始專案的模組劃分也可能已遺失。
應用程式套件還可能包含二進位資訊清單、圖片、版面配置、文字、設定和原生程式庫。ZIP 中的目錄結構有助於辨識這些內容,但不代表完整的 Android Studio 專案。若 APK 含有 Unity Mono 組件,處理結果會嘗試另外匯出部分 C#;若使用 IL2CPP,則無法從原生機器碼還原 C# 原始碼。
指南
依步驟完成操作,並透過範例核對輸入與結果。
準備一個不超過 5 MB,且你有權檢查的 .apk、.dex、.aab、.aar、.xapk、.apkm 或 .apks 檔案。
上傳後即可開始處理。若檔案來自應用程式商店的分割套件下載,請盡量使用包含基礎套件和必要設定的完整封存檔;若只有單一 split,缺少類別或資源可能是正常現象。
處理完成後,先在結果清單中檢查資訊清單、套件內目錄和部分程式碼檔案,再下載 ZIP。搜尋類別名稱或字串時,請注意混淆後的名稱可能已無法對應原始命名。
需要釐清某項行為時,請一併核對進入點元件、呼叫鏈、資源參照和權限宣告;不要只憑某個類別名稱推斷應用程式行為。
大型相依套件或高複雜度樣本可能逾時或產生大量輸出。若處理失敗,請先確認輸入檔案未損毀,再嘗試較小的單一 DEX、APK 或更完整的分割套件組合。
情境
查看這項工具在不同工作與生活流程中的用法。
檢查 manifest、權限宣告、資源路徑和最終封裝內容,確認發布套件與預期建置結果一致。
從 DEX、資訊清單和資源中尋找元件註冊、版本行為或設定差異的線索,再回到專案和裝置記錄進行驗證。
靜態檢視已獲准測試的應用程式套件,記錄可重現的證據,並與執行階段的觀察結果交叉驗證。
擷取資源和閱讀程式碼不等同於完整的安全掃描,也無法證明應用程式沒有隱藏行為。
問答
集中解答常見疑問與容易混淆的問題。
不行。此處僅用於讀取封存檔中的位元組碼和資源,不會執行裝置專用分割、簽署或產生新的安裝套件。
不一定。位元組碼通常會重建為 Java 風格原始碼,協程、行內函式和編譯器產生的結構可能與原始 Kotlin 專案有很大差異。
上傳的 split 可能只包含特定裝置設定。若未包含基礎套件、其他設定套件或動態傳送資源,匯出內容自然會不完整。
須知
使用前了解適用範圍、結果限制與必要提醒。
僅分析自有或已獲授權的應用程式套件。下載或反編譯他人軟體不會改變其著作權、授權條款或服務條款,也不代表你獲准複製、修改、重新發布或規避存取限制。
APK 可能包含帳號識別資訊、應用程式服務位址、憑證、公開金鑰、測試資料或尚未公開的商業邏輯。此工具會將所選檔案傳送至伺服器處理;請勿上傳含有個人資料、真實使用者資料、金鑰或公司機密的套件。暫存工作目錄會在工作結束後清除,下載結果仍須自行妥善保管。
最佳化、混淆、壓縮、加殼、封存檔損毀及缺少 split,都可能造成內容缺漏或名稱失真。靜態讀取無法確認某段程式碼在執行階段一定會執行,也不能取代裝置隔離、動態測試和原始專案核對。APK 中的 Unity C# 匯出僅適用於部分 Mono 組件;IL2CPP 輸出為原生程式碼,無法直接轉換回原始 C# 專案。
推薦
查找相關工具、專題與可用的 API 能力。