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 

证书如何处理的话可以看我以前的文章
相关推荐
蘑菇丁1 小时前
ranger-kms安装
java·ide·eclipse
wind瑞2 小时前
IntelliJ IDEA插件开发-代码补全插件入门开发
java·ide·intellij-idea
阿乾之铭3 小时前
IDEA中创建多模块项目步骤
java·ide·intellij-idea
烬奇小云4 小时前
认识一下Unicorn
android·python·安全·系统安全
顾北川_野16 小时前
Android 进入浏览器下载应用,下载的是bin文件无法安装,应为apk文件
android
CYRUS STUDIO16 小时前
Android 下内联汇编,Android Studio 汇编开发
android·汇编·arm开发·android studio·arm
右手吉他16 小时前
Android ANR分析总结
android
PenguinLetsGo18 小时前
关于 Android15 GKI2407R40 导致梆梆加固软件崩溃
android·linux
杨武博21 小时前
音频格式转换
android·音视频
Byyyi耀1 天前
Jupyter notebook如何加载torch环境
ide·python·jupyter