Android 清除临时文件,清空缓存

python 代码:

python 复制代码
import os
import shutil
import traceback


def delete_folder(path):
    if os.path.exists(path):
        print(f"删除文件夹: {path}")
        shutil.rmtree(path)
        print("删除完成")


def delete_file(path):
    if os.path.exists(path):
        print(f"删除文件: {path}")
        os.remove(path)
        print("删除完成")


def clean_project(src_root):
    for root, dirs, files in os.walk(src_root):
        try:
            for filename in files:
                apath = os.path.join(root, filename)
                # 文件大于10M就打印
                if os.path.getsize(apath) > 10 * 1024 * 1024:
                    print(f"文件: {apath} 大小: {os.path.getsize(apath) / (1024 ** 2):.2f}M")

            # 删除.gradle文件夹
            if ".gradle" in dirs:
                dir_path = os.path.join(root, ".gradle")
                dir_size = shutil.disk_usage(dir_path).used / (1024 ** 2)
                if dir_size > 5:
                    delete_folder(dir_path)
                else:
                    print(f"文件夹: {dir_path} 大小: {dir_size:.2f}M")

            # 删除.idea文件夹
            if ".idea" in dirs:
                delete_folder(os.path.join(root, ".idea"))

            # 删除.iml文件和local.properties文件
            for file in files:
                file_path = os.path.join(root, file)
                if file.endswith(".iml") or file == "local.properties":
                    delete_file(file_path)

            # 删除build文件夹
            if "build" in dirs:
                delete_folder(os.path.join(root, "build"))

            # 删除libs文件夹
            if "libs" in dirs:
                delete_folder(os.path.join(root, "libs"))

            # 删除androidTest文件夹
            if "androidTest" in dirs:
                delete_folder(os.path.join(root, "androidTest"))

            # 删除test文件夹
            if "test" in dirs:
                delete_folder(os.path.join(root, "test"))

        except:
            traceback.print_exc()


if __name__ == "__main__":
    src_root = r"F:\workcode\android_project"
    clean_project(src_root)
相关推荐
做运维的阿瑞4 小时前
用 Python 构建稳健的数据分析流水线
开发语言·python·数据分析
左师佑图4 小时前
综合案例:Python 数据处理——从Excel文件到数据分析
开发语言·python·数据分析·excel·pandas
晨陌y5 小时前
深入剖析:仓颉语言的性能优化核心技术
android·性能优化·仓颉
xhbh6665 小时前
【实战总结】MySQL日期加减大全:日期计算、边界处理与性能优化详解
android
l1t5 小时前
利用DeepSeek修改数据结构提升求解集合程序效率
数据结构·python·deepseek
00后程序员张5 小时前
如何提高 IPA 安全性 多工具组合打造可复用的 iOS 加固与反编译防护体系(IPA 安全 iOS 加固 无源码混淆 Ipa Guard 实战)
android·安全·ios·小程序·uni-app·iphone·webview
jiushun_suanli6 小时前
PyTorch CV模型实战全流程(一)
人工智能·pytorch·python
张拭心6 小时前
“不卷 AI、不碰币、下班不收消息”——Android 知名技术大牛 Jake Wharton 的求职价值观
android·前端·aigc
2301_764441336 小时前
基于python构建的低温胁迫实验
开发语言·python
天才测试猿6 小时前
Selenium定位元素的方法css和xpath的区别
css·自动化测试·软件测试·python·selenium·测试工具·测试用例