卸载应用程序时如何从SD卡中删除文件

时间:2013-05-07 07:22:04

标签: android sd-card uninstall

我有应用程序记录声音,我想在卸载此应用程序时删除此声音文件。怎么可能?

3 个答案:

答案 0 :(得分:5)

您应该将文件存储在内部存储中。因此,当删除应用程序时,文件也是如此。 http://developer.android.com/guide/topics/data/data-storage.html#filesInternal

答案 1 :(得分:2)

有两种方法可以保存文件,以便在卸载时将其删除

    SD卡上的
  1. : 仅在应用程序文件中注意,它仅在API 8及更高版本上自动删除。
  2. //查找或创建私有文件需要在Context对象中

    File root_private_SD_Card_file = getExternalFilesDir(null); 
    
    File myOwnFile = getExternalFilesDir("MyOwnFile") //    
    

    String path = myOwnFile.getAbsolutePath()

    此方法还会隐藏来自其他应用程序的图像视频和音频文件

    2。 通过在上下文中直接存储到设备的存储

    openFileInput(fileName);
    

    [android开发者的链接] [1]

    此方法可能存在问题,因为设备存储可能受限或占用。

答案 2 :(得分:0)

如果您的应用的minSdk8,则可以使用

context.getExternalFilesDir(null)

正如文件所示:

  

返回外部文件系统上目录的绝对路径   (这是在Environment.getExternalStorageDirectory()的某处)   应用程序可以放置它拥有的持久文件。这些文件是   对应用程序是私有的,并且通常对用户不可见   媒体。

卸载应用程序时,相关目录将被删除(根目录将是com.yourdomain.yourappname)。

如果您的三星手机配有Android ICS,那不行(我认为这是一个错误)