Universal Installer:處理拆分 APK、OBB 檔案與靜默安裝的開源 Android 套件管理器
此專案圍繞「A modern Android app for installing and managing APK packages with split APK support, silent install via Shizuku, and VirusTotal malware scanning.」建置,聚焦實際場景的開源實作,提供可重用的工具鏈與整合方式。
秒懂
- 它是什麼?
- 本文根據倉庫 README 介紹支援的格式、Shizuku 與 root 功能、VirusTotal 整合以及 GPL-3.0-only 授權。
- 適合誰用?
- README 說明了功能集與建置流程,但沒有提供效能數據、下載統計或保固細節,這些內容不在 GPL 文字之外。 本文適合需要評估 pass-with-high-score-universal-installer-deep-analysis README 所列能力的開發者,不適合把來源摘要當成完整的生產保證;先執行專案明示的命令並核對其輸出、設定檔與限制,再決定是否納入正式流程。
- 可以商用嗎?
- 可以,但有條件。GPL-3.0 是 copyleft 授權:如果你散布包含它的軟體,就必須以同一授權公開該軟體的原始碼。只在內部執行、不對外散布,則不會觸發這項義務。
- 還在維護嗎?
- 有在維護。儲存庫最近一次提交在 5 天前。
- 用什麼語言寫的?
- 主要是 Kotlin(依據 GitHub 的語言統計)。
以上回答依據專案的 GitHub 資料(最近同步於 2026年9月14日)與我們的分析,不構成法律意見。
開源專案深度解析
pass-with-high-score-universal-installer-deep-analysis|預設安裝程式略過的格式|1
Universal Installer 是一個以 Kotlin 編寫的 Android 套件管理器。README 將其定位為處理預設安裝程式無法處理的格式:APK、APK+、APKS、XAPK 與 APKM,包括拆分 APK 與 OBB 檔案。應用程式也能從 URL 下載套件、管理已安裝的應用程式,並透過 Shizuku 或 root 支援靜默安裝。介面使用 Jetpack Compose 建構,採用 Material 3,預設橙色主題,可選擇動態色彩。倉庫中繼資料將專案語言列為 Kotlin,授權為 GPL-3.0。
pass-with-high-score-universal-installer-deep-analysis|拆分 APK 安裝與套件預覽|2
根據 README,拆分 APK 安裝透過 Ackpine 函式庫實作。你可以將多個獨立的 APK 檔案合併到一次安裝工作階段中,這適用於以多個拆分形式分發的應用程式。安裝前,底部工作表會顯示應用程式名稱、圖示、版本、套件名稱、大小、最低與目標 SDK、支援的 ABI、語言、權限、OBB 數量與拆分數量。本地選取模式有三種:自動裝置掃描、篩選支援封存類型的瀏覽,以及通用檔案瀏覽器。應用程式也能處理來自 Chrome 下載、Gmail、Telegram 與檔案管理器的 Intent,即使 URL 沒有副檔名。
pass-with-high-score-universal-installer-deep-analysis|OBB 檔案與複製路徑|3
對於包含 OBB 檔案的 XAPK、APKM 與 APKS 封存,Universal Installer 會自動偵測並在 APK 安裝後將其複製到 Android/obb/<package>/。你也可以手動將一個或多個 OBB 檔案附加到基礎 APK。複製在前景工作者中執行,因此應用程式關閉後仍會繼續,並在通知欄顯示進度。README 列出三種依序使用的寫入策略:Android 11 之前的裝置使用直接 I/O,現代 Android 使用 Shizuku 的 shell UID,以及每次套件授權一次的 SAF 樹授權。
pass-with-high-score-universal-installer-deep-analysis|VirusTotal 檢查是選用且需要金鑰|4
如果使用者設定了 API 金鑰,每個選取的檔案都會進行 SHA-256 雜湊並在 VirusTotal 上查詢。如果 VirusTotal 沒有記錄,預覽工作表會提供上傳以進行多引擎掃描,透過大檔案端點支援最大 650 MB 的檔案。應用程式會顯示四類引擎計數:惡意、可疑、無害與未偵測。README 並未聲稱這些檢查之外有任何安全保證;該功能依賴第三方服務與使用者提供的金鑰。
pass-with-high-score-universal-installer-deep-analysis|透過 Shizuku 或 root 的進階操作|5
當裝置有 root 權限或執行 Shizuku 時,應用程式會解鎖安裝設定檔與靜默安裝或解除安裝。靜默路徑會跳過系統確認提示。README 列出其他選項:取代現有應用程式、允許降級、授予所有請求的權限、允許測試套件、繞過低目標 SDK 封鎖、為所有使用者安裝。設定安裝來源可讓你偽裝安裝程式套件名稱,預設包括 Google Play、Aurora、F-Droid、Amazon、Samsung、Huawei 與 Xiaomi,或自訂值,這樣檢查安裝來源的應用程式會接受側載。設定區段說明啟動 Shizuku 並在應用程式設定中授予權限。
pass-with-high-score-universal-installer-deep-analysis|區域網路分享、電視與應用程式管理|6
應用程式內建 HTTP 伺服器,用於透過本地 Wi-Fi 分享套件,並提供網頁儀表板,可將檔案下載到 PC 或上傳新套件到手機。應用程式內會顯示即時進度,可選 4 到 8 位 PIN 限制對共用資料夾的本地存取。傳送到電視功能透過掃描 QR code 將套件傳輸並安裝到 Android TV。解除安裝管理員列出使用者應用程式(可選系統應用程式),顯示首次安裝日期與最後使用時間等中繼資料,支援排序與批次選取,並記錄每次解除安裝嘗試。裝置工具部分提到儲存使用卡片與安裝歷史畫面,顯示成功或失敗原因。
pass-with-high-score-universal-installer-deep-analysis|建置、設定與授權條件|7
建置需要 Android Studio、JDK 17 或更高版本以及 Android SDK 36。專案是多模組 Gradle 建置,包含手機和平板電腦的應用程式模組、電視模組以及兩者共用的核心函式庫。README 指出舊的 store 與 full 產品風味已移除;單一發行版包含 Shizuku、root 與預設系統安裝程式。提供了用於組裝除錯與發行變體以及發行應用程式套件的 Gradle 命令。支援 Fastlane 進行建置與部署到 Firebase 與 Play Store 內部軌道。設定涵蓋 Shizuku 與 VirusTotal API 金鑰。專案採用 GPL-3.0-only 授權;授權摘錄授予使用、修改與散佈軟體的自由,要求傳遞相同的自由與原始碼存取權,並聲明不提供保固。README 沒有討論支援承諾或安全漏洞。
pass-with-high-score-universal-installer-deep-analysis|採用前的專案專屬檢查|8
針對 pass-with-high-score-universal-installer-deep-analysis,應依 README 已列出的檔案、命令與設定逐項核對。若來源未說明某項行為,本文保留為未知,不把推測寫成保證。測試紀錄應包含實際輸入、輸出與錯誤訊息,方便釐清是環境差異還是專案本身的限制。
先看 pass-with-high-score-universal-installer-deep-analysis 的 README 入口,再把其中列出的名詞對應到實際檔案。這一步能分清楚倉庫目錄、文件連結與可執行程式,不把展示頁文字誤當成介面承諾。(檢查項 1)
若 README 提到命令,核對命令所在的目錄與輸入形式,將成功輸出和錯誤輸出分開保存。對 pass-with-high-score-universal-installer-deep-analysis 而言,這是檢查環境依賴與資料流向的最短路徑。(檢查項 2)
設定檔的作用必須以專案文件為準。沒有明示的預設值就保留未知,尤其是資料位置、網路暴露、憑證處理與權限邊界,不能由專案名稱推導。(檢查項 3)
閱讀 pass-with-high-score-universal-installer-deep-analysis 的功能清單時,應把每一項拆成可觀察結果,例如產生的檔案、命令列回應、資料庫變化或介面狀態。只有能觀察,才有辦法與 README 逐項比對。(檢查項 4)
版本核對要落在該倉庫的分支、標籤或套件版本。若來源只列出 main 或 dev,便記下這個事實,不把未提供的相容矩陣補成推論。(檢查項 5)
對外部服務、模型、容器或資料庫的依賴,應沿著 pass-with-high-score-universal-installer-deep-analysis 已列出的連結逐一確認。素材沒有描述的供應商行為,不在本文替它作保證。(檢查項 6)
若要把 pass-with-high-score-universal-installer-deep-analysis 放進團隊流程,先以最小輸入跑一次 README 的示例,再用一個已知結果重跑。觀察日誌、輸出檔和返回碼,才能定位問題是在設定還是在程式。(檢查項 7)
編輯結論
README 說明了功能集與建置流程,但沒有提供效能數據、下載統計或保固細節,這些內容不在 GPL 文字之外。 本文適合需要評估 pass-with-high-score-universal-installer-deep-analysis README 所列能力的開發者,不適合把來源摘要當成完整的生產保證;先執行專案明示的命令並核對其輸出、設定檔與限制,再決定是否納入正式流程。
社群筆記