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

Android 11.0 禁用adb remount功能的实现

1.概述

 在11.0的系统开发中,在进行某些产品开发中,需要禁用掉adb remount功能,就是不能让系统remount,system分区 vendor分区等
只能有读权限没有写权限,所以接下来看下如何禁用remount功能,接下来就来实现这个功能

2. 禁用adb remount功能的实现的核心类

    system\core\fs_mgr\fs_mgr_remount.cppsystem\core\adb\daemon\services.cpp

3. 禁用adb remount功能的实现的核心功能分析和实现

在pc端连接设备后,进行adb 操作时,通过socket的方式来传输相关的命令到设备来执行,所以
当adb 发送 remount 命令时,系统会调用命令行工具/system/bin/remount来执行具体的 remount 操作。
这个bin文件具体是system/core/fs_mgr/fs_mgr_remount.cpp编译而成,在执行具体挂载操作时,会
重新挂载system分区 vendor分区 product分区等主要分区来实现对system分区 vendor分区 product分区
的读写操作,所以为了禁止对这些分析写操作 就需要禁用remount功能

adb remount 重新挂载system分区,实现对system分区重新挂载,重新挂载的时候将修改分区的属性,常见的修改参数为分区的读写。
使用该命令主要是因为android系统的system分区在启动之后是只读分区,但在开发过程中需要对system分区进行修改,则需重新挂载成读写模式。
'adb remount' 的作用相当于 'adb shell mount -o rw,remount,rw

相关文章:

  • YOLOv5:修改backbone为SPPCSPC
  • Cross-Entropy Loss(多分类损失函数)
  • Linux-bluetooth蓝牙
  • JAVA安全入门之反射
  • mfc140u.dll丢失怎么修复,mfc140u.dll文件有什么作用
  • Android开发知识学习——Kotlin进阶
  • 科学化决策数据分析,先从量化开始
  • .net 写了一个支持重试、熔断和超时策略的 HttpClient 实例池
  • 【Linux】第六站:Centos系统如何安装软件?
  • GCC 编译器 详细总结
  • 刷题笔记day08-字符串01
  • 编译支持GPU的opencv,并供python的import cv2调用
  • 程序员想要网上接单却看花了眼?那这几个平台你可得收藏好了!
  • C++之初始化列表详细剖析
  • 【Algorithm】最容易理解的蒙特卡洛树搜索(Monte Carlo Tree Search,MCTS)算法
  • [译] 怎样写一个基础的编译器
  • 「面试题」如何实现一个圣杯布局?
  • 2017年终总结、随想
  • Android优雅地处理按钮重复点击
  • Angular 响应式表单之下拉框
  • CentOS6 编译安装 redis-3.2.3
  • CSS盒模型深入
  • JavaScript创建对象的四种方式
  • JS基础之数据类型、对象、原型、原型链、继承
  • uni-app项目数字滚动
  • 工作踩坑系列——https访问遇到“已阻止载入混合活动内容”
  • 基于OpenResty的Lua Web框架lor0.0.2预览版发布
  • 基于组件的设计工作流与界面抽象
  • 聊聊redis的数据结构的应用
  • 前端
  • 区块链技术特点之去中心化特性
  • 设计模式 开闭原则
  • 使用 Docker 部署 Spring Boot项目
  • 网页视频流m3u8/ts视频下载
  • #NOIP 2014# day.1 T3 飞扬的小鸟 bird
  • (3)选择元素——(17)练习(Exercises)
  • (C++17) optional的使用
  • (附源码)python房屋租赁管理系统 毕业设计 745613
  • (附源码)spring boot网络空间安全实验教学示范中心网站 毕业设计 111454
  • (附源码)ssm教材管理系统 毕业设计 011229
  • (牛客腾讯思维编程题)编码编码分组打印下标(java 版本+ C版本)
  • .NET Core实战项目之CMS 第一章 入门篇-开篇及总体规划
  • .NET Micro Framework初体验
  • .Net 高效开发之不可错过的实用工具
  • .NET6实现破解Modbus poll点表配置文件
  • .sh文件怎么运行_创建优化的Go镜像文件以及踩过的坑
  • // an array of int
  • ?php echo ?,?php echo Hello world!;?
  • @Builder用法
  • [ vulhub漏洞复现篇 ] AppWeb认证绕过漏洞(CVE-2018-8715)
  • [ web基础篇 ] Burp Suite 爆破 Basic 认证密码
  • [Asp.net MVC]Bundle合并,压缩js、css文件
  • [AutoSar]BSW_OS 02 Autosar OS_STACK
  • [AutoSar]工程中的cpuload陷阱(三)测试
  • [bzoj4010][HNOI2015]菜肴制作_贪心_拓扑排序