【Android】android:manageSpaceActivity让应用手动管理应用的数据目录

今天在Android遇到一个需求,不允许用户完全清除应用私有目录(/data/data/包名/),但是Android默认情况下用户通过在应用信息里面点击清除数据按钮把所有的应用私有目录下的的数据文件完全清除,其中包含SharedPreference,缓存文件,数据库等等重要数据。

 

如果我们不想用户这样做,就需要用到android:manageSpaceActivity属性,这个属性是AndroidManifest.xml中的application标签的一个属性,意思是用于指定一个Activity来管理数据

,加上这个属性,指定SettingActivity为管理空间的Activity

Xml代码  收藏代码
  1. <application  
  2.         android:manageSpaceActivity=".activity.SettingActivity" >  
  3. </application>  

 我们再看看Android的应用信息界面



 

这时候清除数据按钮编程管理空间了,点击之后,就启动指定的Activity,我只允许删除缓存文件和清除数据库中的收藏表



 

posted @   Rex..  阅读(2514)  评论(0编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】
点击右上角即可分享
微信分享提示