OfflineMapPackage 类

定义

表示特定地理区域的地图数据。 可以脱机下载和使用数据。

public ref class OfflineMapPackage sealed
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 262144)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class OfflineMapPackage final
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 262144)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class OfflineMapPackage
Public NotInheritable Class OfflineMapPackage
继承
Object Platform::Object IInspectable OfflineMapPackage
属性

Windows 要求

设备系列
Windows 10 Creators Update (在 10.0.15063.0 中引入)
API contract
Windows.Foundation.UniversalApiContract (在 v4.0 中引入)

示例

以下示例使用地理位置查找地图包。 如果以前尚未将映射包下载到本地系统,此代码会异步下载该映射。

注意

边框或大框和圆圈附近的点可能会返回多个地图包匹配项。

private async Task getMapPackages()
{
    Geopoint myPoint = new Geopoint(new BasicGeoposition()
    {
        //Geopoint for Seattle
        Latitude = 47.604,
        Longitude = -122.329
    });

    var queryResult = await OfflineMapPackage.FindPackagesAsync(myPoint);

    if (queryResult.Status == OfflineMapPackageQueryStatus.Success)
    {
        foreach (OfflineMapPackage package in queryResult.Packages)
        {
            if (package.Status != OfflineMapPackageStatus.Downloaded)
            {
                var downloadRequestResult = await package.RequestStartDownloadAsync();

                if (downloadRequestResult.Status == OfflineMapPackageStartDownloadStatus.Success)
                {
                    // do something with the offline map package.
                }
            }
        }
    }
}

注解

重要

必应地图企业版服务停用

来自 Windows.Services.Maps 命名空间中的 UWP MapControl 和地图服务依赖于必应地图。 必应地图企业版已弃用,并且将停用,此时 MapControl 和服务将不再接收数据。

有关详细信息,请参阅 必应地图开发人员中心必应地图文档

使用此类以异步方式查找你希望脱机使用的映射包。 可以检查包的状态,以确定这些包是否存在在本地系统上。 如果没有,可以异步将其下载到系统。

然后,可以在系统控件(如 MapControl)以及 Windows.Services.Maps 命名空间中的其他对象中访问这些数据。

重要

使用此类需要 Offline Maps Management 功能(请参阅 应用功能声明)。

属性

DisplayName

获取脱机地图包的地理位置的显示名称。

EnclosingRegionName

获取脱机地图包的周围或包含区域(例如:美国)。

EstimatedSizeInBytes

获取脱机映射包的估计大小(以字节为单位)。

Status

获取地图包的状态(例如,包是否下载到本地系统)。

方法

FindPackagesAsync(Geopoint)

启动异步操作以查找包含指定地理位置地图数据的地图包。

FindPackagesInBoundingBoxAsync(GeoboundingBox)

启动异步操作以查找包含指定四面地理区域的地图数据的地图包。

FindPackagesInGeocircleAsync(Geocircle)

启动异步操作以查找包含指定地理区域的地图数据的地图包。

RequestStartDownloadAsync()

启动异步操作以请求将地图包下载到本地系统。

事件

StatusChanged

OfflineMapPackageQueryResult 的状态 更改时发生。

适用于