码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 一,安卓aosp源码编译环境搭建


    系列文章目录

    第一章 安卓aosp源码编译环境搭建
    第二章 手机硬件参数介绍和校验算法
    第三章 修改安卓aosp代码更改硬件参数
    第四章 编译定制rom并刷机实现硬改(一)
    第五章 编译定制rom并刷机实现硬改(二)
    第六章 不root不magisk不xposed lsposed frida原生修改定位
    第七章 安卓手机环境检测软件分享
    第八章 硬改之设备画像
    第九章 修改Art虚拟机对指定app的指定函数进行拦截(一)
    第十章 修改Art虚拟机对指定app的指定函数进行拦截(二)


    文章目录

    • 系列文章目录
    • 前言
    • 一、物理机还是真机?
    • 二、安卓源码版本与机型
    • 三、编译环境搭建
      • ubunt安装
        • 1.关闭系统休眠
        • 2.增加交换分区
        • 3.更换下载源
        • 4.安装常用软件
        • 5.安装java和python
        • 6.安装编译所需的依赖库
        • 7.安装安卓平台工具
        • 8.拷贝安卓代码
        • 9.下载手机的驱动包
    • 四、视频教程

    前言

    傻瓜式操作, 人人都能编译操作系统, 每个感兴趣的人都可以基于谷歌安卓aosp源码定制自己的系统

    一、物理机还是真机?

    在这里插入图片描述

    真机

    作者测试后没用任何区别,真机优点是编译速度快10%,真机推荐戴尔G15520。满足ubuntu官方认证机型不会出现黑屏,键鼠触摸板不好用等问题,3060显卡还能玩3A大作,以后还可以搭建GPU环境玩人工智能深度学习,具体知识的笔记本型号可以查看这个列表http://ubuntu.com/certified/laptops

    虚拟机

    虚拟机优点是拷贝方便,编译速度也不慢,英特尔的CPU是有对虚拟机优化的指令。虚拟机推荐vmware16,分配CPU:6核+12线程,内存>12G,磁盘空间>300G,操作系统选择:ubuntu20.04(千万别选22.04,全是坑),不要用kali版本,kali在后面会有各种问题,kali擅长渗透,并且是当成一次性工具使用的那种。

    二、安卓源码版本与机型

    推荐安卓源代码版本:andriod-8.1.0_r1

    理由是省磁盘空间,且支持机型较多:piexl2、piexl、piexl C、nexus 6P、nexus 5X

    最新的安卓13代码有100G,手机推荐二手Pixel或者Pixel 3,性价比高,Nexus太老了可以埋了。

    三、编译环境搭建

    ubunt安装

    安装ubunt过程很简单,大约用时20分钟
    在这里插入图片描述
    U版图安装好之后需要做以下修改

    1.关闭系统休眠

    设置-电源-节电-息屏设置为从不

    2.增加交换分区

    编译需要较大的内存

    sudo swapoft -a
    sudo fallocate -| 16G /swapfile
    sudo chmod 600 /swapfile
    sudo mkswap /swapfile
    sudo swapon /swapfile
    
    • 1
    • 2
    • 3
    • 4
    • 5

    设置后输入free -h 查看是否生效
    在这里插入图片描述

    3.更换下载源

    在这里插入图片描述
    由于系统默认使用国外下载源,下载速度很慢,需手动更换至国内下载源,推荐腾讯

    4.安装常用软件

    sudo apt-get update
    sudo apt-get install git net-tools
    sudo apt install -y p7zip-full vim #解压软件
    sudo apt install -y open-vm-tools open-vm-tools-dkms #虚拟机工具
    sudo aptinstall-y meld #文件对比工具
    sudo apt-get install vsftpd # ftp工具(非必须)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    5.安装java和python

    sudo apt-get install openjdk-8-jdk 
    
    • 1

    openjdk支持: aosp8 aosp9
    openjdk11支持: aosp10-13

    sudo apt-get install -y python2
    rm -rf /usr/bin/python
    ln -s /usr/bin/python2 /usr/bin/python
    
    • 1
    • 2
    • 3

    6.安装编译所需的依赖库

    sudo apt-get install -y git-core gnupg flex bison build-essential zip curl
    sudo apt-get install -y zliblg-dev gcc-multilib g++-multilib libc6-dev-i386
    sudo apt-get install -y libncurses5 lib32ncurses5-dev x11proto-core-dev
    sudo apt-get install -y libx11-dev lib32z1-dev libgl1-mesa-dev
    sudo apt-get install -y libxml2-utils xsltproc unzip fontconfig m4
    sudo apt-get install -y libx11-dev:i386 libreadline6-dev:i386
    sudo apt-get install -y gperf libncurses5-dev:i386
    sudo apt-get install -y tofrodos python-markdown zliblg-dev:i386
    sudo apt-get install -y dpkg-dev libsdl1.2-dev ccache
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    7.安装安卓平台工具

    下载安装platform-tools并添加到环境https://developer.android.com/tools/releases/platform-tools

    sudo vim ~/.bashrc
    export PATH=/home/ggg/aosp/platform-tools:$PATH
    sudo source ~/.bashrc
    
    • 1
    • 2
    • 3

    8.拷贝安卓代码

    解压 aosp810r1.7z
    安卓8.1的源码解压后有30G+70万个文件

    不要从谷歌或者镜像服务器下载了,那会等到海枯石烂, 直接把下载好的源码压缩包U盘复制进去就行了

    9.下载手机的驱动包

    因需要下载对应手机的驱动包,具体提取驱动方法请自行百度,各机型的方法都有,本文就不一一阐述

    谷歌手机的驱动从这里下载:https://developers.google.com/android/drivers?hl=zh-cn
    非开源厂商的手机例如小米、一加等,可以从cm下载或者从厂家rom中提取。
    cm下载地址:http://download.lineageos.org/changes

    到这一步环境配置的已经差不多了

    输入以下命令检查环境是否已经配置完成

    free -h
    echo $SHELL
    java -version
    python -v
    cd /home/ggg/aosp/pixel &&source build /envsetup.sh
    lunch aosp_sailfish-user
    make
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    全部通过,那么恭喜你

    四、视频教程

  • 相关阅读:
    基于JAVA+SpringMVC+MYSQL的宠物管理系统
    深入理解heap
    YOLOV7详细解读(四)训练自己的数据集
    用HTML+CSS+JS做一个漂亮简单的公司网站(JavaScript期末大作业)
    Linux Day18 TCP_UDP协议及相关知识
    简单聊一聊中国的房地产
    设计模式之一单一职责原则(东方化)
    【python爬虫】爬虫所需要的爬虫代理ip是什么?
    illustrator插件-将位图矢量化-转为SVG-AI插件
    keil4工程创建并进行流水灯实验
  • 原文地址:https://blog.csdn.net/zad522/article/details/132918302
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号