KK版本GMS预置

 KK版本必须预置KK版本的GMS。由于KK GMS相对以前版本有部分修改,直接预置会导致编译问题。


1.打开GMS编译开关
/mediatek/config/common/ProjectConfig.mk
 BUILD_GMS = yes

2.修改GMS预置条件
/build/target/product/common.mk,将以下内容(如果有出入,请以修改后为标准):
#--GMS feature-----
ifeq ($(strip $(BUILD_GMS)), yes)
 $(call inherit-product-if-exists, vendor/google/products/gms.mk)
 PRODUCT_PROPERTY_OVERRIDES += \
 >>>> ORIGINAL //ALPS_SW/FPB/KK1.MP1.FPB/alps/build/target/product/common.mk#1
 ==== THEIRS //ALPS_SW/FPB/KK1.MP1.FPB/alps/build/target/product/common.mk#8
     ro.com.google.clientidbase=alps-$(TARGET_PRODUCT)-{country} \
     ro.com.google.clientidbase.ms=alps-$(TARGET_PRODUCT)-{country} \
     ro.com.google.clientidbase.yt=alps-$(TARGET_PRODUCT)-{country} \
     ro.com.google.clientidbase.am=alps-$(TARGET_PRODUCT)-{country} \
     ro.com.google.clientidbase.gmm=alps-$(TARGET_PRODUCT)-{country}
 ==== YOURS //ws_wcpadmin_3010_bj/ALPS_SW/MP/KK1.MP1/alps/build/target/product/common.mk
       ro.com.google.clientidbase=alps-$(TARGET_PRODUCT)-{country} \
       ro.com.google.clientidbase.ms=alps-$(TARGET_PRODUCT)-{country} \
       ro.com.google.clientidbase.yt=alps-$(TARGET_PRODUCT)-{country} \
       ro.com.google.clientidbase.am=alps-$(TARGET_PRODUCT)-{country} \
       ro.com.google.clientidbase.gmm=alps-$(TARGET_PRODUCT)-{country}
 <<<<
 endif

修改为=>

#--GMS feature-----
ifeq ($(strip $(BUILD_GMS)), yes)
 $(call inherit-product-if-exists, vendor/google/products/gms.mk)
 PRODUCT_PROPERTY_OVERRIDES += \
     ro.com.google.clientidbase=alps-$(TARGET_PRODUCT)-{country}
 endif

ps: 以上内容(第2步骤)包含调用gms.mk,以及设置client id
如果项目不需要设置client id,请将其中的
PRODUCT_PROPERTY_OVERRIDES += \
     ro.com.google.clientidbase=alps-$(TARGET_PRODUCT)-{country}
去掉;
 如果需要预置,则将“alps-$(TARGET_PRODUCT)”修改为对应的client id值;
 字段"-{country}"的作用是,根据插入的sim卡自适应显示对应的国家码,如果此项目不需要client id根据mcc自适应,则将字段"-{country}"去掉即可

3. webview实现冲突解决方案
由于Google对GMS的WebView检测策略的改变,所以如果预置GMS必须预置其中的WebViewGoogle,这样将会把默认的webview覆盖掉

4. 如果预置以下所列GMS应用,需要给它们获取系统权限
ConfigUpdater.apk GmsCore.apk GoogleBackupTransport.apk GoogleFeedback.apk GoogleLoginService.apk
 GoogleOneTimeInitializer.apk GooglePartnerSetup.apk GoogleServicesFramework.apk Phonesky.apk SetupWizard.apk Velvet.apk
请在/vendor/google/apps/Android.mk
每一个应用对应的build语句添加:
LOCAL_PRIVILEGED_MODULE := true

5. 如果预置GMS中的Videos.apk,则将/mediatek/packages/apps/VideoPlayer/Android.mk删除

6.lib库重命名
frameworks/support/renderscript/v8/rs_support/Android.mk: libRSSupport -> libRSSupport_old (2 places)
 frameworks/support/renderscript/v8/jni/Android.mk: librsjni -> librsjni_old and libRSSupport -> libRSSupport_old (2 places)
 libnativehelper/Android.mk:  libnativehelper_compat -> libnativehelper_compat_old
ps: 第6步骤的修改,如果您发现在原生code中,这些库的修改已经包含在
ifeq ($(strip $(BUILD_GMS)), yes)
 endif
中,可以不再修改

7. 由于兼容性问题,请不要预置GoogleCamera.apk和GalleryGoogle.apk:
7.1 将\google\libs\Android.mk中的以下内容注释掉:
include $(CLEAR_VARS)
LOCAL_PREBUILT_LIBS := libgcam.so \
                       libgcam_swig_jni.so \
                       libjni_eglfence.so \
                       libjni_filtershow_filters.so \
                       libjni_mosaic.so \
                       libjni_tinyplanet.so \
                       libjpeg.so \
                       liblightcycle.so \
                       libnativehelper_compat.so
LOCAL_MODULE_TAGS := optional
include $(BUILD_MULTI_PREBUILT)

7.2 将\google\apps\Android.mk中的以下内容注释掉:

include $(CLEAR_VARS)
 LOCAL_MODULE := GoogleCamera
LOCAL_MODULE_TAGS := optional
LOCAL_OVERRIDES_PACKAGES := Camera2
LOCAL_SRC_FILES := $(LOCAL_MODULE).apk
LOCAL_MODULE_CLASS := APPS
LOCAL_MODULE_SUFFIX := $(COMMON_ANDROID_PACKAGE_SUFFIX)
LOCAL_REQUIRED_MODULES := libgcam \
                          libgcam_swig_jni \
                          libjni_eglfence \
                          libjni_filtershow_filters \
                          libjni_mosaic \
                          libjni_tinyplanet \
                          libjpeg \
                          liblightcycle \
                          libnativehelper_compat
 LOCAL_CERTIFICATE := PRESIGNED
 include $(BUILD_PREBUILT)

以及

include $(CLEAR_VARS)
LOCAL_MODULE := GalleryGoogle
 LOCAL_MODULE_TAGS := optional
 LOCAL_OVERRIDES_PACKAGES := Gallery2
 LOCAL_SRC_FILES := $(LOCAL_MODULE).apk
 LOCAL_MODULE_CLASS := APPS
 LOCAL_MODULE_SUFFIX := $(COMMON_ANDROID_PACKAGE_SUFFIX)
 LOCAL_CERTIFICATE := PRESIGNED
include $(BUILD_PREBUILT)

7.3 将\google\products\gms.mk
 PRODUCT_PACKAGES += \下面的
#     GoogleCamera \
 #     GalleryGoogle \
注释掉
ps: 以上内容(第7步骤)是把GoogleCamera、GalleryGoogle以及相关的lib库移除

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值