はじめに
Earth Engine アプリは、Earth Engine で分析を行うための動的で共有可能なユーザー インターフェースです。アプリでは、専門家はシンプルな UI 要素を使用して Earth Engine のデータカタログと分析能力を活用できるため、専門家と専門家以外の両方が使用できます。
Earth Engine から公開されたアプリには、公開時に生成されたアプリケーション固有の URL からアクセスできます。公開されたアプリを表示したり操作したりするために、Earth Engine アカウントは必要ありません。作成者がおすすめとして選択したアプリは、ユーザー固有のアプリ ギャラリー(USERNAME.users.earthengine.app など)でも利用できます。
アプリを構築する
Earth Engine アプリでは、コードエディタで使用されるほとんどの関数を利用できますが、いくつかの例外があります。また、ユーザー インターフェース API は、アプリ デベロッパーを念頭に置いて設計されています。User Interface API を初めて使用する場合は、 UI API の概要をご覧ください。
アプリの公開
コードエディタからアプリを公開するには、まずアプリにするスクリプトを読み込み、次にアプリ管理パネルを開きます。このパネルには、コードエディタのスクリプト セクションの上にある [Apps] ボタンをクリックしてアクセスできます。
[NEW APP] ボタンをクリックします。
ダイアログで、編集者のアクセス権、アプリ名、Google Cloud プロジェクトを選択し、アプリのソースコードの場所を指定します。[Restriction] タブのオプションを使用して、このアプリへのアクセスを特定の Google グループに制限するか、一般公開のままにします。一般公開されているアプリの場合は、アプリのカスタム プレビュー画像と、[Gallery] タブの説明を指定することもできます。このアプリを USERNAME.users.earthengine.app で利用可能なアプリギャラリーに表示する場合は、[Feature this app in your Apps Gallery] をクリックします。必要に応じて、[Logo] タブから任意の画像をアップロードして、アプリの左上にカスタムロゴを表示します。
アプリの管理
コードエディタからアプリを管理するには、コードエディタのスクリプト セクションの上にある [Apps] ボタンをクリックして、アプリ管理パネルを開きます。ここから、アプリの構成を更新したり、アプリを削除したりできます。
プロジェクト所有のアプリで他のユーザーと共同作業する
デフォルトでは、ユーザー名で公開したアプリは、そのユーザーのみが編集できます。アプリでの共同作業は、プロジェクト所有のアプリで行うことができます。プロジェクト所有のアプリは、クラウド プロジェクトで所有、公開されるアプリです。Earth Engine Apps Publisher IAM ロールを持つユーザーは、クラウド プロジェクトで公開されたアプリを編集、削除できます。Earth Engine IAM ロールの詳細
プロジェクト所有のアプリを有効にするには、[編集権限を選択] ステップで [Cloud プロジェクト] オプションを選択し、使用する Cloud プロジェクトを選択してから、通常どおりアプリの公開フローを完了します。アプリはドメイン PROJECT-ID.projects.earthengine.app に公開され、クラウド プロジェクトで Earth Engine Apps Publisher IAM ロールを持つユーザーが編集できるようになります。
Cloud プロジェクトのアプリを表示するには、[ADD CLOUD PROJECT] ボタンを押して、Cloud プロジェクトを選択します。
クラウド プロジェクトを他のユーザーと共有するには、[プロジェクトを共有] ボタンを押します。 これにより、プロジェクトの Cloud コンソールの IAM ページに移動し、共同編集者に Earth Engine Apps Publisher の IAM ロールを付与できます。
よくある質問
- アプリギャラリーからアプリを削除するにはどうすればよいですか?
- アプリ構成ページの [Feature this App] チェックボックスで、アプリを [Featured Apps] ページに表示するかどうかを制御します。アクセスが制限されているアプリは、おすすめとして掲載できません。
- Earth Engine のコードは表示されますか?
- はい。アプリにアクセスできるすべてのユーザーに公開されます。アプリの公開時に JavaScript が明確に表示されるわけではありませんが、ウェブブラウザへのネットワーク トラフィックを監視することで、アプリの JavaScript を簡単に表示できます。たとえば、Chrome では、デベロッパー ツールの ネットワーク パネルで JavaScript を確認できます。
- 公開されたアプリで「地図の一部を読み込む際にエラーが発生しました」というエラーが発生する原因として、どのようなことが考えられますか?
- アプリで使用されているすべての画像またはテーブル アセットが、一般公開されているか、アプリと共有されていることを確認します。アセット共有ダイアログで、[Anyone can read] オプションを選択するか、プルダウン リストからアプリ名を選択します。Google グループに制限されているアプリの場合、その Google グループとアセットを共有しても、アプリで表示できるようにはなりません。代わりに、アセットをアプリと共有するか、一般公開する必要があります。
- 「アプリの準備がまだできていません」というページが表示されるのはなぜですか?
- アプリの作成後、情報がシステム全体に反映されるまでに時間がかかることがあります。通常、この問題は数分以内に解決します。エラーが解決しない場合は、サポートにお問い合わせください。
- 描画したジオメトリがアプリに表示されるのはなぜですか?
- これにより、アプリで参照ジオメトリを簡単に表示したり、ユーザーがジオメトリを編集できるアプリを作成したりできます。特定のジオメトリを表示または編集したくない場合は、個々のジオメトリ レイヤを非表示またはロックして、アプリを公開する前にユーザーが表示または編集できないようにすることができます。詳しくは、 ジオメトリ ツールのドキュメントをご覧ください。
- アプリの割り当てとは何ですか?
- 誤ったスクリプトやリソースを大量に消費するスクリプトがサービスの可用性に悪影響を及ぼさないように、Earth Engine には同時実行クエリに対するアプリの使用量割り当てが設定されています。この割り当ては、割り当てが特定のユーザーではなくアプリに関連付けられている点を除き、Earth Engine の ユーザーごとの割り当てと同様に機能します。
- 作成したアプリごとに独自の割り当てがありますか?
- はい。各アプリには個別の割り当てが関連付けられています。API キーを使用して作成された古いアプリの場合、割り当ては、アプリの API キーを生成した Cloud プロジェクトに関連付けられます。 同じ Cloud プロジェクトから複数の API キーを生成すると、それらの API キーはすべて同じ使用量割り当てを共有します。
- Cloud 請求先アカウントが必要なのはなぜですか?アプリの料金は請求されますか?
- Google Cloud Platform は、さまざまなバックグラウンド タスクに使用しています。Earth Engine アプリの作成に料金はかかりません。ただし、Google Cloud Storage は無料ではないため、分析結果を Google Cloud Storage にエクスポートする場合は、関連する料金が発生することがあります。
- アプリの使用量と割り当てをより詳しく把握するにはどうすればよいですか?
-
割り当てを超えると、Earth Engine から
HTTP 429: Too Many Requestsエラーが返されることがあります。通常、これらのエラーは Earth Engine クライアント ライブラリによって処理されます。このライブラリは、リクエストを指数バックオフでラップし、クエリが成功するまで再試行します。Earth Engine クライアント ライブラリは、リクエストを 5 回再試行します。アプリの人気が高まり、多くのユーザーが割り当て超過エラーを受け取ると、ユーザーに警告メッセージが表示され、Earth Engine がアプリへのアクセスを(一時的に)制限しなければならない場合があります。
429 エラーの発生を回避するには、アプリケーションのキャッシュを有効にすることをおすすめします。たとえば、キャッシュ可能な集計統計情報をオンザフライで計算するのではなく、Earth Engine テーブル アセットとして保存します。