managed Google Play iframe を使用すると、managed Google Play を EMM コンソールに直接埋め込んで、統合型のモバイル管理エクスペリエンスを提供できます。
![managed Google Play iframe](https://developers-dot-devsite-v2-prod.appspot.com/static/android/work/play/emm-api/images/managed-google-play-iframe.png?authuser=7&hl=ja)
iframe には、タイトルバーと展開可能なサイドメニューが含まれています。このメニューから、ユーザーは別のページに移動できます。
- アプリを検索: IT 管理者は Google Play アプリの検索とブラウジング、アプリの詳細の表示、アプリの選択を行えます。
- 限定公開アプリ: IT 管理者は、企業向けの限定公開アプリを公開、管理できます。
- ウェブアプリ: IT 管理者は、ウェブサイトのショートカットをアプリとして公開して配布できます。
- アプリの整理: IT 管理者は、ユーザーのデバイス上の Google Play ストア アプリでアプリを整理する方法を設定できます。
iframe ではデフォルトですべてのページが有効になりますが、個別に無効にすることもできます(コンソールに iframe を追加するをご覧ください)。
機能
このセクションでは、managed Google Play iframe で利用できる機能について説明します。 iframe を埋め込んでこれらの機能を実装する方法については、コンソールに iframe を追加するをご覧ください。
コンソールに iframe を追加する
ステップ 1: ウェブトークンを生成する
企業を識別するウェブトークンを生成するには、Enterprises.createWebToken
を呼び出します。次の例は、Java 用 Google Play EMM API クライアント ライブラリを使用してトークンを取得する方法を示しています。
iframe のすべてのページはデフォルトで有効になっています。ウェブトークンを生成するときに、無効にするページを指定できます。次の例では、限定公開アプリ、ウェブアプリ、整理アプリを無効にします。
public AdministratorWebToken getAdministratorWebToken( String enterpriseId) throws IOException { AdministratorWebTokenSpec tokenSpec = new AdministratorWebTokenSpec(); tokenSpec.setParent("https://my-emm-console.com"); tokenSpec.setPlaySearch(new AdministratorWebTokenSpecPlaySearch()); tokenSpec.setPrivateApps(new AdministratorWebTokenSpecPrivateApps().setEnabled(false)); tokenSpec.setWebApps(new AdministratorWebTokenSpecWebApps().setEnabled(false)); tokenSpec.setStoreBuilder(new AdministratorWebTokenSpecStoreBuilder().setEnabled(false)); return androidEnterprise .enterprise() .createWebToken(enterpriseId, tokenSpec) .execute(); }
コンソールで iframe をレンダリングするときは、返されたトークンを他のパラメータとともに含める必要があります。
ステップ 2. iframe をレンダリングする
managed 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_SEARCH 、WEB_APPS 、PRIVATE_APPS 、STORE_BUILDER (整理されたアプリ)です。指定しない場合は、次の優先順位でどのページが表示されるかが決まります。1. 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
|
onproductselect
をリッスンする方法を示しています。
iframe.register('onproductselect', function(event) { console.log(event); }, gapi.iframes.CROSS_ORIGIN_IFRAMES_FILTER);