美文网首页
如何看待国内安卓App在sd下创建目录混淆视觉

如何看待国内安卓App在sd下创建目录混淆视觉

作者: 金卡戴珊ugly | 来源:发表于2019-10-10 15:29 被阅读0次

安卓规范了在android/data文件夹存放缓存信息,厂商应该设置自动清理这些内容,但是很多app要么不在这个文件夹下存放缓存,要么不自动清理,然后垃圾就一直堆。
Android 本身提供了 /data/data/<包名> 这样的内部目录和 /sdcard/Android/data/<包名> 这样的外部目录用于存储 APP 运行时的关键数据。

// 获得 /sdcard/Android/data/com.tencent.mobileqq/files/head 目录的字符串
String path = getExternalFilesDir("head").getAbsolutePath();

Google官方建议我们App的数据应该存储在外部存储的私有目录中该App的包名下,这样当用户卸载掉App之后,相关的数据会一并删除,如果你直接在/storage/sdcard目录下创建了一个应用的文件夹,那么当你删除应用的时候,这个文件夹就不会被删除。


image.png

大家看到,有包名的路径我们都是调用Context中的方法来获得,没有包名的路径,我们直接调用Environment中的方法获得,那么其中有两个方法需要传入一个String类型的参数,这个参数我们使用了Environment中的常量,参数的意思是我们要访问这个路径下的哪个文件夹。
总结一波,在外部存文件时,应该选择data/data/包名下。这样程序卸载后文件自动被删除。

相关文章

网友评论

      本文标题:如何看待国内安卓App在sd下创建目录混淆视觉

      本文链接:https://www.haomeiwen.com/subject/pyypuctx.html