当前位置: 首页 > news >正文

陕西启康建设有限公司网站十大免费建站程序wordpress

陕西启康建设有限公司网站,十大免费建站程序wordpress,重庆网站制作和推广公司,郑田生网站建设及维护本文目的主要是记录自己系统(Android7.1系统)开发实现代码,以便后期通用的功能可以直接使用,不需要再去通过搜索然后筛选再验证的繁琐流程,大大减小自己的开发时间。 我实现思路是在系统内新增自己的数据库用来记录禁止…

本文目的主要是记录自己系统(Android7.1系统)开发实现代码,以便后期通用的功能可以直接使用,不需要再去通过搜索然后筛选再验证的繁琐流程,大大减小自己的开发时间。

        我实现思路是在系统内新增自己的数据库用来记录禁止卸载应用名单开关状态以及禁止卸载应用名单列表。为了使系统兼容性更强APP实现难度更低,采用的是通过自定义广播来实现,通过广播进行开关控制以及名单数据传输。

1、在rk3288\frameworks\base\core\java\com\android\server目录下的BootReceiver内新增自定义广播:

 private static final String Uninstall = "android.intent.action.HUALI_TABLE_UNINSTALL"; //新增禁止卸载应用名单private static final String Uninstall2 = "android.intent.action.HUALI_TABLE_UNINSTALL_DELETE"; //删除禁止卸载应用名单
private static final String UninstallStatus = "android.intent.action.HUALI_TABLE_UNINSTALL_STATUS"; // 禁止卸载应用名单状态

2、修改禁止卸载应用名单状态以及列表数据的新增和删除;

 String action = intent.getAction();HLDatabaseHelper dbHelper = new HLDatabaseHelper(context);if (dbHelper.getListStatusDataSize() == 0) { //初始化名单状态表dbHelper.initListStatusData();
}if (action.equals(Uninstall)) {ArrayList<String> whiteList = intent.getStringArrayListExtra("uninstallList");int type = intent.getIntExtra("dataListType", 1);for (String packageName : whiteList) {Log.d(TAG, "新增禁止卸载名单包名:" + packageName + "  类型:" + type);dbHelper.addUninstallData(packageName, type);}
} else if (action.equals(Uninstall2)) {String packageName = intent.getStringExtra("uninstallDelete");Log.d(TAG, "删除禁止卸载名单包名:" + packageName);dbHelper.deleteUninstallData(packageName);
}else if (action.equals(UninstallStatus)) {boolean status = intent.getBooleanExtra("uninstallStatus", false);Log.d(TAG, "接收到更新禁止卸载名单状态通知:" + status);dbHelper.updateData(2, status);
}

3、在 rk3288\frameworks\base\services\core\java\com\android\server\pm\PackageManagerService.java 中实现卸载拦截功能

private int deletePackageX(String packageName, int userId, int deleteFlags) {
......
if (isPackageDeviceAdmin(packageName, removeUser)) {Slog.w(TAG, "Not removing package " + packageName + ": has active device admin");return PackageManager.DELETE_FAILED_DEVICE_POLICY_MANAGER;}//  add for uninstaller black list startif (isOpenUnInstaller()) {if (isUnInstallerEnable(packageName)) {return PackageManager.DELETE_FAILED_INTERNAL_ERROR;}}//  add for uninstaller black list endPackageSetting uninstalledPs = null;......
}//  add for uninstaller black list startprivate boolean isUnInstallerEnable(String packagename) {HLDatabaseHelper dbHelper = new HLDatabaseHelper(mContext);return dbHelper.checkUninstallList(packagename);}//  add for uninstaller black list end//  add 2024-7-10 startprivate boolean isOpenUnInstaller() {HLDatabaseHelper dbHelper = new HLDatabaseHelper(mContext);return dbHelper.getTableStatus(2);}//  add 2024-7-10 end

到此就完成修改了,有疑问的欢迎留言,有什么优化建议的也欢迎留言。

http://www.yayakq.cn/news/829444/

相关文章:

  • 最好的网站制作公司东营市建设管理局
  • 免费网站注册域名简单响应式网站
  • 黄冈网站广西建设网站网址多少
  • 佛山网站排名成都网站建设 天空在线
  • 电子商务网站建设摘要旅游网页制作公司印章
  • 小说网站建设方案书ppt模板网络营销公司哪家服务好
  • 官网的建站过程wordpress开发难吗
  • 电子商务网站建设与管理课程的目的企业管理系统项目简介
  • dede大气黑色网站源码天津建设银行官网站
  • 城建设投资公司网站上海公司注册查询官网
  • 网站建设最便宜建站交流
  • asp.net 手机网站开发如何提高网站的搜索
  • 阿里巴巴做网站需要多少钱秦皇岛房管局备案查询网
  • 浦口建设局网站网络工程师含金量高吗
  • 智能建站工具早期电商平台有哪些
  • 网站怎么做安全wordpress 无法连接到ftp服务器
  • 网站毕设fifa最新排名出炉
  • 江苏建设人才网官方网站网站建设列表网
  • 怎么做直播网站刷弹幕南昌地宝网出租房信息
  • 网站建设项目安排计划表wordpress 自定义参数
  • 沧州市建设局网站开封网站建设哪家好
  • 潍坊知名网站建设最新报价员工入职 在哪个网站做招工
  • 站长工具ip地址查询施工企业资质证书哪里下载
  • 青岛网站建设公司好找吗seo二级目录
  • 做网站店铺图片用什么软件怎么做网站登录站
  • 王磊网络网站建设织梦网站问题
  • 如何自己做解析网站门户网站建设和运行保证的磋商文件
  • 邢台网站制作有哪些php网站开发工程师招聘网
  • 百度推广网站备案wordpress自动转内链
  • 百度小程序跟做网站企业网站只做英文