TestTools 是一套提供手機測試與日常維護使用的 Android 工具程式,將常用測試資源、螢幕與觸控檢測、相機規格、浮動快速截圖、影音備份、手機資訊與線上更新整合在同一個 App 中。
目前版本:v1.28
v1.28 重新設計首頁,改為亮色系分類網格:手機使用雙欄緊湊入口,平板與展開式螢幕自動使用四欄,減少捲動並保留清楚的功能辨識與無障礙操作。
最低支援:Android 8.0(API 26)
- 以「測試素材」與「常用程式」兩個頁簽整合在同一頁面。
- 測試素材頁簽從雲端資料庫清單載入圖片、影片、音訊及其他測試素材連結。
- 點選後交由瀏覽器或手機中對應的 App 開啟。
- 支援本地快取;無網路時可沿用上一次成功同步的內容。
- 常用程式頁簽載入常用工具、網站及下載頁面。
- 資源匯入頁簽支援單項或全部背景匯入,並顯示來源、類型及目標資料夾。
- 「多媒體」儲存至
DCIM,「其他」儲存至Download;可透過資料夾名稱建立子資料夾。 - Dropbox 公開檔案與資料夾均可匯入,資料夾下載的 ZIP 會自動安全解壓。
- 不支援 Google Drive,匯入過程不會要求使用者登入任何雲端帳號。
- 可在 App 內手動重新整理遠端資料。
- 遠端同步失敗時自動使用本地快取或 APK 內建備援清單。
- 全螢幕顯示白色方形或圓形測試區域,其餘區域保持全黑。
- 白色區域依螢幕實際解析度動態計算面積比例。
- 內建 5%、10%、25%、50%、75%、100%,並可自由新增、刪除或勾選比例。
- 測試中可向上下左右滑動切換比例,角落會顯示目前比例。
- 可使用最高螢幕亮度,測試期間保持螢幕喚醒。
- 顯示形狀、亮度選項、比例與最後測試位置皆會自動保存。
- 顯示實際解析度、像素密度、目前顯示模式、支援更新率、HDR 與廣色域能力。
- 提供 18 組全螢幕純色、灰階、漸層、RGB、標準色條、棋盤格及像素銳利度圖樣。
- 可選擇最高亮度及測試期間保持螢幕開啟,並以點擊或滑動快速切換圖樣。
- 提供 12×24 觸控網格,檢查觸控死角、即時觸點與裝置回報的最高同時觸控數。
- 在其他 App 上方顯示可拖曳的浮動按鈕。
- 浮動按鈕可顯示目前時間與設備電量。
- 單擊、雙擊及上下左右滑動可分別指定功能,並可指定「隱藏至螢幕側邊」。
- 隱藏後會吸附至最近的左/右側,縮成半透明細線;點一下細線即可恢復原按鈕。
- 手勢可切換補光燈/手電筒、下拉通知面板、開啟指定 App,以及切換系統響鈴/靜音。
- 輕點即可保存截圖至系統的
Pictures/Screenshots;若裝置既有截圖使用DCIM/Screenshots,則自動沿用該位置。 - 截圖成功時提供白色閃光、輕震動、提示音及按鈕動畫,各項回饋可個別關閉。
- Android 11 以上使用 Accessibility 截圖;首次開啟服務後,每次截圖不需重複確認。
- Android 8~10 使用 MediaProjection;每次擷取工作階段需接受一次系統授權。
銀行 App、DRM 串流內容、無痕模式等受保護畫面可能禁止截圖,這是 Android 系統的安全限制。
- 整合 QuickSend,掃描
DCIM與Pictures中的影音檔案。 - 可經 LocalSend 傳送至同一網路內的接收裝置。
- 可備份至 USB 外接磁碟。
- 支援增量備份紀錄、背景傳輸及失敗重試。
- 使用者開始後,以低負載前景服務每分鐘記錄一筆充電資料。
- 記錄電量百分比與變化、電池狀態、外部供電類型、健康度、溫度及電壓。
- 記錄系統回報的即時/平均電流、剩餘電荷、剩餘能量與支援裝置的循環次數。
- 以電池電流及電壓計算電池端估算功率;此數值不等同充電器插座輸出。
- 監控期間不使用網路、不持有 WakeLock,也不持續輪詢感測器。
- 啟用狀態與 CSV 存放於 Device Protected Storage,手機尚未解鎖時也能讀取。
- 支援
LOCKED_BOOT_COMPLETED與BOOT_COMPLETED;若耗盡電量關機後插電開機,會自動恢復並記錄BOOT_RESUME。 - CSV 額外記錄
START、STOP、POWER_CONNECTED、POWER_DISCONNECTED、BATTERY_LOW等事件。 - 提供 2×1 桌面 Widget,顯示電量、充電狀態、估算功率、溫度及最後記錄時間,並可開始/停止監控。
- Widget 更新時會檢查啟用狀態並作為開機服務恢復的第二層備援。
- 可將目前或最近一次工作階段匯出為 UTF-8 CSV。
- 彙整裝置型號、Android/Build、處理器、記憶體、儲存空間、螢幕、電池與 Camera2 相機資訊。
- 支援點選單項快速複製、複製全部,以及匯出 UTF-8 TXT。
- 序號、IMEI 與硬體 MAC 等受 Android 權限保護的欄位會明確標示系統限制。
- 逐顆列出 Camera ID、鏡頭方向、Camera2 硬體等級、感光元件像素及實體尺寸。
- 顯示實體焦距、估算 35mm 等效焦距、光圈、最近對焦距離、閃光燈及縮放範圍。
- 整理 OIS/EIS、RAW、手動感光、連拍、自動對焦、JPEG、錄影及高速錄影能力。
- Android 13 以上可列出系統公開的動態範圍/HDR Profiles。
- 支援點選單項複製、複製完整資料及匯出 UTF-8 TXT。
相機資料以 Android Camera2 API 公開內容為準;廠商相機 App 的像素合成、AI 模式與專屬錄影功能可能不會完整公開。
- 直接檢查
ahui3c/TestTools_Android最新 GitHub Release 與 APK 資產。 - 比較目前版本與 Release 標籤,只有線上版本較新時才顯示下載安裝按鈕。
- 使用 Android 系統 DownloadManager 背景下載;下載完成後開啟系統安裝確認畫面。
- 首次使用會引導開啟「允許安裝未知應用程式」,下載中斷或離開頁面後仍可接續處理已完成的下載。
- Release 未附 APK 時可改由 GitHub Release 頁面下載。
Android 不允許一般 App 靜默覆蓋安裝;更新 APK 必須使用與既有版本相同的簽章,並由使用者在系統畫面確認。
- 前往 Releases 下載最新版本 APK。
- 在 Android 手機上開啟 APK。
- 若系統提示,允許此來源安裝應用程式。
- 依使用的功能授予必要權限。
目前遠端資料由 Google 試算表提供,App 對使用者統一顯示為「雲端資料庫清單」。維護文件:
App 直接讀取此試算表的公開 CSV 匯出內容,並保留最近一次成功同步的本地快取。分享權限必須維持「知道連結的任何人皆可檢視」,不需要提供編輯權限。
清單欄位格式如下;舊版前三欄仍相容,資源匯入資料才需要填寫後兩欄:
| 分類 | 名稱 | 網址 | 類型 | 資料夾名稱 |
|---|---|---|---|---|
| 常用測試素材 | 顯示在 App 的素材名稱 | https://... |
留空 | 留空 |
| 常用程式 | 顯示在 App 的程式名稱 | https://... |
留空 | 留空 |
| 資源匯入 | 匯入項目名稱 | Dropbox 公開分享連結 | 多媒體 或 其他 |
選填;留空不建立額外資料夾 |
保留第一列欄名。更新遠端內容後,App 可直接重新同步,不需要重新編譯或安裝新版 APK。
| 權限/服務 | 用途 |
|---|---|
| 網路 | 同步雲端資料庫清單、連線 LocalSend、檢查 GitHub Release |
| 安裝未知應用程式 | 由使用者確認後安裝從官方 GitHub Release 下載的新版 APK |
| 前景資料同步服務 | 在背景下載及解壓使用者選擇的公開分享資源 |
| 相片與影片/檔案 | 掃描及備份使用者選擇的影音檔案 |
| 無障礙服務 | Android 11 以上在使用者點擊浮動按鈕時擷取螢幕 |
| 顯示在其他 App 上層 | Android 8~10 顯示截圖浮動按鈕 |
| 螢幕擷取 | Android 8~10 建立 MediaProjection 擷取工作階段 |
| 震動 | 提供截圖成功回饋 |
| 相機 | 控制使用者手動指派給浮動按鈕的補光燈/手電筒動作 |
| 勿擾模式存取 | 在使用者觸發浮動手勢時切換系統響鈴與靜音 |
浮動截圖只會在使用者主動點擊按鈕時執行;圖片保存在手機本機,不會由 TestTools 自動上傳。
需求:
- Android Studio
- Android SDK 36
- JDK 17
在專案根目錄執行:
.\gradlew.bat assembleDebug產生的 APK 位於:
app/build/outputs/apk/debug/app-debug.apk
app/ TestTools 主程式與測試功能
quicksend/ 影音快速備份 Android library
gradle/ Gradle Wrapper
授權內容請參閱 LICENSE。