1.下载对应版本的GMS套件
地址:http://wiki.rootzwiki.com/Gapps
GMS套件目录结构如下:
|-- gapps | |-- META-INF | `-- system |-- addon.d |-- app |-- etc |-- framework |-- lib |-- tts `-- usr
2.获取分区表信息
方法一、下载卡刷包,解压缩压缩包中的update.zip,在update目录下取出scatter.txt文件,该文件已包含分区表信息;
方法二、如果没有卡刷包,可以下载线刷包,找到MT6589_Android_scatter_emmc.txt文件,将文件中的分区表信息修改为如下格式,文件另存为:scatter.txt,保存在gapps目录下
PRELOADER 0x0 MBR 0xc00000 EBR1 0xc80000 __NODL_PMT 0xd00000 __NODL_PRO_INFO 0x1100000 __NODL_NVRAM 0x1400000 __NODL_PROTECT_F 0x1900000 __NODL_PROTECT_S 0x2300000 __NODL_SECCFG 0x2d00000 UBOOT 0x2d20000 BOOTIMG 0x2d80000 RECOVERY 0x3380000 SEC_RO 0x3980000 __NODL_MISC 0x3f80000 LOGO 0x4000000 EBR2 0x4300000 __NODL_EXPDB 0x4380000 ANDROID 0x4d80000 CACHE 0x4fd80000 USRDATA 0x6f180000 __NODL_FAT 0xcf180000
3.在gapps目录下创建文件type.txt,文件内容为1(添加该文件的目的是因为mtk平台recovery会通过该文件来判断该包是哪种类型的包)
如果有卡刷包,解压缩压缩包中的update.zip,取出update目录下的type.txt文件;
添加文件后的GMS套件目录结构:
|-- gapps
| |-- type.txt
| |-- scatter.txt
| |-- META-INF
| `-- system
|-- addon.d
|-- app
|-- etc
|-- framework
|-- lib
|-- tts
`-- usr
4.修改META-INF/com/google/android/updater-script脚本
按照附件(updater-script)内容格式修改脚本
5.打包
cd gapps/ zip ../gapps.zip * -r9
6.签名
signX1 gapps.zip gapps_signed.zip //signX1是保存在~/bin下面的签名脚本文件,~/bin目录已在环境变量中,signX1内容如下: java -Xmx2048m -jar /home/ckt/bin/signX/signapk.jar -w /home/ckt/bin/signX/releasekey.x509.pem /home/ckt/bin/signX/releasekey.pk8 $@ signX/signapk.jar 文件来自mt6589/vendor/mediatek/ckt89_we_jb2/artifacts/out/host/linux-x86/framework/signapk.jar ~/bin/signX/releasekey.x509.pem 和 ~/bin/signX/releasekey.pk8签名文件可从项目build/target/product/security/ckt89_we_jb2/目录下取得
7.验证
adb reboot recovery,进入recovery后,选择adb 方式; adb sideload gapps_signed.zip 重启手机
通过以上几步就可以轻松制作GMS卡刷包。
对于我们来说,想安装GMS套件,可以通过adb sync来安装GMS套件,也可以直接通过adb push的方式。