一键杀死最近打开APP
App 打开 一键 最近 杀死
2023-09-14 09:09:54 时间
1.AndroidManifest.xml添加:
android:sharedUserId="android.uid.system"
2.Android.mk添加:
LOCAL_CERTIFICATE := platform
3.MainActivity.java
public void kill_recent_app(){
pm = getPackageManager();
am = (ActivityManager)getSystemService(Context.ACTIVITY_SERVICE);
recentTasks = am.getRecentTasks(20, ActivityManager.RECENT_IGNORE_UNAVAILABLE);
numTasks = recentTasks.size();
first = 0;
homeInfo = new Intent(Intent.ACTION_MAIN).addCategory(Intent.CATEGORY_HOME).resolveActivityInfo(pm, 0);
for (int i = first, index = 0; i < numTasks && (index < 20); ++i) {
recentInfo = recentTasks.get(i);
m_intent = new Intent(recentInfo.baseIntent);
if (recentInfo.origActivity != null) {
m_intent.setComponent(recentInfo.origActivity);
}
Log.e(TAG, "PackageName = " + m_intent.getComponent().getPackageName());
// Don't load the current home activity.
Log.e(TAG, "Our homeInfo = " + homeInfo);
if (isCurrentHomeActivity(m_intent.getComponent(), homeInfo)) {
continue;
}
// Don't load ourselves
Log.e(TAG, "Our PackageName = " + getPackageName());
if (m_intent.getComponent().getPackageName().equals(getPackageName())) {
continue;
}
stopProcess(m_intent.getComponent().getPackageName());
}
}
public void stopProcess(String packageName){
try {
Log.e("recentpanview", "--------------stopProcess()-------------");
ActivityManager mActivityMgr = (ActivityManager) this.getSystemService(Context.ACTIVITY_SERVICE);
//第一种:采用反射
Method forceStopPackage = mActivityMgr.getClass().getDeclaredMethod("forceStopPackage", String.class);
forceStopPackage.setAccessible(true);
forceStopPackage.invoke(mActivityMgr, packageName);
//第二种:直接调用
//mActivityMgr.forceStopPackage(packageName);
} catch (Exception e) {
e.printStackTrace();
}
}
4.指定kill掉天天动听、喜马拉雅等app
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.app.Activity;
import android.content.ComponentName;
import android.content.Context;
import java.lang.Exception;
import android.app.ActivityManager;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.content.pm.ActivityInfo;
import android.content.pm.ResolveInfo;
import android.os.PowerManager;
import java.util.ArrayList;
import java.util.List;
public void kill_recent_app(){
ActivityManager.RecentTaskInfo recentInfo;
Intent m_intent;
PackageManager pm = getApplicationContext().getPackageManager();
ActivityManager am = (ActivityManager)getSystemService(Context.ACTIVITY_SERVICE);
List<ActivityManager.RecentTaskInfo> recentTasks = am.getRecentTasks(20, ActivityManager.RECENT_IGNORE_UNAVAILABLE);
recentTasks = am.getRecentTasks(20, ActivityManager.RECENT_IGNORE_UNAVAILABLE);
int numTasks = recentTasks.size();
for(int i = 0; i < numTasks; i++){
recentInfo = recentTasks.get(i);
m_intent = new Intent(recentInfo.baseIntent);
if (recentInfo.origActivity != null) {
m_intent.setComponent(recentInfo.origActivity);
}
Log.e(TAG, " packageName = " + m_intent.getComponent().getPackageName() + " i = "
+ i + " numTasks = " + numTasks);
try {
ActivityManager mActivityMgr = (ActivityManager)this.getSystemService(Context.ACTIVITY_SERVICE);
//依次kill掉需要kill的app
if(m_intent.getComponent().getPackageName().equals("com.sds.android.ttpod") == true){
mActivityMgr.forceStopPackage(m_intent.getComponent().getPackageName());
}else if(m_intent.getComponent().getPackageName().equals("com.ximalaya.ting.android.car") == true){
mActivityMgr.forceStopPackage(m_intent.getComponent().getPackageName());
}
}catch (Exception e){
e.printStackTrace();
}
}
}
相关文章
- 京东在html5页面中打开本地app的解决方案
- 实现微信浏览器内打开App Store链接
- Windows Store App JavaScript 开发:页内导航
- [PWA] Add web app to your Home Screen
- Attempt to write to field 'android.support.v4.app.FragmentManagerImpl android.support.v4.app.Fragment.mFragmentManager' on a null object reference
- 安卓逆向5,脱壳实战,模拟器安装使用,Xposed安装使用,fdex2脱壳,app抓包,找到接口参数加密的地方,逆向出来,引力播app
- uni-app:使用全局函数和全局变量判断当前平台(hbuilderx 3.6.18)
- [AFUI] App Framework Plugins
- Android 10.0 app应用保活设置oom_adj的值为0
- Android 10.0 自定义开机向导app
- js 判断通过什么打开(安卓、苹果、微信、QQ、浏览器、某个app应用…)
- android系统app打开蓝牙+设置可见性
- 2020,最新APP重构:网络请求框架 | 必读
- csdn的app打开贴子显示空白?