标签:android file-io service android-activity android-manifest
我正在开发一个Android应用程序,它在SD卡中创建一个文件夹并存储一些图像.我想在卸载应用程序时删除该文件夹.请指导我.
解决方法:
//为此你需要运行BroadcasrReciver并在androidmanifest.xml文件中包含接收器
<receiver android:name="com.android.mobileasap.PackageChangeReceiver">
<intent-filter>
<action android:name="android.intent.action.PACKAGE_REMOVED" />
<data android:scheme="package" />
</intent-filter>
//添加权限
<uses-permission android:name="android.permission.BROADCAST_PACKAGE_REMOVED" />
//在那个PackageChangeReceiver中只删除我在下面的代码中删除doc文件的文件
public class PackageChangeReceiver extends BroadcastReceiver
{
@Override
public void onReceive(Context context, Intent intent)
{
//this.context=context;
Uri data = intent.getData();
Log.d("hi", "Action: " + intent.getAction());
Log.d("hi", "The DATA: " + data);
String action=intent.getAction();
if(Intent.ACTION_PACKAGE_REMOVED.equalsIgnoreCase(action))
{
String PATH = Environment.getExternalStorageDirectory() + "/mycontent_download/";
File file = new File(PATH);
if (file.exists())
{
String listOfFiles [] = file.list();
if (listOfFiles!=null)
{
if (listOfFiles.length>0)
{
int size = listOfFiles.length;
for (int i=0; i<size; i++)
{
if (listOfFiles[i].substring(listOfFiles[i].length()-4, listOfFiles[i].length()).equalsIgnoreCase(".doc"))
{
File f1 = new File(PATH+listOfFiles[i]);
f1.delete();
}
}
}
}
}
标签:android,file-io,service,android-activity,android-manifest 来源: https://codeday.me/bug/20190826/1732468.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。