Skip To Content

离线使用 web 地图

离线使用 web 地图支持在断开 Internet 连接的情况下查看、收集和更新要素。重新连接后,您可以同步您的地图、发送您所作出的更新,以及从其他用户处获取地图更新。

您可以在 ArcGIS Enterprise 门户中创建 web 地图,以供在 ArcGIS 应用程序(例如 Collector for ArcGIS)、ArcGIS Pro 和通过 ArcGIS Runtime SDK 构建的自定义应用程序中离线使用。

可以通过以下两个选项来离线使用地图。有些应用程序可能支持其中一个或另一个,或者两者都支持。

  • 按需 - 外业用户可根据需要随时下载地图的任何部分。外业用户可以指定他们想要离线使用的区域以及所需底图的详细信息。
  • 创建地图图区域 - 地图作者可以提前创建地图区域以打包特定区域的数据。地图区域创建加快并简化外业工作人员的地图下载过程。

启用图层和地图的离线使用功能

要离线使用 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 要素图层的地图将不支持离线使用。例如,您可以添加两次相同的图层,并为每个图层应用过滤器或不同样式。要在 web 地图中引用相同的数据,您可以执行以下操作:

  • 对于托管要素图层,创建托管要素图层视图。这提供了可以添加到地图的不同图层。设置视图定义并根据需要应用不同的样式。
  • 对于 ArcGIS Server 要素图层,发布具有唯一名称的单独要素服务。然后,您可以将要素图层添加到同一 web 地图以应用过滤器和样式。

对图层启用离线使用功能后,离线部分会显示在地图项目页面设置选项卡中,并且启用离线模式切换键处于启用状态。如果您不想离线使用地图,请单击启用离线模式切换键将其关闭,然后单击保存

如果您希望离线使用的地图中包含切片图层,则该切片图层的源服务定义文件、切片包或矢量切片包必须存在于您的门户中。

离线使用 Esri 底图

您可以使用 ArcGIS Enterprise web 地图从 ArcGIS Online 离线使用 Esri 底图。为此,您必须具有 ArcGIS Online 中的组织成员帐户,并完成以下步骤:

  1. ArcGIS Online 中的切片底图矢量底图组内找到要使用的底图,然后打开其项目页面。
  2. 在项目页面上的 URL 部分,单击包含图层 URL 的文本框旁的复制
  3. 登录至 ArcGIS Enterprise 门户。
  4. 单击内容,转到我的内容选项卡。
  5. 单击添加项目,然后选择来自 web
  6. 选择 ArcGIS Server Web 服务
  7. URL 文本框中粘贴步骤 2 中复制的底图链接。单击标题文本框以便不再选择 URL 文本框。

    此服务信息将从 ArcGIS Online 中检索出来。检测到此信息安全,然后在 URL 文本框下显示用户名密码文本框。

  8. 提供您帐户(此帐户为 ArcGIS Online 的组织成员)的用户名和密码,然后选择将凭据与服务项目一同存储
  9. 单击添加项目

    随即将出现新项目的项目页面。

  10. 如果您使用的是矢量切片地图,将项目与所有人(公众)共享
  11. 要使底图可跨地图使用,可以创建使用新图层作为底图的地图,并与组织的底图库进行共享。有关创建地图的详细信息,请参阅使用您自己的底图。有关与底图库共享的详细信息,请参阅如何在组织的底图库中使图层作为底图?
    注:

    与组织的底图库共享的地图应仅限于离线使用,而不能用于常规地图查看。

  12. 使用 Map Viewer 打开您希望离线使用的地图,并通过以下方式之一对其进行更新以便使用底图:
    • 如果已将其添加到底图库,请单击底图,然后在底图库中单击新创建的底图。
    • 要仅针对此地图添加图层作为底图,请参阅使用您自己的底图
  13. 将更改保存到地图中。

创建、编辑和管理地图区域

启用 web 地图离线使用功能后,建议您为将要离线使用的 web 地图创建地图区域,以简化离线外业工作人员的体验。地图区域允许您打包 Web 地图特定区域的数据,以便更轻松、快速地下载地图供离线使用。地图区域可用于 Collector for ArcGISArcGIS Runtime SDK 自定义应用程序。

创建地图区域时,指定区域中的数据会被绑定到一个或多个可下载包中。要素图层被绑定到 SQLite 数据库文件 (.geodatabase),切片图层被绑定到切片包 (.tpk),矢量切片图层被绑定到矢量切片包 (.vtpk)。包名称反映了其包含图层的名称。

更新地图中的图层时,必须刷新相应的地图区域包。您可以设置刷新计划,以指定的间隔和时间(例如每周一上午 9:00)来刷新要素图层包。也可以手动刷新单个或所有图层包。如果从 Web 地图添加或删除图层,则必须刷新整个地图区域才能更新数据。在某些情况下,您可能还需要重新创建或删除地图区域。

注:

您无法与可供成员更新群组中所有项目的群组共享包含地图区域的 web 地图,且门户管理员不可以对包含地图区域的 web 地图进行所有权更改

创建编辑管理 web 地图的地图区域,您必须是该地图的所有者并具有发布内容的权限。

创建地图区域

您最多可以为 web 地图创建 16 个地图区域。您创建的地图区域数量取决于您的组织及其外业工作人员的需要。在创建地图区域前,请确保为您的地图配置高级离线设置。如果在创建地图区域后修改这些设置,则需要重新创建地图区域才能使用更新的设置。

请执行以下操作以创建地图区域:

  1. 确保地图中的所有图层均已启用离线使用功能
  2. 在 web 地图的项目页面中,单击设置选项卡,然后单击选项卡顶部的离线
  3. 离线部分中,确保启用离线模式切换键处于启用状态。
  4. 地图区域下,单击管理区域
  5. 管理区域窗口中,单击创建区域
  6. 执行以下任意操作以导航至要创建地图区域的地图部分。
    • 使用缩放按钮进行缩放。
    • 如果地图中包含书签,请单击显示书签按钮,然后单击书签以导航至地图区域。
    • 要导航至特定地点或地址,请在搜索框中输入关键字。关键字可包括地址、街道交叉口、地点、感兴趣点、经纬度坐标和要素 ID。
  7. 要绘制一个表示地图区域的形状,单击草图工具条中的一个按钮。
    • 要在区域周围绘制一个框以供离线使用,单击草绘矩形地图区域按钮 绘制矩形 并在地图上绘制一个框。
    • 要绘制一个多边形以定义需要离线使用的区域,单击草绘多边形地图区域按钮 绘制多边形并在地图上绘制多边形。
  8. 要移动地图区域形状,请将其选中并拖动到地图上的新位置。
  9. 要更改矩形地图区域的形状,请单击矩形将其选中,将鼠标悬停在折点上直到鼠标指针发生变化,然后将折点拖动到所需位置。对任意顶点重复此操作,直至对矩形区域满意。
  10. 要更改多边形区域的形状,请执行以下步骤:
    1. 单击多边形以将其选中,然后单击草图工具条上的修整地图区域按钮。

      多边形顶点随即显示。

    2. 单击折点以将其选中。
    3. 要移动所选折点,将其拖动至新位置。
    4. 要删除所选折点,按键盘上的 Backspace
    5. 对任意折点重复步骤 b 至 d,直到对区域的形状满意。
  11. 名称框中,输入地图区域的描述性名称。
  12. 要更改下载的栅格或矢量切片图层的质量和分辨率,请将细节层次滑块向右移动(更多详细信息)或向左移动(更少详细信息)。

    设置适合您创建的地图区域的细节层次。如果细节层次过大(例如,您将细节级别设置为街道但是您的地图区域为西班牙大小),您将收到一个警告,表明必须减少地图区域或降低细节层次。

  13. 单击保存

    您的新地图区域随即显示在地图区域列表中,并具有一个标记,表示区域正在打包中。打包可能需要几秒钟或几分钟,具体取决于要打包数据的大小。打包成功完成后,单击地图区域的箭头即可查看创建的包列表。

  14. 要为此地图创建更多区域,单击创建新区域并重复步骤 6 到 13。 您最多可以为每个 web 地图创建 16 个地图区域。

编辑地图区域

创建地图区域后,您可能想要更改其名称、形状、细节层次或刷新要素图层包的计划(如果已设置)。

请执行以下操作以编辑地图区域:

  1. 在 web 地图的项目页面中,单击设置选项卡,然后单击选项卡顶部的离线
  2. 离线部分中,确保启用离线模式切换键处于启用状态。
  3. 地图区域下,单击管理区域
  4. 如有必要,可在过滤地图区域字段中输入部分地图区域名称,以帮助您找到要编辑的地图区域。
  5. 单击要编辑的地图区域的箭头,然后在地图区域窗格顶部,单击选项按钮 选项,并单击编辑
  6. 编辑地图区域窗格中,更改任意设置,或根据需要更改地图区域的形状。
  7. 完成后,单击保存

管理地图区域

可以随时刷新、重新创建或删除地图区域包。

如果对地图区域设置了刷新计划,则其要素图层包将以指定的间隔和时间自动刷新。您还可以选择手动刷新地图区域包。刷新包将更新其包含的数据,以反映自上次创建或刷新程序包以来对地图数据所做的任何更改。如果发生以下情况,则应对包进行刷新:

  • 将从地图中添加或删除图层。在这种情况下,必须刷新整个地图区域才能相应地更新数据。
  • 自上次打包以来,对一个或多个要素图层中的数据进行了大量更改。

在某些情况下,必须重新创建地图区域。重新创建地图区域时,将删除所有现有包,并为地图中的所有图层创建新包。在以下情况下,必须重新创建地图区域:

  • 向地图中的图层添加了字段或从中移除了字段。
  • 已修改地图中的域或要素模板。

如果不再需要地图区域,可将其删除。删除地图区域将删除地图区域的所有现有包。但是,如果从 web 地图中删除地图区域,则只要要素图层存在,已下载地图区域的应用程序就可以继续同步数据。

要管理现有地图区域,请执行以下操作:

  1. 在 web 地图的项目页面中,单击设置选项卡,然后单击选项卡顶部的离线
  2. 离线部分中,确保启用离线模式切换键处于启用状态。
  3. 地图区域下,单击管理区域
  4. 要刷新一个或多个地图区域,请选中要刷新的一个或多个地图区域旁边的框,然后在快捷菜单中单击刷新
  5. 要重新创建一个或多个地图区域,请执行以下操作:
    1. 选中要重新创建的一个或多个地图区域旁边的框,然后在快捷菜单中单击重新创建
    2. 单击重新创建以确认您选择要重新创建的一个或多个地图区域。
  6. 要删除一个或多个地图区域,请选中要删除的一个或多个地图区域旁边的框,然后在快捷菜单中单击删除

    注:

    将立即删除区域且无法恢复。

选择工程右侧的高级离线选项

创作地图以供离线使用时,您可以通过调整高级离线选项来控制数据的初始下载方式,以及随后同步到离线设备的方式。这些设置不会影响用户在移动设备上进行的编辑;编辑内容始终同步回原始数据。

注:

如果地图符合离线使用要求以及以下要求,则可以配置高级离线选项:

  • 地图中至少有一个可编辑要素图层。
  • 地图中的所有可编辑要素图层为托管要素图层或 ArcGIS Server 10.4 或更高版本的要素服务。

这些高级离线选项在 Collector for ArcGIS 中为既定配置。使用 ArcGIS Runtime SDK 构建自己的应用程序的开发人员可使用不受支持的 JSON 来利用这些高级选项。例如,如果要使用 ArcGIS Runtime SDK for .NET 构建一个应用程序,则可以使用 UnsupportedJson 属性

要调整高级离线设置,请完成以下步骤:

  1. 确保地图中的所有图层均已启用离线使用功能
  2. 在 web 地图的项目页面中,单击设置选项卡,然后单击选项卡顶部的离线
  3. 离线部分中,确保启用离线模式切换键处于启用状态。
  4. 单击高级选项
  5. 控制要素和附件传送下,指定首次下载地图时以及每次将数据更新从地图同步到设备时,如何向离线设备传送附件和要素。默认情况下,设备将下载并获取可编辑图层和只读图层的要素和附件的更新。
    • 可编辑要素下,选择用于在可编辑图层中传送要素和附件的选项。您可以传送要素和附件,也可以仅传送要素,或者二者都不传送。
    • 只读要素下,选择用于在只读图层中传送要素和附件的选项。您可以传送要素和附件,或仅传送要素。
    提示:

    根据用户需要离线查看的内容,以及与设备存储、移动数据使用以及下载和同步速度相关的任何问题或限制,选择有意义的选项,尤其是在连接质量较差的区域。例如,如果离线用户不需要查看附件,您可以选择仅传送要素更新,或者您可以传送可编辑图层的附件和要素,但不传送只读图层的附件和要素。

  6. 使用切片包作为离线底图下,选择以下选项之一,以指定在离线设备上应该用作底图的内容:
    • 设备将使用 Web 地图定义的底图 - 如果选择此选项,则将离线使用当前地图中的底图
    • 设备将使用已有的切片包 - 如果选择此选项,离线地图将使用设备上已有的切片包。使用切片包作为底图,您可以在需要时下载更大、更详细的底图以供离线使用。在选择此选项之前,请确保切片包已经覆盖了您计划离线使用的区域。
  7. 单击保存保存更改。