アプリの配布

以降のセクションでは、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 で、アプリの [詳細設定] ページで [管理対象の Google Play] が有効になっている。
  • アプリのクローズド バージョンがバージョン コードの要件を満たしている。

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

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

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

限定公開アプリの場合は、デベロッパーはアプリの [詳細設定] ページの [managed Google Play] タブに、参加する各企業の組織 ID を追加する必要があります。手順については、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"
       ]
   },
],

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

次のシナリオなど、特定のシナリオでは、trackIds は 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 管理者は、ユーザーのデバイスの Google Play ストア アプリでアプリを整理する方法を設定できます。

機能

このセクションでは、管理対象の 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(アプリを整理)です。指定しない場合、次の優先順位でページが表示されます。PLAY_SEARCH、2. PRIVATE_APPS、3. WEB_APPS、4. STORE_BUILDER
locale なし いいえ iframe 内のコンテンツをローカライズするために使用される、適切な形式の BCP 47 言語タグ。指定しない場合、デフォルト値は 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 Console を使用して Play ストアにアップロードできます。

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