AOSP去特征|AOSP导入android-studio|AOSP导入clion

什么是AOSP

复制代码
开源性:AOSP的源代码公开,任何人都可以获取和修改,适合想要开发或自定义安卓系统的开发者。
灵活性:AOSP提供了基本的安卓功能,制造商可以基于AOSP开发出自己的定制系统(如三星的One UI、小米的MIUI、华为的EMUI等)。
参考标准:AOSP作为安卓系统的基础,为安卓生态系统中的硬件和软件提供了一个标准。任何符合AOSP标准的应用都可以在AOSP基础上运行。
不包含Google服务:AOSP并不包含Google Play服务(如Google Play商店、Gmail等),这些服务是Google专有的。在中国市场或不依赖Google服务的设备上,厂商可以基于AOSP构建自己的应用商店和服务体系。

脱壳能干吗

复制代码
Root检测绕过
脱壳机
集成证书

过root检测

复制代码
如果root之后手机会有信息特征,app可以通过这些特征来达到闪退或者白屏得效果
检测情况
	比如在系统目录下有没有su命令
		/system/app/Superuser.apk
		/sbin/su
		/system/bin/su
		/system/xbin/su
		/data/local/xbin/su
		/data/local/bin/su
		/system/sd/xbin/su
		/system/bin/.ext/.su
	root权限可能会改变设备的某些系统属性,应用可以通过检查这些属性来判断。
		例如,通过读取getprop命令的输出查看系统参数,或检查ro.debuggable、ro.secure属性是否被更改。

将AOSP导入到Clion

复制代码
在~/bin/aosp 目录中执行下面得操作
source build/envsetup.sh
lunch  
然后选择自己的版本
继续输入下面的
export SOONG_GEN_CMAKEFILES=1
export SOONG_GEN_CMAKEFILES_DEBUG=1
然后进行构建
用clion打开下面得目录
/bin/aosp/out/development/ide/clion/art/runtime/libart-arm64-android

将AOSP导入到Android Studio

复制代码
source ~/bin/aosp/build/envsetup.sh
mmm development/tools/idegen/
	用于编译 AOSP(Android 开源项目)中的 idegen 模块的命令。
	idegen 是一个工具,专门为在 IDE(集成开发环境)中查看和编辑 AOSP 源码而设计。
	通过编译 idegen,可以生成适用于 Android Studio 或 IntelliJ IDEA 的工程配置文件(如 .ipr 和 .iml 文件),从而方便地在这些 IDE 中导入和浏览 AOSP 源码。
development/tools/idegen/idegen.sh
如果显示权限不足没关系 等待即可 
如果完成了会生成
ls ~/bin/aosp/ | grep andro
android.iml
android.ipr

之后配置Android Studio
	1.先创建一个空项目 然后让他去加载gradle 图在下面 这个时间很长感兴趣的可以配置国内源
		https://blog.csdn.net/github_74110837/article/details/143092695 
		上面你那个博客是更还源
	2.在设置栏搜索Android S  找到Android SDK 然后在SDK Platforms中 下载 你所需要的安卓版本 我这里是 10 和11
	3 在设置栏目中找到 SDKTools中 下载NDK CMake 这两个  图在下面
用 android studio打开 ~/bin/aosp/android,ipr  这时间就很长了 大概得半个小时了




脱壳

复制代码
正向开发 
先需要将app打包成apk 之后在进行加壳 使用第三方加固  也就是将apk提交给第三方加固 然后就可以发布app了
加固方式有
	VMP加固 虚拟机保护   (自定义虚拟机)虚拟机运行此代码 -> 手机在运行 
	整体加固 直接整体加固
	抽取加固 只有骨架没有血肉 执行功能填充  整体思路就是主动运行某个方法的时候抽出来保存
	其实大型app对速度有要求的一般都是不加壳的

文件修改

关闭 senlinux

复制代码
~/bin/aosp/system/core/init/selinux.cpp
如果没动过话 在106行数 加入 return false


开启adbd得root权限

复制代码
~/bin/aosp/system/core/adb/daemon/main.cpp

去除aosp特征值

复制代码
下两个是指纹信息是该Android版本在于app眼中是什么存在
	正式版本
	调试版本
所以要改成正式版本
/aosp/build/tools/buildinfo.sh
/aosp/build/tools/buildinfo_common.sh
还有其他特征值

修改PTRACE_TRACEME
	~/bin/aosp/bionic/libc/bionic/ptrace.cpp
	获取当前进程id 并且获取 prtace进程 那么就退出
修改得地方如下图



证书增添

复制代码
将弄好得证书放入到
~/bin/aosp/system/ca-certificates/files 

证书如何处理的话可以看我以前的文章
相关推荐
非凡ghost1 小时前
JRiver Media Center(媒体管理软件)
android·学习·智能手机·媒体·软件需求
席卷全城1 小时前
Android 推箱子实现(引流文章)
android
齊家治國平天下1 小时前
Android 14 系统中 Tombstone 深度分析与解决指南
android·crash·系统服务·tombstone·android 14
HarrySunCn2 小时前
如何使用VSCode开发Arduino项目
ide·vscode·单片机·编辑器
maycho1233 小时前
MATLAB环境下基于双向长短时记忆网络的时间序列预测探索
android
思成不止于此4 小时前
【MySQL 零基础入门】MySQL 函数精讲(二):日期函数与流程控制函数篇
android·数据库·笔记·sql·学习·mysql
brave_zhao4 小时前
达梦数据库(DM8)支持全文索引功能,但并不直接兼容 MySQL 的 FULLTEXT 索引语法
android·adb
sheji34164 小时前
【开题答辩全过程】以 基于Android的网上订餐系统为例,包含答辩的问题和答案
android
知青先生4 小时前
E9项目调试方式
java·ide
easyboot4 小时前
C#使用SqlSugar操作mysql数据库
android·sqlsugar