Auto.js 腳本:清理手機數據但保留賬號

Auto.js 腳本:清理手機數據但保留賬號

以下是一個使用 Auto.js 實現的腳本,它可以幫你清理手機數據(類似恢復出廠設置),同時盡可能保留已登錄的賬號狀態。請注意,這個腳本不能完全等同于真正的恢復出廠設置,但可以實現類似效果。

// 腳本功能:清理手機數據但保留賬號狀態
// 需要 Auto.js 4.1.1 以上版本
// 需要 root 權限或無障礙權限// 配置區域 ==================================
var config = {keepAccounts: true,      // 是否保留賬號clearAppData: true,      // 是否清除應用數據clearCache: true,        // 是否清除緩存whitelist: [             // 不想清理的應用包名列表"com.tencent.mm",    // 微信"com.tencent.mobileqq", // QQ"com.google.android.gms", // Google服務"com.android.vending",   // Google Play商店// 添加其他你想保留的應用]
};
// ==========================================// 主函數
function main() {// 請求必要的權限requestPermissions();// 顯示警告信息alert("警告", "此腳本將清理手機數據,請確保重要數據已備份!", function(){// 開始執行清理startCleaning();});
}// 請求權限
function requestPermissions() {// 請求root權限if (!requestRoot()) {toast("未獲取root權限,部分功能可能無法使用");}// 請求無障礙服務auto.waitFor();
}// 開始清理流程
function startCleaning() {// 顯示進度對話框let progressDialog = dialogs.build({title: "正在清理",progress: {max: 100,showMinMax: true},cancelable: false}).show();// 步驟1: 清理應用緩存 (10%)if (config.clearCache) {progressDialog.setProgress(10);progressDialog.setMessage("正在清理應用緩存...");clearAllAppCache();}// 步驟2: 清理應用數據 (40%)if (config.clearAppData) {progressDialog.setProgress(40);progressDialog.setMessage("正在清理應用數據...");clearAppData();}// 步驟3: 清理系統緩存 (70%)progressDialog.setProgress(70);progressDialog.setMessage("正在清理系統緩存...");clearSystemCache();// 步驟4: 保留賬號數據 (90%)if (config.keepAccounts) {progressDialog.setProgress(90);progressDialog.setMessage("正在保留賬號數據...");backupAccounts();}// 完成 (100%)progressDialog.setProgress(100);progressDialog.setMessage("清理完成!");sleep(1000);progressDialog.dismiss();toast("清理完成!");
}// 清理所有應用緩存
function clearAllAppCache() {let pm = context.getPackageManager();let apps = pm.getInstalledApplications(0);apps.forEach(app => {if (!config.whitelist.includes(app.packageName)) {try {let cmd = "pm clear " + app.packageName;shell(cmd, true);} catch (e) {console.log("清理緩存失敗: " + app.packageName);}}});
}// 清理應用數據
function clearAppData() {let pm = context.getPackageManager();let apps = pm.getInstalledApplications(0);apps.forEach(app => {if (!config.whitelist.includes(app.packageName)) {try {// 刪除應用數據目錄let dataDir = "/data/data/" + app.packageName;if (files.exists(dataDir)) {shell("rm -rf " + dataDir, true);}// 刪除外部存儲數據let extDir = "/sdcard/Android/data/" + app.packageName;if (files.exists(extDir)) {shell("rm -rf " + extDir, true);}} catch (e) {console.log("清理數據失敗: " + app.packageName);}}});
}// 清理系統緩存
function clearSystemCache() {try {// 清理dalvik緩存shell("rm -rf /data/dalvik-cache", true);// 清理臨時文件shell("rm -rf /data/local/tmp/*", true);shell("rm -rf /cache/*", true);// 清理日志shell("rm -rf /data/log/*", true);shell("rm -rf /data/tombstones/*", true);} catch (e) {console.log("清理系統緩存失敗: " + e);}
}// 備份賬號數據
function backupAccounts() {try {// 備份賬號數據庫 (需要root)let accountDb = "/data/system/users/0/accounts.db";let backupDir = "/sdcard/account_backup/";if (files.exists(accountDb)) {if (!files.exists(backupDir)) {files.createWithDirs(backupDir);}shell("cp " + accountDb + " " + backupDir + "accounts.db", true);}} catch (e) {console.log("備份賬號數據失敗: " + e);}
}// 運行主函數
main();

使用說明

  1. 準備工作:

    • 安裝 Auto.js 應用 (建議4.1.1以上版本)
    • 確保手機已root (部分功能需要root權限)
    • 備份重要數據
  2. 配置腳本:

    • 修改 config 部分,設置你想保留的應用包名
    • 設置是否保留賬號、清除應用數據等選項
  3. 運行腳本:

    • 將腳本導入Auto.js并運行
    • 授予必要的權限
    • 腳本會逐步清理手機數據

注意事項

  1. 此腳本不能完全等同于恢復出廠設置,但可以達到類似效果
  2. 部分賬號可能仍需要重新登錄,取決于應用的賬號管理機制
  3. 建議在執行前手動備份重要數據
  4. 某些系統可能需要調整文件路徑
  5. 首次運行建議先在測試設備上嘗試

高級選項

如果你需要更徹底的清理,可以添加以下功能:

  • 清理媒體存儲數據庫
  • 重置系統設置
  • 清理更多系統目錄

但請注意,這些操作可能有風險,建議在充分了解后果后再實施。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/904359.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/904359.shtml
英文地址,請注明出處:http://en.pswp.cn/news/904359.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

LeetCode 熱題 100 279. 完全平方數

LeetCode 熱題 100 | 279. 完全平方數 大家好,今天我們來解決一道經典的動態規劃問題——完全平方數。這道題在 LeetCode 上被標記為中等難度,要求找到和為給定整數 n 的完全平方數的最少數量。 問題描述 給定一個整數 n,返回和為 n 的完全…

【coze】手冊小助手(提示詞、知識庫、交互、發布)

【coze】手冊小助手(提示詞、知識庫、交互、發布) 1、創建智能體2、添加提示詞3、創建知識庫4、測試智能體5、添加交互功能6、發布智能體 1、創建智能體 2、添加提示詞 # 角色 你是幫助用戶搜索手冊資料的AI助手 ## 工作流程 ### 步驟一:查詢知識庫 1.每…

一個基于Asp.Net Core + Angular + Bootstrap開源CMS系統

從零學習構建一個完整的系統 推薦一個功能強大、易于擴展、安全可靠的開源內容管理系統,適用于各種類型和規模的網站。 項目簡介 MixCoreCMS是一個基于.NET Core框架的開源內容管理系統(CMS),提供了豐富的的基礎功能和插件&…

【Python】常用命令提示符

Python常用的命令提示符 一、Python環境基礎命令【Windows】 于Windows環境下,針對Python,在CMD(命令提示符)常用的命令以及具體用法,怎么用; ??主要包含:運行腳本、包管理、虛擬環境、調試與…

提示詞優化:檢索歷史提示確定方向→生成候選提示并控制修改幅度→基于準確率迭代優化

提示詞優化器 Unleashing the Potential of Large Language Models as Prompt Optimizers: Analogical Analysis with Gradient - based Model Optimizers 《Unleashing the Potential of Large Language Models as Prompt Optimizers: Analogical Analysis with Gradient - …

如何設計一個網頁計算器?—— 從需求分析到測試的全流程

1. 需求分析與功能設計 核心功能 基礎運算:+ - * / 高級運算:% (取模)、^ (冪運算)、√ (開平方) 記憶功能:M+ (累加)、M- (累減)、MR (讀取)、MC (清除) 交互優化: 支持鍵盤輸入(0-9、Enter、Backspace) 實時計算(類似 Google 計算器,輸入 2+3= 自動顯示 5) 錯誤處理…

基于RT-Thread的STM32F4開發第二講第一篇——ADC

文章目錄 前言一、RT-Thread工程創建二、ADC工程創建三、ADC功能實現1.ADC.c2.ADC.h3.mian.c 四、效果展示和工程分享總結 前言 ADC是什么不多講了,前面裸機操作部分有很多講述。我要說的是RT-Thread對STM32的ADC外設的適配極其不好,特別是STM32G4系類&…

FoMo 數據集是一個專注于機器人在季節性積雪變化環境中的導航數據集,記錄了不同季節(無雪、淺雪、深雪)下的傳感器數據和軌跡信息。

2025-05-02,由加拿大拉瓦爾大學北方機器人實驗室和多倫多大學機器人研究所聯合創建的 FoMo 數據集,目的是研究機器人在季節性積雪變化環境中的導航能力。該數據集的意義在于填補了機器人在極端季節變化(如積雪深度變化)下的導航研…

vue3+ts繼續學習

我們再寫點東西,這里面都是vue2的語法,應該都能看明白!我們寫完直接去運行一下代碼! 發現什么都沒有發生!為什么呢?因為我們在App.vue中沒有引入!哈哈哈哈!這樣就好了!注…

LIO-Livox

用單臺Livox Horizon (含內置IMU) 實現高魯棒性的激光-慣性里程計,可在各類極端場景下魯棒運行,并達到高精度的定位和建圖效果。(城區擁堵、高速公路、幽暗隧道) 注:該系統主要面向大型室外環境中的汽車平臺設計。用戶可以使用 Livox Horizo…

day18-API(常見API,對象克隆)

課程目標 能夠熟練使用Math類中的常見方法 能夠熟練使用System類中的常見方法 能夠理解Object類的常見方法作用 能夠熟練使用Objects類的常見方法 能夠熟練使用BigInteger類的常見方法 能夠熟練使用BigDecimal類的常見方法 1 Math類 1.1 概述 tips:了解內容…

用OMS從MySQL遷移到OceanBase,字符集utf8與utf8mb4的差異

一、問題背景 在一次從MySQL數據庫遷移到OceanBase的MySQL租戶過程中,出現了一個轉換提示: [WARN][CONVER] he table charset:utf8->utf8mb4, 你可能會擔心這種轉換可能導致字符集不兼容的問題。但通過查閱相關資料可知,utf8m…

MATLAB中tabulate函數——先驗概率的簡單估計

load fisheriris X meas(:,1:2); Y species; labels unique(Y); tabulate(Y)ValueCountPercentsetosa5033.33%versicolor5033.33%virginica5033.33%

《Python星球日記》第28天:數據獲取與可視化(綜合項目)

名人說:路漫漫其修遠兮,吾將上下而求索。—— 屈原《離騷》 創作者:Code_流蘇(CSDN)(一個喜歡古詩詞和編程的Coder??) 專欄:《Python星球日記》,限時特價訂閱中ing 目錄 一、項目概述二、數據獲取1. 準備工作2. 使用 `requests` 獲取網頁內容3. 使用 `BeautifulSoup`…

基于深度學習的圖像識別技術:從原理到應用

前言 在當今數字化時代,圖像識別技術已經滲透到我們生活的方方面面,從智能手機的人臉解鎖功能到自動駕駛汽車對交通標志的識別,再到醫療影像診斷中的病變檢測,圖像識別技術正以其強大的功能和廣泛的應用前景,改變著我們…

限免開關實施版本保護措施,保證項目灰度發布安全

迭代用戶限免權限校驗業務 新增限免開關實現普通用戶權益更新,實施版本保護措施,保證項目灰度發布安全; // 是否展示限免標識 func (t *BasePrivilegeService) IsPromotionFree(p consumParams) bool {// 限免開關isFreeUseOpen : p.cfg.Vip…

從 AWS Marketplace 開始使用 AssemblyAI 的語音轉文本模型構建語音智能

語音智能和語音轉文本 (STT) 技術已變得至關重要,因為組織每天收集數千小時的電話、會議和客戶互動。僅靠原始音頻并不能推動決策 - 組織需要智能來大規模地從語音數據中提取價值。語音智能結合了語音識別、自然語言處理 (NLP&…

Android組件化 -> Debug模式下,本地構建module模塊的AAR和APK

本地構建module模塊的AAR gradle.properties isCommonApp false模塊的build.gradle apply plugin: com.android.library:module模塊編譯manifest.srcFile src/main/AndroidManifest.xml:讀取沒有啟動App和Activity的配置文件 if (isCommonApp.toBoo…

FlexibleButton:一個輕巧靈活的按鍵處理庫,讓你的按鍵處理更簡單

在嵌入式系統開發中,按鍵輸入處理是一個常見且重要的環節。然而,許多開發者在處理按鍵時,往往會遇到按鍵消抖、組合按鍵、長按/短按等功能實現的復雜性。如何在保證系統高效運行的同時,簡化按鍵事件的處理呢? 今天&…

探索程序員薪資背后的秘密與未來:智能化工具如何助力職場發展

最新接入DeepSeek-V3模型,點擊下載最新版本InsCode AI IDE 探索程序員薪資背后的秘密與未來:智能化工具如何助力職場發展 引言 在當今數字化時代,程序員作為科技發展的核心力量,其職業前景和薪資水平備受關注。隨著人工智能和自…