インターネットから切断されている場合、Web マップをオフラインで利用して、フィーチャを表示したり、収集したり更新することができます。再度接続されると、マップを同期したり、更新情報を送信したり、他のユーザーからのマップ更新情報を取得したりすることができます。
ArcGIS Enterprise ポータルでは、ArcGIS Collector、ArcGIS Survey123、ArcGIS Pro、および ArcGIS Runtime SDK で構築されたカスタム アプリなどの ArcGIS アプリで、オフラインで使用できる Web マップを作成することができます。
オフラインでマップを利用するには、次の 2 つのオプションがあります。アプリは、どちらか片方または両方をサポートしています。
- オンデマンド - フィールド ユーザーは、必要な時にマップの一部をダウンロードできます。フィールド ユーザーは、オフラインで利用するエリアを、必要なベースマップの詳細とともに指定します。
- マップ エリアの作成 - マップ作成者は、前もってマップ エリアを作成し、そのマップに特定エリアのデータをパッケージ化できます。マップ エリアを使用すると、フィールド スタッフのマップのダウンロード プロセスが短縮され、簡単になります。
オフラインでのレイヤーおよびマップの使用の有効化
Web マップをオフラインで利用するには、ベースマップや参照レイヤーを含め、すべてのレイヤーでオフラインでの使用が有効化されている必要があります。次のタイプのマップ レイヤーでオフラインでの使用を有効化できます。
- キャッシュ ArcGIS Server マップ サービス (ArcGIS Server 10.3 以降) およびキャッシュ ArcGIS Server イメージ サービス (ArcGIS Server 10.5.1 以降) - [高度な設定] の [クライアントがキャッシュ タイルをエクスポートすることを許可] チェックボックスをオンにします。
- ArcGIS Server フィーチャ サービス (ArcGIS Server 10.3 以降。マップ エリアを使用する場合は、10.6.1 以降) - [クエリ] と [同期] オプションを選択して、オフラインでの使用を有効化します。データを編集可能にする場合は、[作成]、[削除]、[更新] の任意の組み合わせも選択します。
- ホスト フィーチャ レイヤー - アイテム ページの [設定] タブの [同期を有効化] チェックボックスをオンにします。
- ホスト タイル レイヤー - アイテム ページの [設定] タブの [このレイヤーのダウンロードとオフライン マップでの使用を許可します。] チェックボックスをオンにします。
ベクター ホスト タイル レイヤーを特定の ArcGIS アプリでオフライン使用できるかどうかを判断するには、アプリのドキュメントをご参照ください。
ポータルに含まれているデフォルトの Esri ベースマップは、オフラインでは使用できません。ArcGIS Online の Esri ベースマップを Web マップに追加することで、同様のベースマップをオフライン取得することができます。
メモ:
マップおよびマップ内のすべてのキャッシュされたサービスに同じ空間参照を使用する必要があります (ベースマップおよびホスト タイル レイヤーを含む) 。
マップをオフラインで使用するためのマップ エリアを作成するときは、編集者がフィーチャ レイヤー内で各自が所有するフィーチャのみ編集できるようにしている場合、編集者にエリア内のすべてのフィーチャを表示できることを確認してください。ホスト フィーチャ レイヤーの場合、これは [編集者は、各自が所有するフィーチャのみを編集できる (編集情報の記録が必要)] も選択されている場合に、[編集者は、すべてのフィーチャを閲覧できる] オプションを選択することを意味します。
同じホスト フィーチャ レイヤーまたは ArcGIS Server フィーチャ レイヤーを複数回含むマップでは、オフラインでの使用をサポートしていません。たとえば、同じレイヤーを 2 回追加し、それぞれにフィルターや異なるスタイルを適用することができます。オフライン取得した Web マップで同じデータを参照するには、次の手順を実行します。
- ホスト フィーチャ レイヤーの場合は、ホスト フィーチャ レイヤー ビューを作成します。この操作により、マップに追加できる個別のレイヤーが作成されます。ビュー定義を設定し、必要に応じて異なるスタイルを適用します。
- ArcGIS Server フィーチャ レイヤーの場合は、一意の名前を持つ個別のフィーチャ サービスを公開します。その後、フィーチャ レイヤーを同じ Web マップに追加して、フィルターおよびスタイルを適用できます。
レイヤーのオフラインでの使用を有効にすると、[オフライン モードの有効化] 切り替えキーがオンになった状態で、[オフライン] セクションがマップのアイテム ページの [設定] タブに表示されます。マップをオフラインで利用しない場合は、[オフライン モードを有効化] 切り替えキーをオフにして、[保存] をクリックします。
オフラインで利用するマップにタイル レイヤーが含まれている場合は、そのタイル レイヤーのソース サービス定義ファイル、タイル パッケージ、またはベクター タイル パッケージがポータルに存在している必要があります。
Esri ベースマップのオフライン利用
ArcGIS Online の Esri ベースマップと、ArcGIS Enterprise Web マップをオフライン取得できます。このためには、ArcGIS Online に組織のメンバーとしてのアカウントが存在し、次の手順を実行する必要があります。
- ArcGIS Online のタイル ベースマップまたはベクター ベースマップ グループで、使用するベースマップを検索し、そのアイテム ページを開きます。
- アイテム ページの [URL] セクションで、レイヤーの URL を含むテキスト ボックスの横の [コピー] をクリックします。
- ArcGIS Enterprise ポータルにサイン インします。
- [コンテンツ] をクリックし、[マイ コンテンツ] タブに移動します。
- [アイテムの追加] をクリックして、[Web 上] を選択します。
- [ArcGIS Server Web サービス] を選択します。
- [URL] テキスト ボックスに、手順 2 でコピーしたベースマップ リンクを貼り付けます。[タイトル] テキスト ボックスをクリックすると、[URL] テキスト ボックスの選択が外れます。
サービス情報は、ArcGIS Online から取得されます。セキュリティで保護されていることが検出され、[URL] テキスト ボックスの下に [ユーザー名] と [パスワード] のテキスト ボックスが表示されます。
- ArcGIS Online の組織サイトのメンバーであるアカウントのユーザー名とパスワードを指定し、[サービスのアイテムと一緒に認証情報を保存します。] を選択します。
- [アイテムの追加] をクリックします。
新しいアイテムのアイテム ページが表示されます。
- ベクター タイル マップを使用する場合、[すべての人 (パブリック)] とアイテムを共有します。
- 複数のマップでベースマップを使用できるようにするには、新しいレイヤーをベースマップとして使用するマップを作成し、組織のベースマップ ギャラリーで共有します。マップ作成の詳細については、「独自のベースマップの使用」をご参照ください。ベースマップ ギャラリーでの共有の詳細については、「組織サイトのベースマップ ギャラリーのベースマップとしてレイヤーを使用できるようにするにはどうしたらよいですか?」をご参照ください。
メモ:
組織サイトのベースマップ ギャラリーと共有されているマップは、オフライン専用で使用し、一般的なマップ表示には使用しないでください。
- Map Viewer を使用して、オフライン取得するマップを開き、次のいずれかの方法でベースマップを使用するように更新します。
- ベースマップ ギャラリーにベースマップを追加していた場合、[ベースマップ] をクリックして、ベースマップ ギャラリーで新しく作成したベースマップをクリックします。
- そのマップでのみ使用するためにレイヤーをベースマップとして追加するには、「独自のベースマップの使用」をご参照ください。
- 変更をマップに保存します。
マップ エリアの作成、編集、管理
Web マップでオフラインでの使用を有効化したら、オフラインで使用される Web マップのマップ エリアを作成して、フィールド スタッフのオフラインでの作業を簡素化することをお勧めします。マップ エリアを利用すると、Web マップの特定エリアのデータをパッケージ化することで、オフラインで使用するマップを迅速かつ簡単にダウンロードできます。マップ エリアは、ArcGIS Collector、ArcGIS Survey123 および ArcGIS Runtime SDK カスタム アプリで使用できます。
マップ エリアを作成すると、指定されたエリア内のデータが 1 つまたは複数のダウンロード可能なパッケージにバンドルされます。フィーチャ レイヤーは SQLite データベース ファイル (*.geodatabase)、タイル レイヤーはタイル パッケージ (*.tpk)、ベクター タイル レイヤーはベクター タイル パッケージ (*.vtpk) にそれぞれまとめられます。パッケージ名は、含まれているレイヤーの名前を反映します。
マップ内のレイヤーを更新したとき、対応するマップ エリア パッケージを更新する必要があります。更新スケジュールを設定して、指定した間隔と時間 (たとえば、毎週月曜日午前 9:00) でフィーチャ レイヤー パッケージを更新できます。個別またはすべてのレイヤー パッケージを手動で更新することもできます。Web マップでレイヤーが追加または削除された場合、マップ エリア全体を更新して、データを更新する必要があります。場合によっては、マップ エリアを再作成または削除する必要があります。
メモ:
マップ エリアを含む Web マップは、メンバーがすべてのアイテムを更新できるグループとは共有できません。また、ポータルの管理者は、マップ エリアを含む Web マップの所有権を変更できません。
Web マップのマップ エリアを作成、編集、および管理するには、マップの所有者である必要があり、コンテンツを作成する権限が必要です。
マップ エリアの作成
Web マップのマップ エリアは最大 16 個作成できます。作成するマップ エリアの数は、組織とフィールド スタッフのニーズによって異なります。マップ エリアを作成する前に、マップの高度なオフライン設定を構成します。マップ エリアを作成した後にこれらの設定を変更した場合、更新された設定を使用するために、マップ エリアを再作成する必要があります。
マップ エリアを作成するには、次の手順を実行します。
- マップ内のすべてのレイヤーがオフラインでの使用を有効化されていることを確認します。
- Web マップのアイテム ページで、[設定] タブをクリックし、タブの上部にある [オフライン] をクリックします。
- [オフライン] セクションで、[オフライン モードの有効化] 切り替えキーがオンであることを確認します。
- [マップ エリア] の下で、[エリアの管理] をクリックします。
- [エリアの管理] ウィンドウで、[エリアの作成] をクリックします。
- 次のいずれかを実行して、マップ エリアを作成するマップの部分に移動します。
- ズーム ボタンを使用して、拡大/縮小します。
- マップにブックマークがある場合は、[ブックマークの表示] ボタンをクリックしてからブックマークをクリックすると、マップのブックマークしたエリアに移動します。
- 特定の場所または住所に移動するには、検索ボックスにキーワードを入力します。キーワードとして、住所、道路の交差点、場所、対象地点、緯度と経度の座標、フィーチャ ID などを入力できます。
- マップ エリアを表す形状を描画するには、[スケッチ] ツールバーにあるボタンのいずれかをクリックします。
- オフラインで使用するエリアを囲むボックスを描画するには、[四角形のマップ エリアをスケッチ] ボタン をクリックして、マップ上にボックスを描画します。
- オフラインで使用する必要のあるエリアを定義するポリゴンを描画するには、[ポリゴンのマップ エリアをスケッチ] ボタン をクリックして、マップ上にポリゴンを描画します。
- マップ エリアの形状を移動させるには、そのマップ エリアを選択して、マップ上の新しい位置までドラッグします。
- 四角形のマップ エリアの形状を変更するには、その四角形をクリックして選択し、ポインターが変化するまで頂点にポインターを合わせ、その頂点を目的の位置までドラッグします。四角形のマップ エリアが目的の形状になるまで、この操作をすべての頂点に対して繰り返します。
- ポリゴン エリアの形状を変更するには、次の手順に従ってください。
- 該当するポリゴンをクリックして選択し、[スケッチ] ツールバーにある [マップ エリアの形状変更] ボタンをクリックします。
そのポリゴンの頂点が表示されます。
- 頂点をクリックして選択します。
- 選択した頂点を移動させるには、新しい位置までドラッグします。
- 選択した頂点を削除するには、キーボード上の Backspace キーを押します。
- そのマップ エリアが目的の形状になるまで、手順 b ~ d をすべての頂点に対して繰り返します。
- 該当するポリゴンをクリックして選択し、[スケッチ] ツールバーにある [マップ エリアの形状変更] ボタンをクリックします。
- [名前] ボックスに、マップ エリアを説明する名前を入力します。
- ダウンロードしたラスターまたはベクター タイル レイヤーの品質および解像度を変更するには、[詳細レベル] スライダーを右 (詳細度を上げる場合) または左 (詳細度を下げる場合) に移動します。
作成するマップ エリアに適した詳細レベルを設定します。詳細レベルが大きすぎる場合 (詳細レベルを [道路] に設定しているが、マップ エリアがスペインのサイズである場合など)、マップ エリアのサイズを縮小するか、詳細レベルを下げる必要があることを示す警告が表示されます。
- [ダウンロード用のパッケージを更新します] の下で、フィーチャ レイヤー データの変更を取得するためにマップ エリア パッケージを更新する間隔と時間を設定します。自動更新スケジュールを設定しない場合は、ドロップダウン メニューから [なし] を選択します。
メモ:
スケジュール設定された更新は、タイル レイヤーに適用されません。タイル レイヤー パッケージは、必要に応じて手動で更新する必要があります。
- [保存] をクリックします。
新しいマップ エリアが [マップ エリア] リストに表示され、そのエリアがパッケージ化されることを示すバッジも表示されます。パッケージ化されるデータのサイズによっては、数秒または数分かかることがあります。パッケージ化が正常に終了したら、そのマップ エリアの矢印をクリックして、作成済みパッケージのリストを表示できます。
- このマップにエリアをさらにいくつか作成するには、[新しいエリアの作成] をクリックして、手順 6 ~ 14 を繰り返します。Web マップごとに作成できるマップ エリアの数は最大 16 個です。
マップ エリアの編集
マップ エリアを作成したら、その名前、形状、詳細レベル、またはフィーチャ レイヤー パッケージを更新するスケジュール (設定した場合) を変更できます。
マップ エリアを編集するには、次の手順を実行します。
- Web マップのアイテム ページで、[設定] タブをクリックし、タブの上部にある [オフライン] をクリックします。
- [オフライン] セクションで、[オフライン モードの有効化] 切り替えキーがオンであることを確認します。
- [マップ エリア] の下で、[エリアの管理] をクリックします。
- 必要に応じて、編集するマップ エリアを見つけやすくするために、[マップ エリアの絞り込み] フィールドにマップ エリア名の一部を入力します。
- 編集するマップ エリアの矢印をクリックした後、マップ エリア ウィンドウの上部にある [オプション] ボタン をクリックしてから [編集] をクリックします。
- [マップ エリアの編集] ウィンドウで、必要に応じて、設定を変更するかマップ エリアの形状を変更します。
- 完了したら [保存] をクリックします。
マップ エリアの管理
マップ エリア パッケージは、いつでも更新、再作成、削除できます。
データが頻繁に変更される場合、マップ エリアの更新スケジュールを設定すると、ArcGIS Enterprise でそのマップ エリアのフィーチャ レイヤー パッケージは指定した間隔と時間で自動的に更新されます。アプリはポータルと同期することができ、接続して更新が必要になった場合にいつでもこれらの更新を取得します。アプリは同期する際、オフライン マップで編集可能なフィーチャ レイヤーに対して行った編集内容をアップロードすることもできます。
さらに、アプリが読み取り専用で使用する更新されたマップ エリアを取得可能な頻度を制御する、スケジュールされた更新を有効にすることができます。このシナリオでは、更新されたパッケージをどのタイミングでダウンロード可能にするかを定義します。これは一方向の更新であり、クライアントは更新されたパッケージをダウンロードすることのみが可能であり (行った編集内容を同期しません)、パッケージに指定されている更新日時以降にのみ更新内容をダウンロードできます。これらのスケジュールされた更新では、同期よりもパフォーマンスとスケーラビリティにいくつかの利点があり、更新内容を数千人のユーザーに効率的にアップロードできます。
メモ:
オフライン Web マップにバージョン対応データを参照する編集可能な ArcGIS Server フィーチャ サービスが含まれている場合、読み取り専用で使用するために更新されたパッケージを生成するスケジュールされた更新を有効にすることはできません。これらの更新パッケージにこのデータを含める必要がある場合、2 つ目のフィーチャ サービスを ArcGIS Server のサイトに公開し、編集を有効にしないで、そのサービスをオフライン Web マップで使用します。
パッケージを更新すると、そのパッケージが前回作成または更新されてからマップ データに加えられた変更を反映するように、中のデータが更新されます。マップ エリア パッケージを更新する方法とタイミングを決定する際には、以下を考慮してください。
- マップでレイヤーが追加または削除された場合、マップ エリアを更新する必要があります。この場合、マップ エリア全体を更新して、データを更新する必要があります。
- 1 つまたは複数のフィーチャ レイヤー内のデータが前回パッケージ化されてから大幅に変更された場合、パッケージを更新する必要があります。
- 参照用にのみマップの更新をダウンロードする必要がある多数のクライアントが同時に接続している場合、更新されたパッケージをいつ生成するかをスケジュールできます。これはデータを編集する必要がないクライアントに更新を提供するためのより効率的な手段です。パッケージは (理想的には) ポータルの使用率が低いときに生成されます。クライアントは、クライアントとポータル間での同期に必要なリソースを追加することなく、接続して更新されたパッケージをダウンロードできます。
状況によっては、マップ エリアを再作成する必要があります。マップ エリアを再作成すると、既存のパッケージはすべて削除され、マップ内にあるすべてのレイヤーの新しいパッケージが作成されます。次の場合は、マップ エリアを再作成する必要があります。
- フィールドがマップ内のレイヤーに追加されたり、レイヤーから削除された場合。
- マップ内のドメインまたはフィーチャ テンプレートが変更された場合。
マップ エリアの再作成は必ず手動で行います。
マップ エリアが不要になったら、削除することができます。マップ エリアを削除すると、そのマップ エリアの既存のパッケージがすべて削除されます。マップ エリアの更新をスケジュールしている場合でも、Web マップからマップ エリアを削除した後は、新しいマップ エリア パッケージは作成されません。ただし、マップ エリアをダウンロードしたアプリは、そのフィーチャ レイヤーが存在する限り、引き続きデータを同期できます。
既存のマップ エリアを管理するには、次の手順に従います。
- Web マップのアイテム ページで、[設定] タブをクリックし、タブの上部にある [オフライン] をクリックします。
- [オフライン] セクションで、[オフライン モードの有効化] 切り替えキーがオンであることを確認します。
- [マップ エリア] の下で、[エリアの管理] をクリックします。
- 1 つまたは複数のマップ エリアを更新するには、更新するマップ エリア (複数可) の横にあるチェックボックスをオンにして、ショートカット メニューの [更新] をクリックします。
- 1 つまたは複数のマップ エリアを再作成するには、次の手順に従います。
- 再作成するマップ エリア (複数可) の横にあるチェックボックスをオンにして、ショートカット メニューの [再作成] をクリックします。
- [再作成] をクリックして、選択したマップ エリアを再作成することを確認します。
- オフラインの読み取り専用で使用するために、更新されたマップ エリア パッケージの作成をスケジュールするには、[スケジュールされた更新の有効化] 切り替えボタンをオンにします。マップ エリア パッケージを更新する間隔と時間を設定することもできます。この間隔は、フィーチャ レイヤー データの変更を取得するためにパッケージを更新する間隔と同じです。
- 1 つまたは複数のマップ エリアを削除するには、削除するマップ エリア (複数可) の横にあるチェックボックスをオンにして、ショートカット メニューの [削除] をクリックします。
メモ:
エリアはすぐに削除され、復元できなくなります。
プロジェクトに適したオフラインの高度な設定を選択します。
オフラインで使用するためにマップを作成する場合、高度なオフライン オプションを調整して、データが最初にダウンロードされる方法とその後オフライン デバイスで同期される方法を制御できます。これらの設定は、ユーザーがモバイル デバイスで行った編集には影響しません。編集内容は、常に元のデータに同期されます。
メモ:
マップがオフラインでの使用の要件だけでなく、次の要件も満たしている場合は、オフラインの高度な設定を構成できます。
- マップ内に編集可能なフィーチャ レイヤーが 1 つ以上存在する。
- マップ内の編集可能なすべてのフィーチャ レイヤーがホスト フィーチャ レイヤーであるか、ArcGIS Server 10.4 以降のフィーチャ サービスである。
オフラインの高度な設定は、ArcGIS Collector ですぐに使用できます。ArcGIS Runtime SDK で独自のアプリを構築している開発者は、サポートされていない JSON を使用すると、これらの高度な設定を有効に活用することができます。たとえば、ArcGIS Runtime SDK for .NET でアプリを構築している場合は、UnsupportedJson プロパティを使用できます。
オフラインの高度な設定を調整するには、次の手順に従います。
- マップ内のすべてのレイヤーがオフラインでの使用を有効化されていることを確認します。
- Web マップのアイテム ページで、[設定] タブをクリックし、タブの上部にある [オフライン] をクリックします。
- [オフライン] セクションで、[オフライン モードの有効化] 切り替えキーがオンであることを確認します。
- [高度な設定] をクリックします。
- [フィーチャと添付ファイルの送信を制御します] で、最初にマップがダウンロードされるとき、およびマップからデバイスにデータの更新内容が同期されるたびに、添付ファイルとフィーチャをオフライン デバイスに送信する方法を指定します。デフォルトでは、デバイスは、編集可能なレイヤーと読み取り専用のレイヤーのフィーチャと添付ファイルの両方をダウンロードおよび更新します。
- [編集可能なフィーチャ] で、編集可能なレイヤーのフィーチャと添付ファイルを送信するためのオプションを選択します。選択できる内容は、フィーチャと添付ファイル両方の送信、フィーチャのみの送信、どちらも送信しない、のいずれかです。
- [読み取り専用フィーチャ] で、読み取り専用のレイヤーのフィーチャと添付ファイルを送信するためのオプションを選択します。選択できる内容は、フィーチャと添付ファイル両方の送信、フィーチャのみの送信、のいずれかです。
ヒント:
デバイスのストレージ、携帯電話のデータ使用量、ダウンロードおよび同期の速度、特に通信状況が悪い地域でのダウンロードおよび同期の速度に関連する懸念事項や制限事項に応じて、適切なオプションを選択します。たとえば、オフライン ユーザーが添付ファイルを表示する必要がない場合は、フィーチャの更新のみの送信を選択できます。また、編集可能なレイヤーの添付ファイルとフィーチャを送信するが、読み取り専用レイヤーでは送信しないようにすることもできます。
- [タイル パッケージをオフライン ベースマップに使用します] で、次のいずれかを選択して、オフライン デバイスのベースマップとして使用するものを指定します。
- [デバイスは、Web マップで定義されたベースマップを使用します] - このオプションを選択すると、マップ内の現在のベースマップがオフラインで使用されます。
- [デバイスは、それ自体がすでに所有しているタイル パッケージを使用します] - このオプションを選択すると、オフライン マップは、すでにデバイス上にあるタイル パッケージを使用します。タイル パッケージをベースマップとして使用すると、より大規模で詳細なベースマップをダウンロードし、必要に応じてオフラインで使用できるようになります。このオプションを選択する前に、タイル パッケージがオフラインで作業する予定のエリアをカバーしていることを確認します。
- [保存] をクリックして変更内容を保存します。