android应用安装成功之后删除apk文件

[摘要:题目: 正在运用开辟中碰到须要如许的需供:正在用户下载我们的运用装置以后删除装置包。 办理:  android会正在每一个中界操纵APK的举措以后收回体系级其余播送,过滤器称号:] 

问题: 
在应用开发中遇到需要这样的需求:在用户下载我们的应用安装之后删除安装包。 
解决: 
android会在每个外界操作APK的动作之后发出系统级别的广播,过滤器名称: android.intent.action.package_ADDED, 
android.intent.action.PACKAGE_REMOVED, 
需要注意点的是在涉及到存储卡状态改变的时候必须添加

<data android:scheme="package" >

我们要做的就是在应用AndroidManifest中注册静态广播,并在自定义的广播里处理相应的逻辑:

  1. 1.
<receiver
  android:name="com.example.testdeleteapk.receiver.InitApkBroadCastReceiver"
  android:enabled="true" >
      <intent-filter>
         <action android:name="android.intent.action.PACKAGE_ADDED" />
         <action android:name="android.intent.action.PACKAGE_REPLACED" />
         <action android:name="android.intent.action.PACKAGE_REMOVED" />
         <data android:scheme="package" />
     </intent-filter>
</receiver>

这样,在应用安装成功后就会接受到相应的广播。广播定义如下:

package com.example.testdeleteapk.receiver;

import Java.io.File;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.os.Environment;

public class InitApkBroadCastReceiver extends BroadcastReceiver {


    @Override
    public void onReceive(Context context, Intent intent) {

        if (Intent.ACTION_PACKAGE_ADDED.equals(intent.getAction())) {
            system.out.println("监听到系统广播添加");

        }

        if (Intent.ACTION_PACKAGE_REMOVED.equals(intent.getAction())) {
            System.out.println("监听到系统广播移除");

        }

        if (Intent.ACTION_PACKAGE_REPLACED.equals(intent.getAction())) {
            System.out.println("监听到系统广播替换");

        }
    }

}


  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值