Android系统定制开发过程快速查找定位分析代码的方法

news2025/1/19 23:15:44

推荐阅读

​Android系统开发过程快速查找定位代码的方法

Android10以上系统定制Root权限(隐藏Root权限)

商务合作

2023年招聘

2023年逆向分析资料汇总

Android系统开发过程,经常需要进行文件查找、代码查找,常用find和grep查找命令

1.find命令

根据文件的属性进行文件查找

文件属性:

文件名、文件大小、所有者、所属组、是否为空、访问时间、修改时间等

(1).按文件名查找

find / -name PowerManagerService.java

表示在根目录下查找PowerManagerService.java文件,相当于在整个磁盘查找

find frameworks/ -name PowerManagerService.java

表示在frameworks目录下查找PowerManagerService.java文件

find frameworks/ -name 'PowerManager*'

表示使用通配符*(0个或任意多个),在frameworks目录下查找文件名开头是字符串'PowerManager'的文件

find . -name 'PowerManager*'

表示在当前目录下(包含子目录)查找文件名开头是字符串'PowerManager'的文件。

(2).按照文件特征查找

find frameworks/ -amin -10

表示在frameworks目录下查找最后10分钟访问的文件

2.grep命令

grep命令的主要参数

-i:不区分大小写-n:显示匹配行及行号-r:包含子目录-c:只输出匹配行的计数-w:匹配整个单词

grep 参数 "内容" 查找目录或文件

(1).按内容查找

grep 'set' Power*

显示所有以Power开头的文件中包含set的行

grep Power ShutdownThread.java

显示ShutdownThread.java文件包含Power的行

grep Power PowerManagerService.java

显示PowerManagerService.java文件包含Power的行

grep -n -i "Shutdown" PowerManagerService.java

显示PowerManagerService.java文件包含Shutdown的行

grep -n -i "Reboot" PowerManagerService.java

显示PowerManagerService.java文件包含Reboot的行

grep -n -i -r "Shutdown" power/

显示power目录下(包含子目录)的文件包含Shutdown的行

grep -n -i -r "createVirtualDisplay" frameworks/

显示frameworks目录下(包含子目录)的文件包含createVirtualDisplay的行

3.findgrep命令结合使用

先使用find命令查找文件,然后使用grep命令查找哪些文件包含某个字符串

find frameworks/ -name "*.java" | xargs grep -n "Shutdown"

find frameworks/ -name "*.cpp" | xargs grep -n "main"

4.常用查找命令

find . -name "*.cpp" | xargs grep -n "xxx"find . -name "xxx.cpp"find . -name "xxx.java"find . -name xxx.javafind . -name "*.java" | xargs grep -n "xxx"find . -name "*.bp" | xargs grep -n "xxx"find . -name "*.xml" | xargs grep -n "xxx"find . -name "*.sh" | xargs grep -n "xxx"find . -name "*.mk" | xargs grep -n "xxx"find . -name "*.prop" | xargs grep -n "xxx"grep xxx xxx.javagrep -n -i "xxx" xxx.javagrep -n -i -r "xxx" frameworks/

find . -name "*.java" | xargs grep -n "shutdownOrRebootInternal"

推荐阅读

Android adb命令总结

Android adb常用命令

玩转Android adb命令(adb降级)

检测车机中ADB远程调试控制Android系统攻击

Android ANR/Crash Log日志分析技巧总结(建议收藏)

Android系统定制/测试(Crash/ANR等Bug/性能分析必备技巧)

Android系统源码在线阅读(Android4~Android13)

http://aospxref.com/http://androidxref.com/https://aosp.opersys.com/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/161502.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

短短六年时间冲到二奢品类第一,妃鱼如何做到的?

随着消费需求不断增长,二手奢侈品市场近五年来快速向规模化、平台化发展,妃鱼、红布林、胖虎等二奢电商品牌迅速崛起,成为风头劲胜的网红。国泰君安研究报告显示,中国闲置高端消费品零售市场规模已从2016年162亿元增长至2020年的5…

Vue js混淆加密 webpack-obfuscator

公司要求加密混淆js 之前 是用的glifyjs-webpack-plugin ,感觉不行。 然后使用了webpack-obfuscator 非常nice~,除了打包出来体积会有点大,浏览的网页会变慢,选择最低是就还好, 有多个条件属性可以选择, 可以选择高度混…

networkx学习(三) 随机网络

networkx学习(三) 随机网络 1.规则网络 2.随机网络的生成算法 第一种:G(N,L) import random import itertoolsdef GNL(N, L):G = nx.Graph()G.

硬盘数据如何恢复?电脑硬盘资料恢复,方法就是这么简单!

硬盘作为重要的存储设备,里面保存的数据是很重要的。日常生活和工作中,硬盘发生数据丢失也是很常见的事情,比如:误删重要文件并清空了回收站、文件打不开提示格式化、分区变成RAW格式、电脑重新分区等。各种数据丢失原因数不胜数。…

卷积神经网络-cnn和lstm

文章目录1. 卷积神经网络1.1 卷积神经网络的基础1.2 卷积神经网络和传统的网络的区别1.3 卷积的作用1.3.1 图像颜色通道1.3.2 卷积的次数1.4 卷积层涉及的参数1.4.1 滑动窗口的步长1.4.2 卷积核的大小1.4.3 边缘填充1.4.4 卷积核的个数1.4.5 卷积参数共享1.5 池化层1.6 整体网络…

如何在Microsoft Word设置导航窗格以重新排列页面

本文包括使用导航窗格和复制粘贴在Microsoft Word 2019、2016和Office 365中移动页面的说明。 Microsoft Word不会将文档视为单独页面的集合,而是将其视为一个长页面。因此,重新排列Word文档可能会很复杂。在Word中移动页面的一种更简单的方法是使用导航窗格。 注意:要在导…

Vue 3 桌面应用开发(文末附视频)

在正式开始之前,我想先直接“输出”一些背景信息,既能阐明我的观点,也希望可以坚定你学习本小册的决心。 首先,桌面应用开发在未来一定会大放异彩,桌面应用相对于移动应用来说优势非常明显(交互区域更大、…

TCP/IP网络编程(3)——地址族与数据序列

文章目录第 3 章 地址族与数据序列3.1 分配给套接字的 IP 地址与端口号3.1.1 网络地址(Internet Address)3.1.2 网络地址分类与主机地址边界3.1.3 用于区分套接字的端口号3.2 地址信息的表示3.2.1 表示 IPV4 地址的结构体3.2.2 结构体 sockaddr_in 的成员…

王道操作系统笔记(二)———— 进程与线程

文章目录一、进程的概念和特征1.1 进程的概念1.2 进程的组成1.3 进程的特征1.4 进程的状态与转换1.5 进程控制1.6 进程的通信1.6.1 共享存储1.6.2 消息传递1.6.3 管道通信1.7 父进程与子进程二、线程概念和多线程模型2.1 线程的概念2.2 线程的属性2.3 线程的实现方式2.4 多线程…

C#【必备技能篇】DatagridView添加行时,设置行标题单元格的值为行数

文章目录1、DatagridView添加行的代码2、方法一:【每次添加行都重新刷新了全部的行数,不推荐】3、方法二:【只有一个DatagridView时,推荐此方法】4、方法三:【通用方法,多个DatagridView都有这个需求时&…

利用 Burp Suite 进行密码爆破

利用 Burp Suite 进行密码爆破1.Intruder 功能介绍2.攻击类型3.实战4.验证码爆破1.Intruder 功能介绍 使用 BP 工具的 Intruder 模块高度可配置,可以对目标网站进行密码爆破,一般被用于网站的安全渗透测试场景 BP 工具的 Intruder 模块包含几个功能标签…

解决2022.3.1版本中 IDEA中 XML文件屎黄色背景 的方法

问题:在idea打开mybatis的xml映射文件,出现大面积黄色背景提示 1:打开文件,点击设置 2:打开编辑器--> 检查--> SQL 3:受不了,我的是中文,我换成英文继续了 找到 No data sou…

CDH6.3.2 ORC文件格式 Spark引擎查询数组越界异常

组件版本: flink1.13.2 cdh6.3.2 hive2.1.1 问题描述: CDH6.3.2 ORC文件格式 Spark引擎查询数组越界异常 java.io.IOException: java.lang.ArrayIndexOutOfBoundsException: 7 ‘org.apache.orc.impl.ReaderImpl::ReaderImpl.java:385’, org.apache.hadoop.hive.ql.io.orc.Re…

解决OBS录屏模糊问题

相信大家在使用OBS过程中也会遇到录屏模糊的问题,网上有很多配置教程,尝试了视频比特率、提高OBS当中其他的硬件参数。 模糊是要分情况的,如果是静态情况下模糊,就是屏幕不动的时候录制的视频也很模糊,那就是视频的基…

linux中使用KubeSphere和k8s 部署springboot项目

1、创建项目----》按照做的项目名称建 创建一个项目 创建后,如图所示: 2、工作负载---》就是创建服务容器Prod第一步:创建一个工作负载服务-->基本信息第二步:容器组设置 设置容器端口,健康检查,环境…

基于Gentoo发行版本的Calculate Linux 23发布

导读Calculate Linux 是一个为在组织环境中快速部署而优化的 Linux 发行版。它以 Gentoo Linux 项目为基础,包括许多预配置的功能。 Calculate Linux 以五种方式发布。Calculate Linux Desktop(CLD)、Calculate Directory Server(…

【涵子来信python大全】——第二季——opencv第三篇-numpy和颜色通道解释

各位亲爱的读者,博主: 大家好,我是涵子。今天我们继续讲讲opencv,讲讲其中numpy的秘密。如果不清楚上一章的内容,请从链接或者主页回去先读一遍之前的文章,否则今天的内容很难理解。 【涵子来信&pyth…

人工智能ai写作系统,ai智能写作机器人

人工智能AI大数据深度:基于伪原创算法,采用神经网络算法,在超过1535000篇文章中进行自动学习、聚合算法进行人工智能的创建,内容语义不变,媒体阿里、腾讯、百度均于日前在百家号内容创作者盛典上推出人工智能创作支撑平…

Vue2 Vuex在大型项目中的应用

文章目录前言一、总体结构二、代码结构1. 文件层2. 一级功能模块3. 二级功能模块4. 总状态总结前言 参考去年参与的大型ERP项目, 我主要负责财务模块的前端部分. 这个项目有几百个前端页面(具体多少没算过), 状态管理结构应该是具有参考价值的. 一、总体结构 项目标准中约定仅…

CobaltStrike与Metasploit联动方法

文章目录CobaltStrike联动Metasploit方法一方法二Metasploit联动CobaltStrikeCobaltStrike联动Metasploit CobaltStrike (简称CS)及 MetaSploit (简称MSF)各有所长,CS更适合作为稳控平台,MSF更适用于与各类…