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 

证书如何处理的话可以看我以前的文章
相关推荐
阿巴斯甜18 小时前
Android 报错:Zip file '/Users/lyy/develop/repoAndroidLapp/l-app-android-ble/app/bu
android
Kapaseker18 小时前
实战 Compose 中的 IntrinsicSize
android·kotlin
xq952719 小时前
Andorid Google 登录接入文档
android
黄林晴21 小时前
告别 Modifier 地狱,Compose 样式系统要变天了
android·android jetpack
冬奇Lab1 天前
Android触摸事件分发、手势识别与输入优化实战
android·源码阅读
城东米粉儿1 天前
Android MediaPlayer 笔记
android
Jony_2 天前
Android 启动优化方案
android
阿巴斯甜2 天前
Android studio 报错:Cause: error=86, Bad CPU type in executable
android
张小潇2 天前
AOSP15 Input专题InputReader源码分析
android
_小马快跑_2 天前
Kotlin | 协程调度器选择:何时用CoroutineScope配置,何时用launch指定?
android