android如何禁止安装第三方应用
16lz
2021-12-04
在PackageManagerService.java installPackageLI 函数做处理
private void installPackageLI(InstallArgs args, PackageInstalledInfo res) { final int installFlags = args.installFlags; final String installerPackageName = args.installerPackageName; final String volumeUuid = args.volumeUuid; final File tmpPackageFile = new File(args.getCodePath()); final boolean forwardLocked = ((installFlags & PackageManager.INSTALL_FORWARD_LOCK) != 0); final boolean onExternal = (((installFlags & PackageManager.INSTALL_EXTERNAL) != 0) || (args.volumeUuid != null)); final boolean instantApp = ((installFlags & PackageManager.INSTALL_INSTANT_APP) != 0); final boolean fullApp = ((installFlags & PackageManager.INSTALL_FULL_APP) != 0); final boolean forceSdk = ((installFlags & PackageManager.INSTALL_FORCE_SDK) != 0); final boolean virtualPreload = ((installFlags & PackageManager.INSTALL_VIRTUAL_PRELOAD) != 0); boolean replace = false; @ScanFlags int scanFlags = SCAN_NEW_INSTALL | SCAN_UPDATE_SIGNATURE; /*meig:jicong.wang add for task 4616 start {@*/ if (mSystemReady) { if (!SystemProperties.getBoolean("persist.sys.installed", false)) { res.setReturnCode(PackageManager.INSTALL_FAILED_INVALID_APK); return; } } /*meig:jicong.wang add for task 4616 end @}*/
同时添加persist.sys.installed 来控制是否开发安装app应用。
更多相关文章
- Pycharm安装PyQt5的详细教程
- 箭头函数的基础使用
- Python技巧匿名函数、回调函数和高阶函数
- Android(安卓)-- EditText插入表情
- Android(安卓)Studio3.0 Error:Execution failed for task ':app
- 简析android:installLocation
- Android(安卓)- 自定义标题栏(TitleBar)
- windows下搭建cocos2dx Android开发环境
- Android(安卓)Setting中添加解除屏幕锁选项