gms包集成步骤:

(1) 需要下载对应gms,国内需要通过VPN下载。下载后解压,文件目录:partner_gms。下载时,最好核对一下匹配的android版本。

(2)依照路径打开gms.mk/gms_go.mk,如:partner_gms\products\gms.mk。确认需要将GMS集成的代码位置,例如:

         # GMS home folder location
         # Note: we cannot use $(my-dir) in this makefile
         ANDROID_PARTNER_GMS_HOME := vendor/partner_gms

        注:也就是集成路径默认在vendor下面,当然路径与路径命名也可以做修改。

(3)编译环境添加gms方法: 在

device/mediatek/common/device.mk 与

device/mediatek/system/common/device.mk (因我这是android 10.0版本所以还得在此文件)内添加,

# GMS interface
ifdef BUILD_GMS
ifeq ($(strip $(BUILD_GMS)), yes)
 ifeq ($(strip $(BUILD_AGO_GMS)), yes)
 $(call inherit-product-if-exists, vendor/partner_gms/products/gms_go.mk)
 else
$(call inherit-product-if-exists, vendor/partner_gms/products/gms.mk)
 endif

endif
endif

(4)添加了GMS编译后,就得定义BUILD_GMS属性,在以下两文件可定义

device/mediateksample/xxxx/ProjectConfig.mk 文件内添加 BUILD_GMS = yes,

因版本是android10.0所在还得打开device/mediateksample/xxxx/ 文件夹下的full_xxxx .mk文件 看此文件的属性

SYS_TARGET_PROJECT := mssi_t_32_cn  

然后再打开device/mediatek/system/mssi_t_32_cn/SystemConfig.mk文件添加 BUILD_GMS = yes属性

(5)android 10.0 版本添加GMS包需要同时加入mainline代码

如未加入此文件夹 编译会出现如下异常:

此文件夹可以去google官网下载,

(6)因为系统内原本是自带了各类APP,而加入GMS包后就造成了很多APP重复,系统内同名APP,而packageinstaller
此APP系统内是只允许有一个的,如果系统内同时存在多个packageinstaller则会造成无法开机,一直卡在开机时Android界面,所以需要把开vendor\partner_gms\apps\GooglePackageInstaller\Android.mk文件

添加入属性: LOCAL_OVERRIDES_PACKAGES := PackageInstaller
MtkPackageInstaller  来避免出现两个一样的apk,

其它同名APP也是一样,打开对应APP的Android.mk文件添加此属性

技术
今日推荐
PPT
阅读数 99
下载桌面版
GitHub
百度网盘(提取码:draw)
Gitee
云服务器优惠
阿里云优惠券
腾讯云优惠券
华为云优惠券
站点信息
问题反馈
邮箱:ixiaoyang8@qq.com
QQ群:766591547
关注微信