Google GMS介绍

Google GMS介绍
GMS全称为GoogleMobile Service。GMS目前提供有Search、Search by Voice、Gmail、Contact Sync、Calendar Sync、Talk、Maps、Street View、YouTube、Play store等apk和服务。

google为了确保全世界的硬件厂商设计和生产的安卓为基础的各种智能硬件产品的兼容性、稳定性,以及这些硬件与安卓各种自带的软件 APP 产品和服务的兼容性、稳定性,从7.0开始强制所有产品要进行Google GMS 认证,而且需要与签定MADA、AFA等一系列协议才能拿到GMS软件包,产品软硬件测试 由 3PL 执行。下面介绍下GMS包(以9.0为例,其他版本类似)中的内容以及编译方法。

从 Google 拿到的 GMS 包解压缩之后可以取得一个 partner_gms 的文件夹,里面放有所有的Google apps、Services 和参数配置,主要分为四类,五个文件夹:
1、apps/和apps_go两个目录放置所有 Google 的 apk,包含应用和服务类,apps是正常版本、apps_go是低内存的android go版本,编译时在脚本选择对应的版本。
2、etc-放置 Google 应用和服务类的系统配置。
3、frameworks放置 Google 应用和服务类的系统配置与 jar 库。
4、products放置编译配置与 Google 应用和服务类的系统配置。

GMS 编译配置说明:GMS 的编译配置取决于 GMS 包 partner_gms/products 下的 gms_xx.mk。mk文件中内容简单说明如下:
1、# GMS home folder location
定义ANDROID_PARTNER_GMS_HOME := vendor/partner_gms,这表示此段定义 GMS HOME 路径,随意更改可能会造成编译失败等问题,不建议去修改。

2、#GMS mandatory core packages
此为必要核心套件, 不建议删除任何一项目, 否则可能会导致无法预期的报错或是Google 认证失败。

3、GMS mandatory libraries
Gms 相关库预置,不可删除。

4、# Overlay for GMS devices
$(call inherit-product, device/sample/products/backup_overlay.mk)
不可删除, 否则可能会造成 backup 等备份相关问题发生, 以及备份帐号中无法选择 google帐号等。

$(call inherit-product, device/sample/products/location_overlay.mk)
不可删除, 否则可能会造成 map, smartlock 等定位发生问题。

PRODUCT_PACKAGE_OVERLAYS += \
$(ANDROID_PARTNER_GMS_HOME)/products/assistant_gsa_overlay \
$(ANDROID_PARTNER_GMS_HOME)/products/gms_overlay
不可删除, 主要使样机具有 Factory reset protection 等功能

# Overlay for GoogleDialer
预置 GoogleDialer 时不可删除

# Configuration files for GMS apps
Gms 相关配置参数, 包含两类, 其中一类为默认应用的各种标准设置, 另外一类为部分Gms 应用可以获取的相关权限, 不建议删除任何一项目, 否则可能会导致无法预期的错误。

# GMS mandatory application packages
此段为必要的核心应用, CTS送测时不建议删除任何一项目, 否则 Google 认证会不过,注意 go 和非 go 的不同要求。

# GMS comms suite
Message 配置。

# GMS optional application packages
预置的 GMS 可选应用,可根据需求删减。

# Overlay for SearchLauncherQuickStep
SearchLauncherQuickStep ovlay的内容。

# GMS sample application packages
带gms的桌面布局demo代码。

# Overrides
PRODUCT_SYSTEM_DEFAULT_PROPERTIES += \
GMS 基本 系统属性设定不可删, 相关属性值也不建议修改。

编译:在项目的.mk文件中加入如下语句就可以编译带gms的升级包:
非go版本:$(call inherit-product-if-exists, vendor/partner_gms/products/gms.mk)
go版本:$(call inherit-product-if-exists, vendor/partner_gms/products/gms_go.mk)

原文地址:https://www.cnblogs.com/cyqx/p/11718144.html

时间: 2024-10-15 05:33:20

Google GMS介绍的相关文章

Android跳转到应用商店的APP详情页面,以及 Google GMS 各个apk的包

转自:http://www.jianshu.com/p/a4a806567368 需求: 从App内部点击按钮或链接,跳转到应用商店的某个APP的详情页面.让用户 下载 或 评论. 实现: /** * 启动到应用商店app详情界面 * * @param appPkg 目标App的包名 * @param marketPkg 应用商店包名 ,如果为""则由系统弹出应用商店列表供用户选择,否则调转到目标市场的应用详情界面,某些应用商店可能会失败 */ public void launchAp

《Google软件测试之道》- Google软件测试介绍

<Google软件测试之道>- Google软件测试介绍 2015-05-21 目录 1 质量与测试  2 角色  3 组织结构  4 爬.走.跑  5 测试类型  相关链接 与Microsoft相比,Google的测试团队并非雄兵百万,更象是小而精的特种部队,依靠的是出色的战术和高级武器.Google信奉“少则清晰”. 1 质量与测试 返回 测试是开发过程中必不可少的一部分,当开发过程和测试一起携手联姻时,即是质量达成之时. 2 角色 返回 软件开发工程师(software engineer

第一章Google软件测试介绍

1.Google实现软件的方法:简单和直截了当 2.质量不等于测试.当你把开发过程和测试放到一起,就像在搅拌机里面混合搅拌那样,直到不能区分彼此的时候,你就得到了质量. 3.测试是开发过程必不可少的一部分,当开发过程和测试一起携手联姻时,即是质量达成之时. 4. Google团队由SWE(软件开发工程师), SET(测试开发工程师),TE(测试工程师)组成. 5. 在Google:对于一个测试人员,如果在某个产品中工作满18个月之后,就可以无理由地自愿转岗到其他产品. 6.Google从来不会在

第一章 Google软件测试介绍

1.在Google,软件测试团队归属于一个被称为"工程生产力"(Engineering Productivity,工程效率或工程生产率)的中心组织部门,这个部门的职责横跨开发测试人员使用工具的研发.产品发布和各种级别的测试,从单元级别的测试到探索性级别的测试.Google拥有大量针对互联网产品的共享工具与测试基础框架,服务于包括搜索.广告.Apps.YouTube视频和其他我们在Web上提供的产品. 2.Google是一家以创新和速度为基础的公司,快速地发布有用的代码(如果失败,也只有

android开发步步为营之70:android接入Google Analytics总结

求人不如求己,今天项目里要接入Google Analytics,这个是做应用统计分析用的,可以查看当前手机活跃用户,事件点击等等数据,先看看效果: 之前eclipse里面接入已经成功,昨天项目组决定项目转成使用android studio来开发,看google官方文档,官方文档https://developers.google.com/analytics/devguides/collection/android/v4/,然后官方文档里面的配置文件是用google-services.json的,这

Google Earth数据存储、管理、表现及开发机制

一.    Google Earth(Map)介绍 1.1    Google Earth介绍 在众多的地理信息服务提供商中,Google是较早提供服务的一个,其他有如ESRI这样的巨头,也有中国的灵图.但凭借着提供优质.高效.高性价比服务的理念和Google自身的巨大影响力,Google推出的Google Earth和Google Map平台已经成为全球影响力最大的互联网空间信息服务平台. Google Earth具有十分突出的三个特点[1],一是可以显示矢量数据地标,包括点.线.面等几何类型

《How Google Test Software》阅读体会

How Google Test Software 之 软件测试开发工程师 本文是课程<软件测试>的项目之一:Project #1: Reading a book,来自小组:Developer is tester 成员:吴家荣 景 涛 陈兆鹏 郭路文 梁华淇 何金岳 展示PPT:http://slides.com/wujiarong/deck-1#/ Part 1: Summary of content 全书总分为三个部分,五个章节 第一部分:简单介绍了Google软件测试的概念,角色,组织机构

android google 统计导致的文件冲突

android studio 加入google 统计 1. buildscript { repositories { jcenter() } dependencies { classpath 'com.android.tools.build:gradle:2.2.3' classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8' classpath 'com.google.gms:google-services:3.0.0' // NOTE

Google高级技巧—google Hack★★★★

google hacking事实上并算不上什么新东西,当时并没有重视这样的技术,觉得webshell什么的,并无太大实际用途.google hacking事实上并非如此简单... 经常使用的googlekeyword: foo1 foo2 (也就是关联,比方搜索xx公司 xx美女) operator:foo filetype:123 类型 site:foo.com 相对直接看网站更有意思,能够得到很多意外的信息 intext:foo intitle: fooltitle 标题哦 allinurl