分发应用

以下部分将为您提供有关在 Google Play 企业版商店中分发应用的实用信息。

安装应用

您可以使用该政策在设备上安装 Google Play 商店中的 Android 应用。如需使用此功能,您需要知道要安装的应用的软件包名称。如需查找应用的软件包名称,您有两个选项:

  1. 应用的软件包名称位于 Google Play 商店页面的网址中。 例如,Google Chrome 应用页面的网址为

    https://play.google.com/store/apps/details?id=com.android.chrome
    ,其软件包名称为 com.android.chrome

  2. 您可以在 EMM 控制台中嵌入 Google Play 企业版 iframe,以便客户浏览 Google Play 商店。当客户在 iframe 中选择应用时,您的 EMM 控制台会在事件中收到软件包名称。

然后,您可以在设备的政策中添加该应用:

"applications":[
   {
      "installType":"FORCE_INSTALLED",
      "packageName":"com.android.chrome",
   },
],

当您将此政策应用于设备时,系统会将应用安装到设备上,或将其添加到设备上的受管 Google Play 商店中。

分发应用以进行封闭式测试

在 Play 管理中心内,应用开发者可以创建封闭式版本(封闭式轨道),让一组测试人员测试应用的预发布版本。这称为封闭式测试。支持封闭式轨道分发后,组织可以测试第三方应用以及他们自行开发的任何专用应用。

在 Play 管理中心内设置封闭式测试时,应用开发者最多可以定位到 100 个组织 (enterprises)。您可以使用 Android Management API 检索定位到某个企业的封闭式轨道,并使用政策将这些封闭式轨道分发到设备。

符合封闭式测试条件的应用

在设置封闭式测试之前,应用开发者必须确保其应用满足以下要求:

  • 应用的正式版已发布到 Google Play(对于专用应用,则发布到 Google Play 企业版)
  • 在 Google Play 管理中心内,在应用的高级设置页面中启用受管理的 Google Play
  • 应用的所有封闭版本均符合版本代码要求

向封闭式测试添加企业

设置封闭式测试时,应用开发者可以通过添加组织 ID 向组织授予对封闭式测试的访问权限。您的客户可以按照以下说明查找其组织 ID:

  1. 使用管理员账号登录 Google Play 企业版
  2. 点击管理员设置
  3. 复制“组织信息”框中的组织 ID 字符串,并将其发送给开发者。

对于专用应用,开发者还需要在应用“高级设置”页面的 Google Play 企业版标签页中添加每个参与计划的企业的组织 ID。有关说明,请参阅通过 Play 管理中心发布专用应用

向用户分发封闭轨道

如需检索企业可用于指定应用的轨道列表,请调用 enterprises.applications。响应中包含的 appTrackInfo[] 列表针对给定应用包含以下内容:

  • trackId:轨道的唯一标识符,取自 Play 管理中心中显示应用轨道信息的页面网址中的 releaseTrackId
  • trackAlias:轨道的易读名称,可在 Play 管理中心内修改。

如需在用户设备上安装封闭轨道,请在其设备政策中指定 accessibleTrackIds

"applications":[
   {
      "installType":"AVAILABLE",
      "packageName":"com.google.android.gm",
      "accessibleTrackIds":[
          "123456",
          "789101"
       ]
   },
],

如果政策包含来自同一应用的多个轨道(如上例所示),则该政策会安装版本号最高的轨道。

在某些情况下(例如以下情况),系统会自动从 enterprises.applications 调用中移除 trackId:

  • 轨道的 APK 会提升到其他轨道或正式版。
  • 正式版的版本号高于轨道的版本号。
  • 开发者停止轨道。

Google Play 企业版 iframe

借助 Google Play 企业版 iframe,您可以直接在 EMM 控制台中嵌入 Google Play 企业版,从而为客户提供统一的移动设备管理体验。

managed-play-iframe
图 1. Google Play 企业版 iframe

iframe 包含标题栏和可展开的侧边菜单。用户可以通过此菜单前往不同的页面:

  • 搜索应用:允许 IT 管理员搜索和浏览 Google Play 应用、查看应用详情以及选择应用。
  • 专用应用:让 IT 管理员可以为其企业发布和管理专用应用。
  • 网站应用:允许 IT 管理员将网站快捷方式发布和分发为应用。
  • 整理应用:IT 管理员可以配置应用在用户设备上的 Play 商店应用中的整理方式。

功能

本部分介绍了托管式 Google Play iframe 中提供的功能。如需了解如何嵌入 iframe 并实现这些功能,请参阅将 iframe 添加到控制台

搜索应用

在“搜索应用”页面(如图 1所示)中,IT 管理员可以搜索、浏览和选择 Google Play 应用。

默认情况下,页面上会启用标题栏中的搜索框。搜索框支持自动补全等功能,并会返回 Google Play 上公开列出的应用的搜索结果。搜索结果会显示在 iframe 中。

专用应用

专用应用
图 2. 专用应用详情页面

借助“专用应用”页面,IT 管理员可以直接通过 EMM 控制台发布和管理专用应用。为简化 IT 管理员的专用应用发布流程,该页面提供了以下功能:

  • 代表企业静默创建 Play 管理中心账号,并向 IT 管理员授予管理员访问权限。
  • 免除之前发布应用时需要支付的 25 美元 Play 管理中心注册费。
  • 仅需提供应用的 APK 和名称。
  • 最短只需 10 分钟即可发布应用(相比之下,在 Play 管理中心内需要 2 小时)。
    注意:从“专用应用”页面发布的应用无法变为公开应用。

IT 管理员首次在 iframe 中发布应用时,iframe 会代表企业静默创建一个 Play 管理中心账号。如果他们进行高级修改,系统会提示他们使用 Google 账号(可以是任何 Google 账号,例如 Gmail、Cloud Identity)登录。 系统会将此 Google 账号添加为企业的 Play 管理中心账号的管理员。之后,IT 管理员可以使用自己的 Google 账号直接登录 Play 管理中心,在其中执行以下操作:

如需了解 IT 管理员如何使用“专用应用”页面,请访问 Google Play 企业版帮助中心

“选择”按钮

应用发布后,IT 管理员可以在应用详情页面中修改其标题和 APK。应用详情页面还会显示一个 SELECT 按钮(请参阅图 2)。您需要指定 IT 管理员点击此按钮时执行的操作(请参阅第 3 步中的 onproductselect)。处理 iframe 事件)。

Web 应用

Web 应用
图 3. Web 应用创建表单。

借助“Web 应用”页面,IT 管理员可以将网站快捷方式作为专用应用发布到 Google Play 企业版。Web 应用可通过其软件包名称 (productId) 进行标识,通常需要 10 分钟才能发布。发布后,这些应用会自动获得企业批准,然后就像任何其他已获批准的应用一样分发给用户。Web 应用与其他受管 Play iframe 功能兼容:可在 Play 搜索页面中进行搜索,并且可以添加到合集中。

Web 应用创建表单需要填写标题、HTTPS 或 HTTP 网址以及图标图片(512 x 512 JPG 或 32 位 PNG)。此外,IT 管理员可以从以下三个显示选项中进行选择:

  • 全屏:应用会在全屏模式下打开(隐藏设备的状态栏和导航栏)。
  • 独立脚本(默认):应用会显示设备的状态栏和导航栏。
  • 极简界面:应用会显示设备的状态栏和导航栏、应用的网址以及刷新选项。对于 HTTP 网址,这是唯一可用的选项。

IT 管理员还可以在“Web 应用”页面中修改和删除 Web 应用。删除 Web 应用后,系统会将其从用户的 Google Play 企业版商店中移除,但如果该应用已安装在用户设备上,用户可能仍可以访问该应用。如需从用户设备中删除 Web 应用,请参阅删除应用。如需了解如何创建和修改 Web 应用,请参阅 Google Play 企业版帮助中心

“选择”按钮

网站应用发布后,其详情页面会显示一个“选择”按钮。您需要指定 IT 管理员点击此按钮时要执行的操作(例如,分发应用)(请参阅第 3 步中的 onproductselect)。处理 iframe 事件)。

整理应用

整理应用
图 4. 显示“整理应用”页面的 Google Play 企业版 iframe。

在“整理应用”页面中,IT 管理员可以将应用整理为集合(也称为集群)。例如,IT 管理员可以为常用应用创建必备应用集合,或为与跟踪支出、记录行程等相关的应用创建支出集合。集合会显示在用户设备上的 Play 商店首页中。

EMM 必须在 iframe 网址的参数中使用 SELECT mode,才能搜索应用并将应用添加到合集中。

在用户设备上,Play 商店应用仅显示面向用户(或设备)提供的收藏中的应用。如果合集不包含可供用户(或设备)使用的任何应用,则该合集不会显示在 Play 商店中。

Google Play 企业版 iframe
图 5. 设备上的应用合集(集群

IT 管理员还可以在“整理应用”页面中修改、删除和复制现有集合。如需了解如何执行这些任务,请参阅 Google Play 企业版帮助中心中的用户说明。


将 iframe 添加到您的控制台

第 1 步:生成 Web 令牌

调用 enterprises.webTokens.create 以生成用于标识企业的 Web 令牌。响应包含令牌的 value

  • parentFrameUrl 设置为托管 iframe 的父级框架的网址。
  • 使用 iframeFeature 指定要在 iframe 中启用的功能PLAY_SEARCHPRIVATE_APPSWEB_APPSSTORE_BUILDER(整理应用)。如果未设置 iframeFeature,则 iframe 会默认启用所有功能

第 2 步:渲染 iframe

以下示例展示了如何呈现受管理的 Google Play iframe:

<script src="https://apis.google.com/js/api.js"></script>
<div id="container"></div>
<script>
  gapi.load('gapi.iframes', function() {
    var options = {
      'url': 'https://play.google.com/work/embedded/search?token=web_token&mode=SELECT',
      'where': document.getElementById('container'),
      'attributes': { style: 'width: 600px; height:1000px', scrolling: 'yes'}
    }

    var iframe = gapi.iframes.getContext().openChild(options);
  });
</script>

此代码会在容器 div 中生成一个 iframe。如前所述,您可以使用“attributes”选项设置要应用于 iframe 代码的属性。

网址参数

下表列出了 iframe 的所有可用参数,这些参数可作为网址参数添加到网址中,例如:

'url': 'https://play.google.com/work/embedded/search?token=web_token&mode=SELECT&showsearchbox=TRUE',
参数 网页 必填 说明
token 不适用 第 1 步返回的令牌。
iframehomepage 不适用 呈现 iframe 时显示的初始页面。可能的值包括 PLAY_SEARCHWEB_APPSPRIVATE_APPSSTORE_BUILDER(整理应用)。如果未指定,系统会根据以下优先顺序确定要显示哪个页面:1. PLAY_SEARCH, 2. PRIVATE_APPS, 3. WEB_APPS, 4. STORE_BUILDER
locale 不适用 一个格式正确的 BCP 47 语言标记,用于本地化 iframe 中的内容。如果未指定,则默认值为 en_US
mode 搜索应用 SELECT:让 IT 管理员选择应用。
APPROVE(默认):允许 IT 管理员选择、批准和取消批准应用。
showsearchbox 搜索应用 TRUE(默认):显示搜索框,并从 iframe 中发起搜索查询。
FALSE: 搜索框未显示。
search 搜索应用 搜索字符串。如果指定了此参数,iframe 会将 IT 管理员定向到包含指定字符串的搜索结果。

第 3 步:处理 iframe 事件

您还应在集成过程中处理以下事件。

事件说明
onproductselect 用户选择或批准应用。这会返回一个包含以下内容的对象:
{
    "packageName": The package name of the app, e.g. "com.google.android.gm",
    "productId": The product ID of the app, e.g. "app:com.google.android.gm",
    "action": The type of action performed on the document. Possible values are:
    "approved", "unapproved" or "selected." If you implement the iframe in SELECT
    mode, the only possible value is "selected".
}
    
以下示例展示了如何监听 onproductselect
iframe.register('onproductselect', function(event) {
  console.log(event);
}, gapi.iframes.CROSS_ORIGIN_IFRAMES_FILTER);


将您自己的应用上传到 Google Play 商店

如果您或您的客户开发了 Android 应用,则可以使用 Google Play 管理中心将其上传到 Play 商店。

如果您不希望应用在 Play 商店中公开发布,可以使用 Google Play 管理中心将应用仅限于单个企业使用。另一种方法是使用 Google Play Custom App Publishing API 以编程方式发布专用应用。专用应用仅供其受限的企业使用。用户仍可使用政策安装这些应用,但企业外的用户无法看到这些应用。