当我在 Android 文件传输或 Astro 文件管理器中查看 SD 卡根目录时,发现很混乱,因为应用程序到处都存储着文件。
作为开发人员,我们通过缓存图像/文件等来遵循最佳实践,以使我们的应用程序更快,并且我们使用Environment.getExternalStorageDirectory()
获取外部存储的根目录(不是硬编码/sdcard)。但接下来应该做什么呢?理想的世界中,我们会遵循将缓存文件转储到外部存储的开放字段上的约定吗?
以下是我从自己的设备/经验中看到的几个选项:
-
/.cache/app_name/
-
/.app_name/
-
/cache/<app_name>/
/data/<app_name>/
/com.package.name/
/app_name/
我目前更喜欢第一个选项,默认情况下从设备文件管理器中隐藏。
有谁知道 Google 的推荐或几个流行/大牌应用程序遵循的惯例吗?或者这是一个坏主意的原因?
根据开发者文档
保存缓存文件
如果您使用的是 API 级别 8 或更高版本,请使用 getExternalCacheDir() 打开一个代表应在其中保存缓存文件的外部存储目录的文件。如果用户卸载您的应用程序,这些文件将被自动删除。但是,在应用程序的生命周期中,您应该管理这些缓存文件并删除不需要的文件,以保留文件空间。
如果您使用的是 API 级别 7 或更低版本,请使用 getExternalStorageDirectory() 打开表示外部存储根目录的文件,然后将缓存数据写入以下目录中:
/Android/data//cache/
是 Java 风格的包名称,例如“com.example.android.app”。
更多信息请点击这里
http://developer.android.com/guide/topics/data/data-storage.html#filesExternal http://developer.android.com/guide/topics/data/data-storage.html#filesExternal
希望能帮助到你
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)