首页
社区
课程
招聘
[原创]编译xposed并完成刷机
发表于: 2020-7-27 09:32 8175

[原创]编译xposed并完成刷机

2020-7-27 09:32
8175

编译完aosp源码,开始编译xposed
原贴地址
535K9s2c8@1M7q4)9K6b7g2)9J5c8W2)9J5c8Y4A6Z5j5h3!0^5K9h3&6U0K9r3g2F1k6#2)9J5k6h3y4G2L8g2)9J5c8X3W2F1k6r3g2^5i4K6u0W2M7r3S2H3i4K6u0r3x3U0l9J5x3q4)9J5c8U0l9%4i4K6u0r3x3U0c8Q4x3V1k6Q4x3U0g2W2y4#2)9J5y4h3u0U0i4K6t1#2z5e0k6Q4x3U0g2W2z5q4)9J5y4h3q4X3i4K6t1#2z5e0q4^5M7r3!0K6k6h3c8Q4x3V1j5`.
在谷歌云上高速编译安卓AOSP ROM、驱动、内核并完成刷机

安卓设备 sailfish
编译环境
推荐kali(最终是在kali上搞定)

XposedTools

修改配置文件

如下配置

xposed
xposed为整个Xposed框架的native部分,主要内容为xposed修改的app_process源码和相关库文件.这里需要提一下,这部分源码有两种同步方式.第一采用修改local_manifests,然后repo sync的方式.第二种则为手动下载合并.本文采用第二种方式.

初始化编译环境

编译XposedBridge

编译完成

python3会出现 print错误
修改build/tools/findleaves.py里面的print r为print(r) 即可

大小写敏感问题
mac 分区是默认不是大小敏感,所以需要重新分区。
参考这里 ba8K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6T1L8r3!0Y4i4K6u0W2j5X3W2Z5k6e0l9^5x3K6u0Q4x3X3g2U0L8$3#2Q4x3V1k6E0j5h3y4Q4x3X3c8V1K9i4y4C8i4K6u0V1N6i4c8A6L8r3W2@1P5g2)9J5k6h3S2@1L8h3H3`.

apt install git -y
git config --global user.email "your mail"
git config --global user.name "your name"
apt install -y gcc make libstdc++.i686 libstdc++-devel.i686 zlib-devel openssl-devel perl cpio expat-devel gettext-devel autoconf glibc.i686 glibc-devel.i686 zlib-devel.i686 libstdc++.i686 libX11-devel.i686 ncurses-devel.i686 ncurses-libs.i686 gperf flex gcc-c++ bison patch
apt install -y java-1.8.0-openjdk.x86_64 java-1.8.0-openjdk-devel.x86_64 java-1.8.0-openjdk-headless.x86_64
apt install perl -y
apt -q perl-CPAN
mkdir ~/bin
PATH=~/bin:$PATH
curl -sSL  '3f3K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4k6i4u0J5K9i4c8Q4x3X3c8Y4L8$3!0Y4L8r3g2K6L8%4g2J5j5$3g2Q4x3X3g2H3M7X3!0^5P5g2)9J5k6i4g2K6N6r3y4D9N6h3N6Q4x3X3g2G2M7X3N6Q4x3V1k6Y4K9i4c8Q4x3X3c8J5k6i4m8G2i4K6u0r3i4K6u0n7i4K6u0r3L8h3q4K6N6r3g2J5i4K6u0r3M7X3g2H3L8#2)9K6c8X3k6G2M7X3#2S2N6q4)9K6c8q4c8q4h3q4c8Q4x3U0M7`. |base64 -d > ~/bin/repo
chmod +x ~/bin/repo
export REPO_URL='291K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6E0K9i4u0J5L8%4u0K6i4K6u0W2N6s2g2F1j5g2)9J5k6i4c8K6K9h3&6Y4K9s2g2S2i4K6u0W2k6h3c8#2i4K6u0W2j5$3&6Q4x3V1k6Y4K9i4c8Q4x3V1k6Y4K9i4c8Q4x3X3c8J5k6i4m8G2i4K6t1%4
yum install htop -y
mkdir n/
cd /root/n/
repo init -u 81cK9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6S2L8X3c8J5L8$3W2V1i4K6u0W2k6$3!0G2k6$3I4W2M7$3!0#2M7X3y4W2i4K6u0W2j5$3!0E0i4K6u0r3M7r3I4S2N6r3k6G2M7X3#2Q4x3V1k6E0j5h3&6A6k6X3g2K6N6l9`.`.
repo init -u 06bK9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6E0K9i4u0J5L8%4u0K6i4K6u0W2N6s2g2F1j5g2)9J5k6i4c8K6K9h3&6Y4K9s2g2S2i4K6u0W2k6h3c8#2i4K6u0W2j5$3&6Q4x3V1k6Y4K9i4c8Q4x3V1k6m8e0#2y4b7i4K6u0r3M7r3I4S2N6r3k6G2M7X3#2Q4x3V1k6E0j5h3&6A6k6X3g2K6N6l9`.`. -b android-7.1.2_r33 --depth=1
repo sync
repo sync -j8 #8个线程同步代码
nohup repo sync -j8 >>sync.log 2>&1 & #推荐:后台去同步,ssh断开也没事。
cd ~
git clone 903K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1k6J5L8%4k6G2z5o6W2Q4x3V1k6j5M7r3!0K6k6h3c8f1L8$3!0D9M7#2)9J5k6h3N6A6N6l9`.`.
cp build.conf.sample build.conf
vim build.conf
 [General]
 outdir = /root/n/out #输出目录,out一定要存在
 javadir = /root/n/XposedBridge #XposedBridge的 位置

 [Build]
 # Please keep the base version number and add your custom suffix
 version = 89 (custom build by xyz / %s)#我们这里是89版本
 makeflags = -j8 #8个线程同步

[GPG]
sign = release
user = 852109AA!

# Root directories of the AOSP source tree per SDK version
[AospDir]
#19 = /android/aosp/440
#21 = /android/aosp/500
25 = /root/n #安卓7.1源码位置,上边两个注释
# SDKs to be used for compiling BusyBox
# Needs 0feK9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1k6J5L8%4k6G2z5o6W2Q4x3V1k6S2L8X3c8J5L8$3W2V1i4K6g2X3k6i4S2@1k6i4u0F1j5h3I4Q4y4h3k6T1N6i4y4&6j5X3!0^5
[BusyBox]#下面的都改成25,看资料说不改也行
arm = 25
x86 = 25
armv5 = 25
cd /root/n
cd frameworks/base/cmds/
git clone 29dK9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1k6J5L8%4k6G2z5o6W2Q4x3V1k6j5M7r3!0K6k6h3c8Q4x3X3g2Y4K9i4b7`. xposed
cd /root/n
rm -rf art
git clone 88bK9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1k6J5L8%4k6G2z5o6W2Q4x3V1k6S2L8X3c8J5L8$3W2V1i4K6g2X3j5i4u0@1i4K6u0W2k6$3W2@1 -b xposed-nougat-mr2  art
cd /root/n
git clone 03aK9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1k6J5L8%4k6G2z5o6W2Q4x3V1k6j5M7r3!0K6k6h3c8n7M7X3W2V1k6$3g2Q4x3X3g2Y4K9i4b7`.
sdk.dir=/root/Android/sdk#自己的sdk目录
source build/envsetup.sh
lunch
cd /root/XposedTools
 ./build.pl -a java
BUILD SUCCESSFUL

Total time: 1.478 secs

Copying APK to XposedBridge.jar...
Skipping non-existent /Users/zxc/Android/n/XposedBridge/app/build/outputs/apk/app-release.apk
Skipping non-existent /Users/zxc/Android/n/XposedBridge/app/build/outputs/apk/app-release-unaligned.apk
/Users/zxc/Android/n/XposedBridge/app/build/outputs/apk/app-release-unsigned.apk => /Users/zxc/Android/n/out/java/XposedBridge.jar

Done!
./build.pl -t arm64:25 #25是sdk版本 对应安卓7.1
sudo apt-get  install libxml2-utils

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

最后于 2020-8-1 17:20 被mb_aoooaosd编辑 ,原因:
收藏
免费 3
支持
分享
最新回复 (6)
雪    币: 2708
活跃值: (1723)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
2
我直接放到 assets 目录了  
2020-7-27 10:39
0
雪    币: 5
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
3
用docker编译,环境不用愁
2020-7-27 14:20
1
雪    币: 147
活跃值: (277)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
想问问 刷机这 
public Builder setUrl(String url)
是那个文件里面的呀?
2020-7-30 16:32
0
雪    币: 7048
活跃值: (7587)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
5
别致疯子 想问问 刷机这 public Builder setUrl(String url) 是那个文件里面的呀?
全局搜一下呢
2020-7-30 20:58
0
雪    币: 1
活跃值: (259)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
我现在都是直接改magisk +Riru+ EdXposed那一套了,xposed现在有点老了,不支持高版本
2020-8-2 17:54
0
雪    币: 119
活跃值: (1778)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
xposed能支持64位的模拟器吗? x86_64
2020-8-27 14:03
0
游客
登录 | 注册 方可回帖
返回