アプリケーションの設定

このページでは、アプリケーション全体の設定を管理します。次の操作を行うことができます。

設定を変更するには、アプリを開いて [Settings]()をクリックします。

アプリの設定

説明

説明にアプリケーションの目的を記述します。必要であれば、他の情報を記述することもできます。

アプリの起動

ホームページ

ユーザーがアプリを開いたときに読み込まれるページを指定します。

アプリの起動スクリプト

ユーザーが最初にアプリを読み込んだときに実行するスクリプトを入力します。App Maker はホームページを開く前にスクリプトを実行します。たとえば、UI を表示する前にスクリプトを使用してデータをプリロードできます。また、ユーザーごとに異なるホームページを開くこともできます。すべての外部ライブラリは、このコードが実行されるまでに読み込まれているため、このスクリプトで使用できます。

たとえば、アプリが、各ユーザーの優先する開始ビューをユーザー設定レコードに格納するとします。次のサンプル スクリプトは、(ローダーによる)アプリの読み込みを一時停止し、データソースを読み込んで優先する開始ビューを取得してから、アプリの読み込みを再開して優先するビューを開きます。データソースの読み込み中にアプリの読み込みを中断しない場合、スクリプトが終了するとすぐにアプリが読み込まれ、データソースからの非同期の結果を待ちません。

var datasource = app.datasources.MyUserDatasource;
    // Stop app from loading until the datasource loads.
    loader.suspendLoad();
    datasource.load(function() {
        app.showPage(datasource.item.StartView);
        // Continue load now that data is loaded and view is set.
        loader.resumeLoad();
    });
    

外部リソース

このセクションのフィールドを使用して、次の情報を指定します。

JavaScript の URL

アプリと一緒に読み込む必要のある JavaScript ライブラリを追加します。ライブラリは、それがホストされている URL で指定します。最も一般的なライブラリは Google にホストされています。ライブラリは、リストに表示されている順序で読み込まれます。依存関係がある場合は、すべての依存関係の後にライブラリが表示されるようにします。

CSS の URL

アプリがカスタム CSS を使用して App Maker のデフォルト スタイルを上書きする場合は、URL を追加します。

Apps Script ライブラリ

スクリプトの選択したオブジェクトに関連付けられている関数を使用するには、Apps Script ライブラリをアプリに追加します。注: コード補完はインポートしたライブラリには利用できません。

ライブラリを追加するには、スクリプト ID、バージョン、オブジェクトが必要です。

セキュリティ

アクセス役割を使用して、公開後に他のユーザーがアプリと対話する方法を制御します。次のことを制御できます。

  • アプリケーションを使用できるユーザー。
  • 特定のページにアクセスし、モデルのレコードを修正できるユーザー。
  • (管理者のみ)デプロイメントを公開できるユーザー。管理者役割は削除できません。

セキュリティ ワークフロー

アプリのセキュリティを制御する基本的なワークフローは次のとおりです。

  1. 設定アイコン( [App Settings] [Security] の順に移動して、役割を追加します。
  2. 保護が必要な個々のページとモデルに役割を追加します。
  3. 新しいデプロイメントを作成するときに、役割にユーザーを追加します。

アクセス役割について

独自の役割を指定できますが、デフォルトでは、この役割に権限は割り当てられていません。現在、モデルまたはリレーションの変更イベント、表示アクセス、サービス データソースの実行に対して権限を割り当てることができます。これにより、ユーザーのグループがモデルと対話する方法を指定できます。たとえば、Admins 役割のみにレコードの変更を許可できます。また、独自の役割(Manager など)を作成して、すべてのモデルに対する作成権限を付与できます。詳細については、モデルの権限をご覧ください。

モデルの権限設定はアプリケーションのデータを保護する砦となります。不正なアクセスや編集を UI のみで防ぐことはできません。たとえば、安全な登録フォーム アプリケーションを作成するには、データへのアクセスを可能にする UI がない場合でも、モデル権限設定でデータの読み取りと変更を許可するユーザーを明確に制限する必要があります。

App Maker エディタでできるのは役割の作成と削除だけです。これらの役割を指定するのは、アプリケーションを公開した後になります。このため、アプリケーションの権限を変えて、異なるバージョンを公開することもできます。たとえば、テスト バージョンで複数のデベロッパーとテスターに管理者役割を設定し、公開後の本番環境のアプリケーションでは管理者を 1 人に変更できます。また、アクセス権を柔軟に設定できるので、アプリケーションのコンテンツを更新することなく、公開済みのアプリケーションで役割のメンバーシップを変更できます。

メンバーを追加する場合は、個人のアカウントまたは Google グループのメールアドレスを使用します。これらは、アプリケーションを最初に公開するときに設定します。公開後に更新するには、アプリケーションのデプロイメントの設定を編集します。

スクリプトで user.roles パラメータを使用すると、アプリケーションの現在のユーザーがメンバーになっているすべての役割にアクセスできます。この操作は、クライアントとサーバーの両方で可能です。

役割のメンバーシップは公開後のアプリケーションに作成されるもので、プレビュー中には存在しません。プレビューでは、ユーザーにすべての権限が付与されています。アクセス権をテストするには、アプリケーションのテスト用デプロイメントを公開し、役割のメンバーシップを指定する必要があります。

アプリの埋め込みを許可する

アプリを他のウェブサイトに埋め込むこともできます。アプリを組み込むと、次のような利点があります。

  • 組織のユーザーが慣れているサイトにアプリを統合できます。
  • 公開されているアプリのホスト先を表す長く複雑な URL を隠すことができます。

google.com という URL のほとんどのウェブサイトに App Maker アプリを埋め込むことができます。Google 以外の URL のサイトに埋め込む場合は、アプリ管理者の権限が必要になります。

サイトの種類 管理者権限が必要
Google 以外のウェブサイト クリックジャッキング脆弱性を引き起こす可能性あり。
google.com の URL を使用する新しい Google サイト × デフォルトで有効。
カスタム URL の新しい Google サイト
  • プレビューは Google のインフラストラクチャにホストされるため、サイト作成者は埋め込みアプリをプレビューできます。
  • アプリ管理者が埋め込みを有効にするまで、アプリは公開ページでブロックされます。
以前の Google サイト iframe ガジェットに埋め込み可能。
scripts.google.co.jp の URL を使用するサイトまたはアプリ × デフォルトで有効。

セキュリティの脆弱性

埋め込みを有効にした場合、アプリにアクセスできるユーザーなら誰でも、自分が管理するサイトにアプリを埋め込むことができます。これにより、クリックジャッキングというウェブ攻撃が発生する可能性があります。クリックジャッキングを防ぐ方法はいくつかありますが、組み込み可能なアプリで危険な操作を許可することは避けなければなりません。このような操作を排除できない場合は、ユーザーが個人情報の入力やデータの削除などを行う前に、アプリで警告や視覚的なインジケータを表示する必要があります。

埋め込みを有効にする

アプリの埋め込みを有効にするには、設定アイコン( [App Settings] [Security] の順に移動し、チェックボックスをオンにします。

設定

設定セクションで、UI とスクリプトの設定を行います。

ビューポートの解像度

ページエディタでは、カスタム画面サイズの作成、編集、削除を行い、ビューを制御できます。ページエディタでデバイスの解像度を設定すると、そのサイズの画面でのアプリの表示を確認できます。

画面の解像度を追加するには、[Add Resolution] をクリックします。解像度の名前と値を入力して、[Add] をクリックします。

画面の解像度を編集または削除するには、必要な解像度をポイントして、[Edit]()または [Delete]()をクリックします。

アプリの言語

App Maker アプリでは現在、アプリごとに 1 つの言語をサポートしています。デフォルトの言語は英語です。UI のテキスト文字列、メッセージ、数値と日付の形式は英語に合わせて設定されています。

アプリの言語を別の言語に変更した場合、ユーザーは UI のテキスト文字列、メッセージ、数値と日付の形式が変更後の言語で表示されることを期待します。

一部の UI 文字列はウィジェットのプロパティで変更できます。アプリの言語で文字列をローカライズするのはデベロッパーの責任になります。

一部の UI 文字列は手動でローカライズできません。App Maker がこれらの文字列を自動的にカスタマイズします。App Maker は、数値と日付の形式も自動的にカスタマイズします。

App Maker は、次のウィジェットを自動的にローカライズします。

  • 日付ボックス: 日付の書式
  • Google マップ: UI 文字列
  • グラフ: 表、折れ線、円グラフ、棒グラフ内の数値と日付の形式
  • すべてのウィジェット: バインド可能なプロパティに対する数値と日付の形式
  • フォーム: 確認メッセージ

タイムゾーン

サーバーが使用するタイムゾーンを制御します。クライアント スクリプトは、ユーザーのブラウザから報告されたタイムゾーンを使用します。

ファビコン URL

デプロイ時にアプリが使用するファビコンの場所を入力します。

Google の拡張サービス

アプリから Google 拡張サービスの API を呼び出します。拡張サービスを使用するには、必要なサービスをアプリの設定に追加します。Apps Script で利用可能な拡張サービスは App Maker で利用できます。

Google のビルトイン サービスを追加する必要はありません。

拡張サービスを追加する

  1. 設定アイコン( [App Settings] [Advanced Services] [Add Service] の順にクリックします。
  2. 追加するサービスのボックスをオンにして [Add] をクリックします。

拡張サービスを呼び出す

他の Google サービスを呼び出す場合と同じ方法で、サーバー スクリプトから拡張サービスを呼び出します。サーバー スクリプトは、JavaScript で Apps Script スクリプトとして実行されます。

App Maker でサーバー スクリプトから API を呼び出す方法については、チュートリアル 4 をご覧ください。

拡張サービスを削除する

  1. 設定アイコン( [App Settings] の順にクリックします。
  2. [Advanced Services] で、該当するサービスの行の上にカーソルを置き、 をクリックします。