连接usb调试adb logcat | grep START 点击应用获取到包名后,去到对应路径对想要屏蔽的apk做判断,如果系统识别到pkgname1里的包名后返回无法安装报错
frameworks/base/services/core/java/com/android/server/pm/PackageManagerService.java
else{// new package install
ps = null;
childPackages = null;
disabledPs = null;
replace = false;
existingPackage = null;
// Remember this for later, in case we need to rollback this install
String pkgName1 = pkg.packageName;
if("mark.fakedevicetest".equals(pkgName1)
|| "com.cpuid.cpu_z".equals(pkgName1)
|| "ru.andr7e.deviceinfohw".equals(pkgName1)){
res.returnCode = PackageManager.INSTALL_FAILED_INTERNAL_ERROR;
throw new PrepareFailure(INSTALL_FAILED_ALREADY_EXISTS,
"Attempt to re-install " + pkgName1
+ "whitout first uninstalling.");
}