android 应用程序安装卸载(安装应用宝后自动弹出卸载应用宝)

2024-08-21 02:38

本文主要是介绍android 应用程序安装卸载(安装应用宝后自动弹出卸载应用宝),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

获取程序安装卸载广播

电脑上有腾讯管家,作为安卓开发,用真机测试的比较多,鄙人算一个,不喜欢用应用宝,当你卸载了应用宝之后,插上USB,有时候就回静默安装应用宝,然后弹出应用宝获取什么什么权限,特别烦

手机在没有安装应用宝之前,开发一点问题也没有,手机也没有问题,静默安装后,好多天的周期手机会自动重启,死机等情况

今天又死机了一次,决定做一个当应用宝安装后弹出卸载框的程序  来提示我们卸载这个可恶的应用宝,我用的是华为3x

 

接收安装&卸载广播

package com.yqy.app;import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.net.Uri;
import android.widget.Toast;public class SetupLisenerReceiver extends BroadcastReceiver {@Overridepublic void onReceive(Context context, Intent intent) {// 接收安装广播if (intent.getAction().equals("android.intent.action.PACKAGE_ADDED")) {String packageName = intent.getDataString();
//			Toast.makeText(context, "安装了:" + packageName + "包名的程序",
//					Toast.LENGTH_SHORT).show();// 安装了:package:com.tencent.android.qqdownloader包名的程序if (packageName.equals("package:com.tencent.android.qqdownloader")) {Uri packageURI = Uri.parse(packageName);Intent uninstallIntent = new Intent(Intent.ACTION_DELETE,packageURI);// Receiver中使用startActivity 必须加上FLAG_ACTIVITY_NEW_TASKuninstallIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);// 在Receiver中尽量少使用startActivity 但是此功能必须这样context.startActivity(uninstallIntent);}}// 接收卸载广播if (intent.getAction().equals("android.intent.action.PACKAGE_REMOVED")) {
//			String packageName = intent.getDataString();
//			Toast.makeText(context, "卸载了:" + packageName + "包名的程序",
//					Toast.LENGTH_SHORT).show();}}}

 

mainfest注册广播

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"package="com.yqy.app"android:versionCode="1"android:versionName="1.0" ><uses-sdkandroid:minSdkVersion="8"android:targetSdkVersion="18" /><uses-permission android:name="android.permission.INTERNET" />  <uses-permission android:name="android.permission.RESTART_PACKAGES"/>  <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/><applicationandroid:allowBackup="true"android:icon="@drawable/ic_launcher"android:label="@string/app_name"android:theme="@style/AppTheme" ><activityandroid:name="com.yqy.app.MainActivity"android:label="@string/app_name" ><intent-filter><action android:name="android.intent.action.MAIN" /><category android:name="android.intent.category.LAUNCHER" /></intent-filter></activity><receiver android:name=".SetupLisenerReceiver"  android:label="@string/app_name">   <intent-filter>  <action android:name="android.intent.action.PACKAGE_ADDED" />  <action android:name="android.intent.action.PACKAGE_REMOVED" />  <data android:scheme="package" />  </intent-filter>  </receiver>  </application></manifest>


广播接收器的注释写的很清楚,不仅试用于应用宝,同样适用于任何我们安卓开发者讨厌那些静默安装程序

资源下载地址android 应用程序安装卸载(卸载应用宝)

这篇关于android 应用程序安装卸载(安装应用宝后自动弹出卸载应用宝)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1091888

相关文章

Linux卸载自带jdk并安装新jdk版本的图文教程

《Linux卸载自带jdk并安装新jdk版本的图文教程》在Linux系统中,有时需要卸载预装的OpenJDK并安装特定版本的JDK,例如JDK1.8,所以本文给大家详细介绍了Linux卸载自带jdk并... 目录Ⅰ、卸载自带jdkⅡ、安装新版jdkⅠ、卸载自带jdk1、输入命令查看旧jdkrpm -qa

Python中随机休眠技术原理与应用详解

《Python中随机休眠技术原理与应用详解》在编程中,让程序暂停执行特定时间是常见需求,当需要引入不确定性时,随机休眠就成为关键技巧,下面我们就来看看Python中随机休眠技术的具体实现与应用吧... 目录引言一、实现原理与基础方法1.1 核心函数解析1.2 基础实现模板1.3 整数版实现二、典型应用场景2

MySQL Workbench 安装教程(保姆级)

《MySQLWorkbench安装教程(保姆级)》MySQLWorkbench是一款强大的数据库设计和管理工具,本文主要介绍了MySQLWorkbench安装教程,文中通过图文介绍的非常详细,对大... 目录前言:详细步骤:一、检查安装的数据库版本二、在官网下载对应的mysql Workbench版本,要是

Python Dash框架在数据可视化仪表板中的应用与实践记录

《PythonDash框架在数据可视化仪表板中的应用与实践记录》Python的PlotlyDash库提供了一种简便且强大的方式来构建和展示互动式数据仪表板,本篇文章将深入探讨如何使用Dash设计一... 目录python Dash框架在数据可视化仪表板中的应用与实践1. 什么是Plotly Dash?1.1

Android Kotlin 高阶函数详解及其在协程中的应用小结

《AndroidKotlin高阶函数详解及其在协程中的应用小结》高阶函数是Kotlin中的一个重要特性,它能够将函数作为一等公民(First-ClassCitizen),使得代码更加简洁、灵活和可... 目录1. 引言2. 什么是高阶函数?3. 高阶函数的基础用法3.1 传递函数作为参数3.2 Lambda

Linux安装MySQL的教程

《Linux安装MySQL的教程》:本文主要介绍Linux安装MySQL的教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录linux安装mysql1.Mysql官网2.我的存放路径3.解压mysql文件到当前目录4.重命名一下5.创建mysql用户组和用户并修

Android自定义Scrollbar的两种实现方式

《Android自定义Scrollbar的两种实现方式》本文介绍两种实现自定义滚动条的方法,分别通过ItemDecoration方案和独立View方案实现滚动条定制化,文章通过代码示例讲解的非常详细,... 目录方案一:ItemDecoration实现(推荐用于RecyclerView)实现原理完整代码实现

Java中&和&&以及|和||的区别、应用场景和代码示例

《Java中&和&&以及|和||的区别、应用场景和代码示例》:本文主要介绍Java中的逻辑运算符&、&&、|和||的区别,包括它们在布尔和整数类型上的应用,文中通过代码介绍的非常详细,需要的朋友可... 目录前言1. & 和 &&代码示例2. | 和 ||代码示例3. 为什么要使用 & 和 | 而不是总是使

pip无法安装osgeo失败的问题解决

《pip无法安装osgeo失败的问题解决》本文主要介绍了pip无法安装osgeo失败的问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一... 进入官方提供的扩展包下载网站寻找版本适配的whl文件注意:要选择cp(python版本)和你py

Python循环缓冲区的应用详解

《Python循环缓冲区的应用详解》循环缓冲区是一个线性缓冲区,逻辑上被视为一个循环的结构,本文主要为大家介绍了Python中循环缓冲区的相关应用,有兴趣的小伙伴可以了解一下... 目录什么是循环缓冲区循环缓冲区的结构python中的循环缓冲区实现运行循环缓冲区循环缓冲区的优势应用案例Python中的实现库