android gms包

android gms包

2018-11-27 20:34:15 WTBEE 阅读数 10782

    众所周知,国内发布的手机基本上都不包含Google GMS服务,所以要使用Google原生的一些应用或是从GooglePlay下载国外的APP的话就必须刷GMS服务,本文记录了基于Android 9.0版本刷GMS包的全过程,供有需要的人参考!说明:下面步骤介绍的某些网站或资源需要FQ才能获取(你懂的...),此外,手机要能root。

1. 从如下链接 Open GAPPS下载所需要的GMS包

https://opengapps.org/

关于各Variant差异的说明可以参考:https://jakting.com/archives/gapps-links-what.html

 

2. 下载好相应的包后(我这里下载的是aroma版本),请解压到个人电脑指定的路径下面(文件路径中的压缩包,也需要一并解压出来)。解压出来的文件目录大致如下:

其中Core路径下是GMS服务的一些核心APK,是我们能否使用GMS服务的基础。比如:

Core\gmscore-arm64\gmscore-arm64\nodpi\priv-app\PrebuiltGmsCorePi\PrebuiltGmsCorePi.apk

Core\gsfcore-all\gsfcore-all\nodpi\priv-app\GoogleServicesFramework\GoogleServicesFramework.apk

GApps路径下是Google的一些原生应用,在GMS服务安装好之后可以根据喜好自行安装即可。

 

3. 前面解压出来的文件通过上面的路径就可以看出,他们原本应该在系统中的路径是什么,比如前面的GoogleServicesFramework.apk应该在/system/priv-app/路径中,以此类推,有的配置文件、jar包等都可以通过解压出来的路径推断出其在系统中的路径。我这里将所有需要用到的资源整理如下:

priv-app路径内容一览:

 

4.   第3步中将解压出来的资源归类整理的目的是方便后续将这些APK等用adb脚本批量push到手机中、以达到刷入GMS服务的目的。所以,接下来我们就可以新建脚本将这些资源通过adb push到手机对应的路径中去,我这里编写的脚本主要内容如下(如第3步,整理的资源路径在D盘的gms文件夹下):

    adb wait-for-device
    adb root
	adb remount
    adb wait-for-device
	
	echo "------------------- wtbee start push GMS --------------------"
	adb push D:\gms\9.0\app\. /system/app/
	adb push D:\gms\9.0\priv-app\. /system/priv-app/
	adb push D:\gms\9.0\system\etc\default-permissions /system/etc/
	adb push D:\gms\9.0\system\etc\permissions\. /system/etc/permissions/
	adb push D:\gms\9.0\system\etc\preferred-apps\ /system/etc/
	adb push D:\gms\9.0\system\etc\sysconfig\. /system/etc/sysconfig/
	adb push D:\gms\9.0\system\framework\. /system/framework/
	adb push D:\gms\9.0\system\lib64\. /system/lib64/
	echo "------------------- wtbee push GMS done -------------------------"	

5. 待脚本执行成功之后,重启手机并生效。此时,手机基本就具备了GMS服务。但是,Google为了确保装有 Google 应用的 Android 设备可以正常运行,设备必须符合以下条件才能获得 Google 认证:

    装有获得 Google 许可的专属应用

    通过了 Android 兼容性测试

所以,此时手机联网且能FQ的前提下,机器会提示进行Google GMS设备认证。如果你的设备无法认证,没关系、好在Google提供了自定义ROM用户设备注册的功能,可以在如下网站中输入GMS框架的Android ID来注册。

https://www.google.com/android/uncertified/

如何获得这个Android ID了? 有两种办法,一种是通过连接电脑后,使用 ADB 命令:

adb shell settings get secure android_id

另外一种方法是安装一个叫做 Device ID 的应用,这是由著名的 apk 下载服务商 Evozi 提供的应用。(注意,如果应用打开后没有显示GSF的ID,可以在第4步完毕后重启手机,并联网开启Google服务认证,过会时间后重启手机再次打开APK就可以看到。 )

说明,一定要将GSF ID转换为十进制去注册。有一个网站可以参考:https://www.rapidtables.com/convert/number/hex-to-decimal.html

 

6. 待设备注册完成后,过会时间再进行设备认证的话就可以成功了,此时会让你登录Google账号。到此,恭喜你!!!你的设备可以使用Google GMS 服务以及Google 原生应用了。

 

附录:

手机注册Android服务需要FQ,介绍一款VPN应用:

https://download.csdn.net/download/wtbee/10811482

Device ID APK:

https://download.csdn.net/download/wtbee/10811472

我实测可用的完整GMS包整理(内含使用说明):

https://download.csdn.net/download/wtbee/10811497

 

展开阅读原文
                                        <svg aria-hidden="true" class="icon">
                                            <use xlink:href="#csdnc-chevrondown"></use>
                                        </svg>
                                    </a>
                                </div>
                            </dd>

                                                        <div class="blog_list_b clearfix">
                                <p class="title">
                                    <span>android gms包 </span><span> 相关内容</span>
                                </p>
                                <div class="tag_list">
                                                                                <label>
                                            <a href="https://www.csdn.net/gather_2a/MtTagg5sMzI2NC1ibG9n.html" class="tag" target="_blank">android 暴力反射</a>
                                        </label>
                                                                                <label>
                                            <a href="https://www.csdn.net/gather_22/MtTagg5sNzU4NS1ibG9n.html" class="tag" target="_blank">android 类冲突</a>
                                        </label>
                                                                                <label>
                                            <a href="https://www.csdn.net/gather_22/MtTagg5sOTgyNC1ibG9n.html" class="tag" target="_blank">android获取用户行为信息</a>
                                        </label>
                                                                                <label>
                                            <a href="https://www.csdn.net/gather_20/MtTakgwsMDI0MS1ibG9n.html" class="tag" target="_blank">android异步回调处理</a>
                                        </label>
                                                                                <label>
                                            <a href="https://www.csdn.net/gather_27/MtTakgwsMjc5MS1ibG9n.html" class="tag" target="_blank">android 文件删除保存</a>
                                        </label>
                                                                                <label>
                                            <a href="https://www.csdn.net/gather_2f/MtTakgwsMzA1NC1ibG9n.html" class="tag" target="_blank">android滑动按钮</a>
                                        </label>
                                                                                <label>
                                            <a href="https://www.csdn.net/gather_26/MtTakgwsMzY3NC1ibG9n.html" class="tag" target="_blank">android 突出菜单</a>
                                        </label>
                                                                                <label>
                                            <a href="https://www.csdn.net/gather_21/MtTakgwsNDE5MC1ibG9n.html" class="tag" target="_blank">android 文字颜色 点击</a>
                                        </label>
                                                                                <label>
                                            <a href="https://www.csdn.net/gather_2e/MtTakgwsNDUxNi1ibG9n.html" class="tag" target="_blank">android 原理 更新 热</a>
                                        </label>
                                                                                <label>
                                            <a href="https://www.csdn.net/gather_2e/MtTakgwsNTAxOC1ibG9n.html" class="tag" target="_blank">android 中间大两边小</a>
                                        </label>
                                                                                                                                                                        <label>
                                                <a href="https://www.csdn.net/xuexi/kecheng-MtjakgwsNDUtZWR1.html" class="tag" target="_blank"> 使用WTL进行Windows桌面应用开发-第二部</a>
                                            </label>
                                                                                                                                                                            <label>
                                                <a href="https://www.csdn.net/xuexi/kecheng-MtjaYgxsNDktZWR1.html" class="tag" target="_blank"> 使用WTL进行Windows桌面应用开发-第一部</a>
                                            </label>
                                                                                                                                                                            <label>
                                                <a href="https://www.csdn.net/xuexi/kecheng-Mtjakg0sNTMtZWR1.html" class="tag" target="_blank"> Windows C/C++ 与 逆向</a>
                                            </label>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        </div>
                            </div>
                                                </div>
                                        <div class="tag_blog_list_item clearfix">
                        <dt class="clearfix">
                            <div class="tag_blog_t">
                                <span class="blog_type">原</span>

Android 8.1 MTK平台 导入GMS包后安装的应用无法启动, GoogleDialerGo

2018-05-08 18:26:30 zengxx1989 阅读数 1807

在Android 8.1 的代码里面,导入GMS包后发现系统应用可以正常运动,但安装的三方应用直接 就是闪退,一直以为是GMS导致的问题。

添加GMS 包(GooglepackageInstaller里面有LOCAL_OVERRIDES_PACKAGES MtkPackageInstaller ), 后安装的应用无法启动,闪退 

经过验证,发现是由于使用了google 的 GooglepackageInstaller,换成MtkPackageInstaller就可以了,根据GOOGLE 的要求,GooglepackageInstaller是mandatory的包。为什么使用GooglepackageInstaller安装应用会造成应用无法启动?

解决方法:

关闭这两个宏测试看下:
MTK_MOBILE_MANAGEMENT = no和MTK_PERMISSION_CONTROL = no。
这两个宏是mtk自己的权限管理。
安装了GMS后用的是google的,目前遇到的case会有冲突的情况,导致应用打不开。
所以需要关闭这两个宏。

因为安装了GMS后,是不需要使用MTK的权限管理的,所以关闭宏没有影响。

二,导入GoogleDialerGo 之后,拨号之后无法正常显示CallUI,

分析原因还是因为MTK把默认的Telecomm 从 packages\services 下移到了 vendor/mediatek/proprietary/packages/services 目录下去,导致GoogleDialerGo 里面的overlay 失效;

解决方法:修改GMS包 partner_gms\apps_go\GoogleDialerGo 目录 下的 overlay ,添加复制packages/services/Telecomm/res/values/config.xml,把文件夹名字改成下面这样, v endor/mediatek/proprietary/packages/services/Telecomm/res/values/config.xml

config.xml 内容修改后如下:

<resources>
    <!-- Package name for the default in-call UI and dialer [DO NOT TRANSLATE] -->
    <string name="ui_default_package" translatable="false">com.google.android.dialer</string>
&lt;!-- Class name for the default main Dialer activity [DO NOT TRANSLATE] --&gt;
&lt;string name="dialer_default_class" translatable="false"&gt;com.google.android.dialer.extensions.GoogleDialtactsActivity&lt;/string&gt;

&lt;!-- Class name for the default incall activity [DO NOT TRANSLATE] --&gt;
&lt;string name="incall_default_class" translatable="false"&gt;com.android.incallui.InCallServiceImpl&lt;/string&gt;

</resources>

修改前内容:

    <!-- Package name for the default in-call UI and dialer [DO NOT TRANSLATE] -->
<string name=“ui_default_package” translatable=“false”>com.android.dialer</string>
&lt;!-- Class name for the default in-call UI Service [DO NOT TRANSLATE] --&gt;
&lt;string name="incall_default_class" translatable="false"&gt;com.android.incallui.InCallServiceImpl&lt;/string&gt;

&lt;!-- Class name for the default main dialer activity [DO NOT TRANSLATE] --&gt;
&lt;string name="dialer_default_class" translatable="false"&gt;com.android.dialer.DialtactsActivity&lt;/string&gt;</pre><br><br><br>                                    </div>
                                <div class="hide_part" data-report-click="{&quot;mod&quot;:&quot;popu_799&quot;,&quot;strategy&quot;:&quot;SOOPENSEARCH&quot;}" style="display: none;">
                                    <a href="javascript:void(0);" class="readmore_btn">展开阅读原文

                                        <svg aria-hidden="true" class="icon">
                                            <use xlink:href="#csdnc-chevrondown"></use>
                                        </svg>
                                    </a>
                                </div>
                            </dd>

                                                        <div class="blog_list_b clearfix">
                                <p class="title">
                                    <span>android gms包 </span><span> 相关内容</span>
                                </p>
                                <div class="tag_list">
                                                                                <label>
                                            <a href="https://www.csdn.net/gather_2a/MtTagg5sMzI2NC1ibG9n.html" class="tag" target="_blank">android 暴力反射</a>
                                        </label>
                                                                                <label>
                                            <a href="https://www.csdn.net/gather_22/MtTagg5sNzU4NS1ibG9n.html" class="tag" target="_blank">android 类冲突</a>
                                        </label>
                                                                                <label>
                                            <a href="https://www.csdn.net/gather_22/MtTagg5sOTgyNC1ibG9n.html" class="tag" target="_blank">android获取用户行为信息</a>
                                        </label>
                                                                                <label>
                                            <a href="https://www.csdn.net/gather_20/MtTakgwsMDI0MS1ibG9n.html" class="tag" target="_blank">android异步回调处理</a>
                                        </label>
                                                                                <label>
                                            <a href="https://www.csdn.net/gather_27/MtTakgwsMjc5MS1ibG9n.html" class="tag" target="_blank">android 文件删除保存</a>
                                        </label>
                                                                                <label>
                                            <a href="https://www.csdn.net/gather_2f/MtTakgwsMzA1NC1ibG9n.html" class="tag" target="_blank">android滑动按钮</a>
                                        </label>
                                                                                <label>
                                            <a href="https://www.csdn.net/gather_26/MtTakgwsMzY3NC1ibG9n.html" class="tag" target="_blank">android 突出菜单</a>
                                        </label>
                                                                                <label>
                                            <a href="https://www.csdn.net/gather_21/MtTakgwsNDE5MC1ibG9n.html" class="tag" target="_blank">android 文字颜色 点击</a>
                                        </label>
                                                                                <label>
                                            <a href="https://www.csdn.net/gather_2e/MtTakgwsNDUxNi1ibG9n.html" class="tag" target="_blank">android 原理 更新 热</a>
                                        </label>
                                                                                <label>
                                            <a href="https://www.csdn.net/gather_2e/MtTakgwsNTAxOC1ibG9n.html" class="tag" target="_blank">android 中间大两边小</a>
                                        </label>
                                                                                                                                                                        <label>
                                                <a href="https://www.csdn.net/xuexi/kecheng-MtjakgwsNDUtZWR1.html" class="tag" target="_blank"> 使用WTL进行Windows桌面应用开发-第二部</a>
                                            </label>
                                                                                                                                                                            <label>
                                                <a href="https://www.csdn.net/xuexi/kecheng-MtjaYgxsNDktZWR1.html" class="tag" target="_blank"> 使用WTL进行Windows桌面应用开发-第一部</a>
                                            </label>
                                                                                                                                                                            <label>
                                                <a href="https://www.csdn.net/xuexi/kecheng-Mtjakg0sNTMtZWR1.html" class="tag" target="_blank"> Windows C/C++ 与 逆向</a>
                                            </label>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        </div>
                            </div>
                                                </div>
                                        <div class="tag_blog_list_item clearfix">
                        <dt class="clearfix">
                            <div class="tag_blog_t">
                                <span class="blog_type">原</span>

GMS 包配置说明

2017-11-01 20:20:30 wed110 阅读数 3048

\build\target\product\generic_no_telephony.mk 

添加 

$(call inherit-product, $(SRC_TARGET_DIR)/product/core.mk)   --原有位置下面加下面这行
$(call inherit-product, vendor/google/products/gms.mk) 


build\tools\buildinfo.sh 

添加4个属性




L 、M版本  GMS包预制

Google为了简化GMS的预置流程,对Android源代码和GMS做了相应的处理
所以L版本GMS预置比较简单,只需要把GMS需要预置内容放置在 

1.在alps/vendor/google/下创建Android.mk 文件

文件夹下(google文件夹需要自行创建) 
  
然后检查vendor/google/下是否存在Android.mk文件,若没有此Android.mk,请新建一个,并把以下内容拷贝进去: 
ifdef BUILD_GMS 
ifeq ($(strip $(BUILD_GMS)), yes) 
include $(call all-subdir-makefiles) 
endif 
endif 
  

2.检查vendor/google/以下两个文件夹apps/ 和 frameworks/

第一层目录下是否存在Android.mk
如果不存在,也各新建一个,将以下内容拷贝进去:
include $(call all-subdir-makefiles)
 
最后在build的时候带入"BUILD_GMS=yes",如:
source build/envsetup.sh && lunch full_<YourProjectName>-user && source ./mbldenv.sh && BUILD_GMS=yes make -j24
 
 
若提示找不到mbldenv.sh,则使用如下命令:
source build/envsetup.sh && lunch full_<YourProjectName>-user && BUILD_GMS=yes make -j24   

注意,源代码的build文件中会有判断 BUILD_GMS 的值做不同build行为的语句,请不要修改,否则会造成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覆盖掉 
具体预置操作方法请参考[FAQ11120] KK版本GMS包Chromium相关文件合入注意事项_FAQ 
  

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库移除,



展开阅读原文
                                        <svg aria-hidden="true" class="icon">
                                            <use xlink:href="#csdnc-chevrondown"></use>
                                        </svg>
                                    </a>
                                </div>
                            </dd>

                                                        <div class="blog_list_b clearfix">
                                <p class="title">
                                    <span>android gms包 </span><span> 相关内容</span>
                                </p>
                                <div class="tag_list">
                                                                                <label>
                                            <a href="https://www.csdn.net/gather_2a/MtTagg5sMzI2NC1ibG9n.html" class="tag" target="_blank">android 暴力反射</a>
                                        </label>
                                                                                <label>
                                            <a href="https://www.csdn.net/gather_22/MtTagg5sNzU4NS1ibG9n.html" class="tag" target="_blank">android 类冲突</a>
                                        </label>
                                                                                <label>
                                            <a href="https://www.csdn.net/gather_22/MtTagg5sOTgyNC1ibG9n.html" class="tag" target="_blank">android获取用户行为信息</a>
                                        </label>
                                                                                <label>
                                            <a href="https://www.csdn.net/gather_20/MtTakgwsMDI0MS1ibG9n.html" class="tag" target="_blank">android异步回调处理</a>
                                        </label>
                                                                                <label>
                                            <a href="https://www.csdn.net/gather_27/MtTakgwsMjc5MS1ibG9n.html" class="tag" target="_blank">android 文件删除保存</a>
                                        </label>
                                                                                <label>
                                            <a href="https://www.csdn.net/gather_2f/MtTakgwsMzA1NC1ibG9n.html" class="tag" target="_blank">android滑动按钮</a>
                                        </label>
                                                                                <label>
                                            <a href="https://www.csdn.net/gather_26/MtTakgwsMzY3NC1ibG9n.html" class="tag" target="_blank">android 突出菜单</a>
                                        </label>
                                                                                <label>
                                            <a href="https://www.csdn.net/gather_21/MtTakgwsNDE5MC1ibG9n.html" class="tag" target="_blank">android 文字颜色 点击</a>
                                        </label>
                                                                                <label>
                                            <a href="https://www.csdn.net/gather_2e/MtTakgwsNDUxNi1ibG9n.html" class="tag" target="_blank">android 原理 更新 热</a>
                                        </label>
                                                                                <label>
                                            <a href="https://www.csdn.net/gather_2e/MtTakgwsNTAxOC1ibG9n.html" class="tag" target="_blank">android 中间大两边小</a>
                                        </label>
                                                                                                                                                                        <label>
                                                <a href="https://www.csdn.net/xuexi/kecheng-MtjakgwsNDUtZWR1.html" class="tag" target="_blank"> 使用WTL进行Windows桌面应用开发-第二部</a>
                                            </label>
                                                                                                                                                                            <label>
                                                <a href="https://www.csdn.net/xuexi/kecheng-MtjaYgxsNDktZWR1.html" class="tag" target="_blank"> 使用WTL进行Windows桌面应用开发-第一部</a>
                                            </label>
                                                                                                                                                                            <label>
                                                <a href="https://www.csdn.net/xuexi/kecheng-Mtjakg0sNTMtZWR1.html" class="tag" target="_blank"> Windows C/C++ 与 逆向</a>
                                            </label>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        </div>
                            </div>
                                                </div>
                                        <div class="tag_blog_list_item clearfix">
                        <dt class="clearfix">
                            <div class="tag_blog_t">
                                <span class="blog_type">原</span>

android 添加gms包-7.0

2018-04-17 11:54:34 u010672559 阅读数 2587

1.打包步骤

先将解压的partner_gms复制粘贴到vender下面,然后在

device\xxx\xxx\full_xxx_.mk中添加,

#xiaozheng add

BUILD_GMS := yes

注:实际是使device\mediatek\common\device.mk中的

ifdef BUILD_GMS

ifeq ($(strip $(BUILD_GMS)), yes)

$(call inherit-product-if-exists, vendor/google/partner_gms/gms.mk)生效

2.编译报错

vendor/google/apps/WebViewGoogle/Android.mk:21: *** ro.product.first_api_level property is undefined

需要在

vendor\partner_gms\products\gms.mk中添加

#xiaozheng add

PRODUCT_PROPERTY_OVERRIDES += <br>
ro.product.first_api_level=24 <br>
注:关联gms.mk文件的语句记得跟实际路径想对应,才能关联上,别搞成了vendor/google/products/gms.mk

device\mediatek\common\device.mk

$(call inherit-product-if-exists, vendor/partner_gms/products/gms.mk)

3.编译报错

ninja: error: ‘vendor/partner_gms/etc/preferred-apps/google.xml’, needed by ‘out/target/product/xxx/system/etc/preferred-apps/google.xml’, missing and no known rule to make it

make: *** [ninja_wrapper] 错误 1

vender下面的文件夹命名不能按以前的google了,应该按实际的路径来写为partner_gms

4.开机导航跳不过去,修改vendor/partner_gms/products/gms.mk里面的属性值any改成OPTIONAL

PRODUCT_PROPERTY_OVERRIDES += <br>
    ro.product.first_api_level=24 <br>
    ro.setupwizard.require_network=OPTIONAL <br>
    ro.setupwizard.mode=OPTIONAL <br>
    ro.com.google.gmsversion=7.0_r7

                                </div>
                                <div class="hide_part" data-report-click="{&quot;mod&quot;:&quot;popu_799&quot;,&quot;strategy&quot;:&quot;SOOPENSEARCH&quot;}" style="display: none;">
                                    <a href="javascript:void(0);" class="readmore_btn">展开阅读原文

                                        <svg aria-hidden="true" class="icon">
                                            <use xlink:href="#csdnc-chevrondown"></use>
                                        </svg>
                                    </a>
                                </div>
                            </dd>

                                                        <div class="blog_list_b clearfix">
                                <p class="title">
                                    <span>android gms包 </span><span> 相关内容</span>
                                </p>
                                <div class="tag_list">
                                                                                <label>
                                            <a href="https://www.csdn.net/gather_2a/MtTagg5sMzI2NC1ibG9n.html" class="tag" target="_blank">android 暴力反射</a>
                                        </label>
                                                                                <label>
                                            <a href="https://www.csdn.net/gather_22/MtTagg5sNzU4NS1ibG9n.html" class="tag" target="_blank">android 类冲突</a>
                                        </label>
                                                                                <label>
                                            <a href="https://www.csdn.net/gather_22/MtTagg5sOTgyNC1ibG9n.html" class="tag" target="_blank">android获取用户行为信息</a>
                                        </label>
                                                                                <label>
                                            <a href="https://www.csdn.net/gather_20/MtTakgwsMDI0MS1ibG9n.html" class="tag" target="_blank">android异步回调处理</a>
                                        </label>
                                                                                <label>
                                            <a href="https://www.csdn.net/gather_27/MtTakgwsMjc5MS1ibG9n.html" class="tag" target="_blank">android 文件删除保存</a>
                                        </label>
                                                                                <label>
                                            <a href="https://www.csdn.net/gather_2f/MtTakgwsMzA1NC1ibG9n.html" class="tag" target="_blank">android滑动按钮</a>
                                        </label>
                                                                                <label>
                                            <a href="https://www.csdn.net/gather_26/MtTakgwsMzY3NC1ibG9n.html" class="tag" target="_blank">android 突出菜单</a>
                                        </label>
                                                                                <label>
                                            <a href="https://www.csdn.net/gather_21/MtTakgwsNDE5MC1ibG9n.html" class="tag" target="_blank">android 文字颜色 点击</a>
                                        </label>
                                                                                <label>
                                            <a href="https://www.csdn.net/gather_2e/MtTakgwsNDUxNi1ibG9n.html" class="tag" target="_blank">android 原理 更新 热</a>
                                        </label>
                                                                                <label>
                                            <a href="https://www.csdn.net/gather_2e/MtTakgwsNTAxOC1ibG9n.html" class="tag" target="_blank">android 中间大两边小</a>
                                        </label>
                                                                                                                                                                        <label>
                                                <a href="https://www.csdn.net/xuexi/kecheng-MtjakgwsNDUtZWR1.html" class="tag" target="_blank"> 使用WTL进行Windows桌面应用开发-第二部</a>
                                            </label>
                                                                                                                                                                            <label>
                                                <a href="https://www.csdn.net/xuexi/kecheng-MtjaYgxsNDktZWR1.html" class="tag" target="_blank"> 使用WTL进行Windows桌面应用开发-第一部</a>
                                            </label>
                                                                                                                                                                            <label>
                                                <a href="https://www.csdn.net/xuexi/kecheng-Mtjakg0sNTMtZWR1.html" class="tag" target="_blank"> Windows C/C++ 与 逆向</a>
                                            </label>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        </div>
                            </div>
                                                </div>
                                        <div class="tag_blog_list_item clearfix">
                        <dt class="clearfix">
                            <div class="tag_blog_t">
                                <span class="blog_type">原</span>

Android 增加GMS包后提示权限问题

2017-09-15 10:33:39 CodingNotes 阅读数 1188

问题:Android 7.1.1 增加GMS包后提示“权限被拒绝。您可以依次选择'设置'>'应用'来更改权限。

该问题是GMS包里面的APK和系统应用冲突

例如:MtkCalendar 和 CalendarGoogle

    Chrome 和  MtkBrowser   

在GMS包的相应的APK中的Android.mk文件修改:LOCAL_OVERRIDES_PACKAGES := MtkBrowser Browser2

展开阅读原文
                                        <svg aria-hidden="true" class="icon">
                                            <use xlink:href="#csdnc-chevrondown"></use>
                                        </svg>
                                    </a>
                                </div>
                            </dd>

                                                        <div class="blog_list_b clearfix">
                                <p class="title">
                                    <span>android gms包 </span><span> 相关内容</span>
                                </p>
                                <div class="tag_list">
                                                                                <label>
                                            <a href="https://www.csdn.net/gather_2a/MtTagg5sMzI2NC1ibG9n.html" class="tag" target="_blank">android 暴力反射</a>
                                        </label>
                                                                                <label>
                                            <a href="https://www.csdn.net/gather_22/MtTagg5sNzU4NS1ibG9n.html" class="tag" target="_blank">android 类冲突</a>
                                        </label>
                                                                                <label>
                                            <a href="https://www.csdn.net/gather_22/MtTagg5sOTgyNC1ibG9n.html" class="tag" target="_blank">android获取用户行为信息</a>
                                        </label>
                                                                                <label>
                                            <a href="https://www.csdn.net/gather_20/MtTakgwsMDI0MS1ibG9n.html" class="tag" target="_blank">android异步回调处理</a>
                                        </label>
                                                                                <label>
                                            <a href="https://www.csdn.net/gather_27/MtTakgwsMjc5MS1ibG9n.html" class="tag" target="_blank">android 文件删除保存</a>
                                        </label>
                                                                                <label>
                                            <a href="https://www.csdn.net/gather_2f/MtTakgwsMzA1NC1ibG9n.html" class="tag" target="_blank">android滑动按钮</a>
                                        </label>
                                                                                <label>
                                            <a href="https://www.csdn.net/gather_26/MtTakgwsMzY3NC1ibG9n.html" class="tag" target="_blank">android 突出菜单</a>
                                        </label>
                                                                                <label>
                                            <a href="https://www.csdn.net/gather_21/MtTakgwsNDE5MC1ibG9n.html" class="tag" target="_blank">android 文字颜色 点击</a>
                                        </label>
                                                                                <label>
                                            <a href="https://www.csdn.net/gather_2e/MtTakgwsNDUxNi1ibG9n.html" class="tag" target="_blank">android 原理 更新 热</a>
                                        </label>
                                                                                <label>
                                            <a href="https://www.csdn.net/gather_2e/MtTakgwsNTAxOC1ibG9n.html" class="tag" target="_blank">android 中间大两边小</a>
                                        </label>
                                                                                                                                                                        <label>
                                                <a href="https://www.csdn.net/xuexi/kecheng-MtjakgwsNDUtZWR1.html" class="tag" target="_blank"> 使用WTL进行Windows桌面应用开发-第二部</a>
                                            </label>
                                                                                                                                                                            <label>
                                                <a href="https://www.csdn.net/xuexi/kecheng-MtjaYgxsNDktZWR1.html" class="tag" target="_blank"> 使用WTL进行Windows桌面应用开发-第一部</a>
                                            </label>
                                                                                                                                                                            <label>
                                                <a href="https://www.csdn.net/xuexi/kecheng-Mtjakg0sNTMtZWR1.html" class="tag" target="_blank"> Windows C/C++ 与 逆向</a>
                                            </label>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        </div>
                            </div>
                                                </div>
                            </dl>
        <dl class="tag_blog_b_list">
                                    <dd class="list_item clearfix">
                        <div class="title">
                            <p class="title_l"><a href="https://blog.csdn.net/qq_41192631/article/details/106273725">Android系统开发:GMS包移植</a>
                            </p>
                            <p class="title_r">阅读数 <span>65</span></p>
                        </div>
                        <div class="detail">
                            <p class="detail_l"><a href="https://blog.csdn.net/qq_41192631/article/details/106273725" <="" a="">
                                Android系统开发:GMS包移植首先,我们拿到一份完整的GMS包应该是如下图所示:简单的介绍一个每一个目录的作用1)apps以及apps_go : 这里面就是google释放的apk资源文件,其中go版本适配低内存设备的apk.2)etc: 这里面就是Google 的一些权限申明文件,在日常维护gms更新时,经常会出现应用包权限的改动,我们跟着改,并做好记录即可。3)frameworks:这里面一般就是一些jar包,目的是将必须的jar包编译到system系统中,可以让一些apk正常使用,日                                </a></p><a href="https://blog.csdn.net/qq_41192631/article/details/106273725" <="" a="">
                            <div class="detail_r">
                                <span>博文</span>
                                <span class="source_user">来自: <span class="username">qq_41192631</span> </span>
                            </div>
                        </a></div><a href="https://blog.csdn.net/qq_41192631/article/details/106273725" <="" a="">
                    </a></dd><a href="https://blog.csdn.net/qq_41192631/article/details/106273725" <="" a="">
                                        </a><dd class="list_item clearfix"><a href="https://blog.csdn.net/qq_41192631/article/details/106273725" <="" a="">
                        </a><div class="title"><a href="https://blog.csdn.net/qq_41192631/article/details/106273725" <="" a="">
                            </a><p class="title_l"><a href="https://blog.csdn.net/qq_41192631/article/details/106273725" <="" a=""></a><a href="https://blog.csdn.net/xuann/article/details/103700538">android gms集成方法</a>
                            </p>
                            <p class="title_r">阅读数 <span>330</span></p>
                        </div>
                        <div class="detail">
                            <p class="detail_l"><a href="https://blog.csdn.net/xuann/article/details/103700538" <="" a="">
                                gms包集成步骤:(1) 需要下载对应gms,国内需要通过VPN下载。下载后解压,文件目录:partner_gms。下载时,最好核对一下匹配的android版本。(2)依照路径打开gms.mk/gms_go.mk,如:partner_gms\products\gms.mk。确认需要将GMS集成的代码位置,例如:    # GMS home folder location ...                                </a></p><a href="https://blog.csdn.net/xuann/article/details/103700538" <="" a="">
                            <div class="detail_r">
                                <span>博文</span>
                                <span class="source_user">来自: <span class="username">xuann</span> </span>
                            </div>
                        </a></div><a href="https://blog.csdn.net/xuann/article/details/103700538" <="" a="">
                    </a></dd><a href="https://blog.csdn.net/xuann/article/details/103700538" <="" a="">
                                        </a><dd class="list_item clearfix"><a href="https://blog.csdn.net/xuann/article/details/103700538" <="" a="">
                        </a><div class="title"><a href="https://blog.csdn.net/xuann/article/details/103700538" <="" a="">
                            </a><p class="title_l"><a href="https://blog.csdn.net/xuann/article/details/103700538" <="" a=""></a><a href="https://blog.csdn.net/nei504293736/article/details/51779490">android google GMS服务包安装</a>
                            </p>
                            <p class="title_r">阅读数 <span>4637</span></p>
                        </div>
                        <div class="detail">
                            <p class="detail_l"><a href="https://blog.csdn.net/nei504293736/article/details/51779490" <="" a="">
                                  GMS: google mobile service   要想使用google服务,必须要安装google mobile service,也就是通常所说的GMS包,网上有很多做好了的GMS包,可以通过recovery的方式刷进去,不过大多数都是别人做好的,有些功能并不是我们想要的,所以我们可以自己做一个gms包,但是这里所说的并不是用recovery方式刷进去,而是直接使用R...                                </a></p><a href="https://blog.csdn.net/nei504293736/article/details/51779490" <="" a="">
                            <div class="detail_r">
                                <span>博文</span>
                                <span class="source_user">来自: <span class="username">nei504293736</span> </span>
                            </div>
                        </a></div><a href="https://blog.csdn.net/nei504293736/article/details/51779490" <="" a="">
                    </a></dd><a href="https://blog.csdn.net/nei504293736/article/details/51779490" <="" a="">
                                        </a><dd class="list_item clearfix"><a href="https://blog.csdn.net/nei504293736/article/details/51779490" <="" a="">
                        </a><div class="title"><a href="https://blog.csdn.net/nei504293736/article/details/51779490" <="" a="">
                            </a><p class="title_l"><a href="https://blog.csdn.net/nei504293736/article/details/51779490" <="" a=""></a><a href="https://blog.csdn.net/qq_32390877/article/details/80797182">Android  7.1 预置GMS包</a>
                            </p>
                            <p class="title_r">阅读数 <span>1019</span></p>
                        </div>
                        <div class="detail">
                            <p class="detail_l"><a href="https://blog.csdn.net/qq_32390877/article/details/80797182" <="" a="">
                                1.下载需要的Gms包;https://download.csdn.net/download/qq_32390877/104993292.在Android源码的device/产品名称/产品型号/device.mk末尾中,加入以下语句GMS_SUPPORT=yesifeq ($(strip $(GMS_SUPPORT)), yes)$(call inherit-product-if-ex...                                </a></p><a href="https://blog.csdn.net/qq_32390877/article/details/80797182" <="" a="">
                            <div class="detail_r">
                                <span>博文</span>
                                <span class="source_user">来自: <span class="username">qq_32390877</span> </span>
                            </div>
                        </a></div><a href="https://blog.csdn.net/qq_32390877/article/details/80797182" <="" a="">
                    </a></dd><a href="https://blog.csdn.net/qq_32390877/article/details/80797182" <="" a="">
                                        </a><dd class="list_item clearfix"><a href="https://blog.csdn.net/qq_32390877/article/details/80797182" <="" a="">
                        </a><div class="title"><a href="https://blog.csdn.net/qq_32390877/article/details/80797182" <="" a="">
                            </a><p class="title_l"><a href="https://blog.csdn.net/qq_32390877/article/details/80797182" <="" a=""></a><a href="https://blog.csdn.net/u010689853/article/details/106548138">android 8.0 GMS 包移植过程回顾</a>
                            </p>
                            <p class="title_r">阅读数 <span>82</span></p>
                        </div>
                        <div class="detail">
                            <p class="detail_l"><a href="https://blog.csdn.net/u010689853/article/details/106548138" <="" a="">
                                谷歌 源文件与给的文件是否有冲突 GMS 包一定要删除 以前的GMS包加入google应用----xxxx : /xxxx-Android8.0/vendor/partner_gmsxxxx : /xxxx-Android8.0/vendor/partner_gms/etcxxxx : /xxxx-Android8.0/vendor/partner_gms/etc/permissionsxxxx : /xxxx-Android8.0/vendor/partner_gms/etc/permis.                                </a></p><a href="https://blog.csdn.net/u010689853/article/details/106548138" <="" a="">
                            <div class="detail_r">
                                <span>博文</span>
                                <span class="source_user">来自: <span class="username">u010689853</span> </span>
                            </div>
                        </a></div><a href="https://blog.csdn.net/u010689853/article/details/106548138" <="" a="">
                    </a></dd><a href="https://blog.csdn.net/u010689853/article/details/106548138" <="" a="">
                                </a><div class="tag_list_return_btn"><a href="https://blog.csdn.net/u010689853/article/details/106548138" <="" a="">
                <span>没有更多推荐了,</span></a><a href="" class="return_link">返回首页</a>
            </div>

        </dl>

    </main>
展开阅读全文
©️2020 CSDN 皮肤主题: 游动-白 设计师: 上身试试 返回首页
实付0元
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值