アプリの配布

以下のセクションでは、managed Google Play ストアでのアプリの配信に関する役立つ情報を紹介します。

アプリをインストールする

このポリシーを使用して、Google Play ストアから Android アプリをデバイスにインストールできます。この機能を使用するには、インストールするアプリのパッケージ名を把握している必要があります。アプリのパッケージ名を確認するには、次の 2 つの方法があります。

  1. アプリのパッケージ名は、Google Play ストア ページの URL に記載されています。 たとえば、Google Chrome アプリページの URL は

    https://play.google.com/store/apps/details?id=com.android.chrome
    で、パッケージ名は com.android.chrome です。

  2. EMM コンソールに managed Google Play iframe を埋め込むことで、顧客が Google Play ストアをブラウジングできるようにすることができます。お客様が iframe 内でアプリを選択すると、EMM コンソールがイベントのパッケージ名を受け取ります。

その後、デバイスのポリシーにアプリを追加できます。

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

デバイスにポリシーを適用すると、アプリはデバイスにインストールされるか、デバイス上の managed Google Play ストアに追加されます。

クローズド テスト用にアプリを配布する

Google Play Console では、アプリ デベロッパーはクローズド リリース(クローズド トラック)を作成して、一部のテスターでアプリのプレリリース版をテストできます。これはクローズド テストと呼ばれます。クローズド トラックの配信をサポートすることで、組織はサードパーティ アプリや、社内で開発した限定公開アプリをテストできます。

Google Play Console でクローズド テストをセットアップする際、アプリ デベロッパーは最大 100 の組織(enterprises)をターゲットに設定できます。Android Management API を使用して企業をターゲットとするクローズド トラックを取得し、ポリシーに沿ってこれらのクローズド トラックをデバイスに配布できます。

クローズド テストの対象となるアプリ

クローズド テストをセットアップする前に、アプリ デベロッパーはアプリが次の要件を満たしていることを確認する必要があります。

  • アプリの製品版が Google Play(限定公開アプリの場合は managed Google Play)で公開されている
  • Google Play Console で、アプリの [詳細設定] ページで managed Google Play を有効にします。
  • クローズド バージョンのアプリはすべて、バージョン コードの要件を満たしている。

クローズド テストに企業を追加する

クローズド テストをセットアップするときに、アプリ デベロッパーは組織 ID を追加することで、組織にクローズド テストへのアクセス権を付与できます。組織 ID を確認する手順は次のとおりです。

  1. 管理者アカウントで managed Google Play にログインします。
  2. [管理者設定] をクリックします。
  3. [組織の情報] ボックスから組織 ID の文字列をコピーし、デベロッパーに送信します。

限定公開アプリの場合、デベロッパーはアプリの [詳細設定] ページの [managed Google Play] タブに各参加企業の組織 ID を追加する必要もあります。手順については、限定公開アプリを Google Play Console から公開するをご覧ください。

ユーザーにクローズド トラックを配信する

指定したアプリについて企業が利用可能なトラックのリストを取得するには、enterprises.applications を呼び出します。レスポンスに含まれる appTrackInfo[] リストには、特定のアプリに関する次のものが含まれます。

  • trackId: トラックの一意の識別子。アプリのトラック情報を表示する Google Play Console のページの URL にある releaseTrackId から取得されます。
  • trackAlias: 人が読める形式のトラック名。Google Play Console で変更できます。

ユーザーのデバイスにクローズド トラックをインストールするには、デバイスのポリシーaccessibleTrackIds を指定します。

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

上記の例のように、ポリシーに同じアプリのトラックが複数ある場合は、バージョン コードが最も高いトラックがインストールされます。

次のような特定のシナリオでは、trackId が enterprises.applications 呼び出しから自動的に削除されます。

  • トラックの APK が別のトラックまたは製品版に昇格しています。
  • 製品版がトラックよりも上位のバージョンで更新されている。
  • デベロッパーがトラックを停止した場合。

managed Google Play iframe

managed Google Play iframe を使用すると、managed Google Play を EMM コンソールに直接埋め込んで、統合されたモバイル管理エクスペリエンスを提供できます。

managed-play-iframe
図 1. managed Google Play iframe

iframe にはタイトルバーと展開可能なサイドメニューが表示されます。このメニューから、ユーザーはさまざまなページに移動できます。

  • アプリの検索: IT 管理者は Google Play アプリの検索とブラウジング、アプリの詳細の表示、アプリの選択を行えます。
  • 限定公開アプリ: IT 管理者は企業用の限定公開アプリを公開して管理できます。
  • ウェブアプリ: IT 管理者はウェブサイトのショートカットをアプリとして公開、配布できます。
  • アプリの整理: IT 管理者は、ユーザーのデバイス上の Play ストア アプリでのアプリの表示方法を設定できます。

機能

このセクションでは、managed Google Play iframe で利用できる機能について説明します。 iframe を埋め込んでこれらの機能を実装する方法については、iframe をコンソールに追加するをご覧ください。


コンソールに iframe を追加する

ステップ 1: ウェブトークンを生成する

enterprises.webTokens.create を呼び出して、企業を識別するウェブトークンを生成します。レスポンスには、トークンの value が含まれます。

  • parentFrameUrl を、iframe をホストする親フレームの URL に設定します。
  • iframeFeature を使用して、iframe で有効にする機能PLAY_SEARCHPRIVATE_APPSWEB_APPSSTORE_BUILDER(アプリの整理))を指定します。iframeFeature が設定されていない場合、iframe はデフォルトですべての機能を有効にします。

ステップ 2. iframe をレンダリングする

managed 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 を生成します。iframe タグに適用する属性は、前述のとおり「attributes」オプションを使用して設定できます。

URL パラメータ

以下の表は、URL パラメータとして URL に追加できる 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 なし × iframe 内のコンテンツをローカライズするために使用する、正しい形式の BCP 47 言語タグ。指定しない場合、デフォルト値は en_US です。
mode アプリを検索 × SELECT: IT 管理者がアプリを選択できます。
APPROVE(デフォルト): IT 管理者がアプリを選択、承認、不承認できます。このモードは非推奨です。代わりに SELECT を使用してください。APPROVE モードは、ウェブトークンで PlaySearch.ApproveAppstrue に設定されている場合にのみ機能します。
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 Console を使用して Play ストアにアップロードできます。

アプリを Google Play ストアで公開したくない場合は、Google Play Console を使用してアプリを単一の企業に制限できます。また、Google Play Custom App Publishing API を使用して、限定公開アプリをプログラムで公開することもできます。限定公開アプリは、制限を受けている企業でのみ利用できます。ポリシーを使用してインストールできますが、企業外部のユーザーには表示できません。