adb Android禁用四大组件

ComponentName name = new ComponentName(resolveInfo.activityInfo.packageName, resolveInfo.activityInfo.name);
			pm.setComponentEnabledSetting(name, PackageManager.COMPONENT_ENABLED_STATE_disABLED, PackageManager.DONT_KILL_APP);

不可用状态:COMPONENT_ENABLED_STATE_disABLED
可用状态:COMPONENT_ENABLED_STATE_ENABLED
认状态:COMPONENT_ENABLED_STATE_DEFAULT
flags:行为标签,值可以是DONT_KILL_APP或者0。 0说明杀死包含该组件的app

ComponentName 可以是包名类名

adb 手动设置:
adb shell pm enable 包名/类名

例如:adb shell pm enable com.vincent.test/.MainActivity

	   pm clear [--user USER_ID] PACKAGE
       pm enable [--user USER_ID] PACKAGE_OR_COMPONENT
       pm disable [--user USER_ID] PACKAGE_OR_COMPONENT
       pm disable-user [--user USER_ID] PACKAGE_OR_COMPONENT
       pm disable-until-used [--user USER_ID] PACKAGE_OR_COMPONENT
       pm hide [--user USER_ID] PACKAGE_OR_COMPONENT
       pm unhide [--user USER_ID] PACKAGE_OR_COMPONENT

包名类名获取

       //获取其他app的servcie
       List<ResolveInfo> infos2 = pm.queryIntentServices(intent2, 0);
		
		//获取其他app的广播
       List<ResolveInfo> infos3 = pm.querybroadcastReceivers(intent2, 0);
       
       //获取其他app的Activity
      List<ResolveInfo> infos2 = pm.queryIntentActivities(intent2, 0);

		//获取其他app的ContentProvider
       List<ResolveInfo> infos3 = pm.queryContentProviders(intent2, 0);

其中intent2 里面可以设置 action\packageName等过滤

相关文章

显卡天梯图2024最新版,显卡是电脑进行图形处理的重要设备,...
初始化电脑时出现问题怎么办,可以使用win系统的安装介质,连...
todesk远程开机怎么设置,两台电脑要在同一局域网内,然后需...
油猴谷歌插件怎么安装,可以通过谷歌应用商店进行安装,需要...
虚拟内存这个名词想必很多人都听说过,我们在使用电脑的时候...
win11本地账户怎么改名?win11很多操作都变了样,用户如果想要...