2011-12-07 69 views
2

是否可以从您创建的活动中清除所有应用程序数据? 可以说,onResume会做一些事情来清除可能存储的数据。擦除所有应用程序数据?

+0

取决于您对应用程序数据有何意义!无论如何,是的,它应该是可能的。 –

回答

2

您可以手动删除应用程序缓存目录中的所有缓存文件。你可以得到的缓存目录有:

context.getCacheDir(); 

而且,看看这个 - https://stackoverflow.com/a/3986001/492292

+1

请注意,这仅适用于不在SD卡上的内部存储器。 – rekire

+0

是的,但应用程序可以将数据放在SD卡上的任何地方,所以没有常见的方法来清除它。 –

+0

这是真的,但我想通知dothedos。 – rekire

2

访问文件上external storage

如果您使用API​​ 8级以上,使用getExternalFilesDir()打开一个表示应该保存文件的外部存储目录的文件。此方法接受一个类型参数,该参数指定所需的子目录的类型,例如DIRECTORY_MUSIC和DIRECTORY_RINGTONES(传递null以接收应用程序文件目录的根目录)。如果需要,此方法将创建适当的目录。通过指定目录的类型,您可以确保Android的媒体扫描程序能够正确地对系统中的文件进行分类(例如,铃声被识别为铃声而不是音乐)。如果用户卸载您的应用程序,则该目录及其所有内容将被删除。

如果您使用API​​ Level 7或更低级别,请使用getExternalStorageDirectory()打开表示外部存储根目录的File。然后,您应该将数据写入以下目录:

/Android/data //文件/ 这是您的Java风格的包名称,例如“com.example.android.app”。如果用户的设备正在运行API级别8或更高版本,并且他们的卸载您的应用程序,则该目录及其所有内容将被删除。

0

使用getFilesDir()您可以获取应用程序的默认内部存储位置。这是通常存储应用程序特定数据的地方。

相关问题