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

Android 9.0 禁用adb install 安装app功能

1.前言

  在9.0的系统产品定制化开发中,在进行一些定制开发中,对于一些app需要通过属性来控制禁止安装,比如adb install也不允许安装,所以就需要
熟悉adb install的安装流程,然后来禁用adb install安装功能,接下来分析下adb 下的安装流程

2.禁用adb install 安装app功能的核心类

 /system/core/adb/adb_client.cpp/system/core/adb/commandline.cpp

3.禁用adb install 安装app功能的核心功能分析和实现

在9.0的系统rom产品中,在通过adb install 进入 adb install安装模式后正常可以进行安装app的相关操作,而
adb 是pc端工具,adbd是服务端,运行在手机 adbd 读取 socket 解析由 adb 传过来的命令串,解析相关的
命令执行相关功能,所以在pc端输入adb 相关命令 就会在system\core\adb 模块解析相关命令
所以说在abb.cpp中来作为服务端来执行相关功能
 

3.1 adb_client.cpp相关源码分析

在system中的adb install 安装apk的时候会有下面的log,有install字样。会调用StartCommandInProcess和adb_command(const std::string& service)执行命令,adb_client.cpp里面的bin程序一直在读命令ReadProtocolString,abb这个程序开机就在后台运行

  bool adb_command(const std::string& service) {std::string err
http://www.lryc.cn/news/298651.html

相关文章:

  • 华为第二批难题五:AI技术提升六面体网格生成自动化问题
  • 【FFmpeg】ffplay 命令行参数 ⑤ ( 设置音频滤镜 -af 参数 | 设置统计信息 -stats 参数 | 设置同步时钟类型 -sync 参数 )
  • vscode开发FPGA(0)--windows平台搭建
  • Java String源码剖析+面试题整理
  • 探索未来:集成存储器计算(IMC)与深度神经网络(DNN)的机遇与挑战
  • [C/C++] -- CMake使用
  • 笔记本选购配置参数详解
  • 临睡之际的生死思索与生命哲学的启示
  • QT学习(五)C++函数重载
  • 微服务OAuth 2.1扩展额外信息到JWT并解析(Spring Security 6)
  • Python@setter用法介绍
  • 格子表单GRID-FORM | 文档网站搭建(VitePress)与部署(Github Pages)
  • mac无法往硬盘里存东西 Mac硬盘读不出来怎么办 Mac硬盘格式 硬盘检测工具
  • DataX源码分析 reader
  • openssl3.2 - exp - RAND_bytes_ex
  • Oracle中怎么设置时区和系统时间
  • 常见的物联网操作系统介绍
  • 二级C语言笔试10
  • 【WebSocket】微信小程序原生组件使用SocketTask 调用星火认知大模型
  • [1-docker-01]centos环境安装docker
  • 深度学习基础之《深度学习介绍》
  • 4核8g服务器能支持多少人访问?2024新版测评
  • Linux中pipe管道操作
  • 中年中产程序员从西安出发到海南三亚低成本吃喝万里行:西安-南宁-湛江-雷州-徐闻-博鳌-陵水-三亚-重庆-西安(2.游玩过程)
  • day38 面向对象编程、构造函数等(纯概念)
  • nginx用域名http://xx.com/aaa/代理一个网页http://ff.com但是请求资源时发生404
  • NLP_词的向量表示Word2Vec 和 Embedding
  • python:xml.etree 生成思维导图 Freemind文件
  • Solidworks:从2D走向3D
  • 【开源】JAVA+Vue.js实现高校学院网站