Android 当我卸载我的应用程序时,我们可以删除通过我的应用程序创建的文件夹吗?
我面临的问题是,当我卸载SD卡路径中仍然可用的应用程序文件夹时 我应该如何删除它 请建议一些事情让它发生 我应该如何删除它 对外部存储(“SD卡”)上的文件使用Android 当我卸载我的应用程序时,我们可以删除通过我的应用程序创建的文件夹吗?,android,Android,我面临的问题是,当我卸载SD卡路径中仍然可用的应用程序文件夹时 我应该如何删除它 请建议一些事情让它发生 我应该如何删除它 对外部存储(“SD卡”)上的文件使用getExternalFilesDir()和/或getExternalCacheDir()。卸载应用程序时,这些目录将自动删除 除此之外,其他一切都不可能,因为当您的应用程序被删除时,您无法获得控制权。一些读数: 如果您使用的是API级别8或更高版本,请使用getExternalFilesDir()打开一个文件,该文件表示应保存文件的外部
getExternalFilesDir()
和/或getExternalCacheDir()
。卸载应用程序时,这些目录将自动删除
除此之外,其他一切都不可能,因为当您的应用程序被删除时,您无法获得控制权。一些读数:
如果您使用的是API级别8或更高版本,请使用getExternalFilesDir()打开一个文件,该文件表示应保存文件的外部存储目录。此方法接受一个类型参数,该参数指定您想要的子目录的类型,例如DIRECTORY_MUSIC和DIRECTORY_RINGTONES(传递null以接收应用程序文件目录的根目录)。如果需要,此方法将创建适当的目录。(……)
如果您使用的是API级别7或更低的版本,请使用getExternalStorageDirectory()打开表示外部存储根目录的文件。然后,应将数据写入以下目录:
/Android/data/“package\u name”/files/
“package_name”是您的Java风格的包名,例如“com.example.android.app”
如果用户的设备运行API级别8或更高版本,并且他们卸载了您的应用程序,则此目录及其所有内容将被删除。卸载应用程序时,您无法运行代码,因此您必须允许操作系统为您进行清理。这意味着您不能将文件放在SD卡上的任何位置,但必须遵循操作系统的规则
因此,与在SD卡上创建自己的目录结构不同,您必须将写入的文件放在调用
getExternalFilesDir()
和getExternalCacheDir()
返回的目录中。Android在卸载时会自动删除这些目录的任何内容。不幸的是,简单地说,答案是:不,你不能。
原因:
getExternalCacheDir()
,然后在卸载应用程序时仅自动删除文件夹
Context#getExternalFilesDir()
,这些文件将在卸载时删除
getExternalStorageDirectory()为我提供了如下路径:/mnt/sdcards/myfolder/。。。但当我卸载我的应用程序时,文件夹和数据仍然可用。。。我正在为此应用程序使用最新的API。我编写了一个应用程序,而你却抱怨B不工作。。。。第二行:getExternalFilesDir()不是getExternalStorageDirectory