Поделиться через


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.
                }
            }
        }
    }
}

Комментарии

Важный

Карты Bing для корпоративной службы

MapControl UWP и службы карт из пространств имен Windows.Services.Maps используют карты Bing. Карты Bing для предприятия устарели и будут прекращены, в то время как mapControl и службы больше не будут получать данные.

Дополнительные сведения см. в Центра разработчиков Карт Bing и документации по картам Bing.

Используйте этот класс для асинхронного поиска пакетов карты, которые вы хотите использовать в автономном режиме. Вы можете проверить состояние пакетов, чтобы определить, существуют ли эти пакеты в локальной системе. В противном случае вы можете асинхронно скачать их в систему.

Затем вы можете получить доступ к этим данным в системных элементах управления, таких какMapControl , а также из других объектов в пространстве имен Windows.Services.Maps.

Важный

Для использования этого класса требуется возможность Offline Maps Management (см. объявления возможностей приложений).

Свойства

DisplayName

Возвращает отображаемое имя географического расположения для пакета автономной карты.

EnclosingRegionName

Возвращает окружающий или содержащий регион автономного пакета карты (например, США).

EstimatedSizeInBytes

Возвращает предполагаемый размер в байтах пакета автономной карты.

Status

Получает состояние пакета карты (например, загружается ли пакет в локальную систему или нет).

Методы

FindPackagesAsync(Geopoint)

Запускает асинхронную операцию для поиска пакета карты, содержащего данные карты для указанного географического расположения.

FindPackagesInBoundingBoxAsync(GeoboundingBox)

Запускает асинхронную операцию для поиска пакета карты, содержащего данные карты для указанной четырехсторонним географической области.

FindPackagesInGeocircleAsync(Geocircle)

Запускает асинхронную операцию для поиска пакета карты, содержащего данные карты для указанной географической области.

RequestStartDownloadAsync()

Запускает асинхронную операцию, чтобы запросить скачивание пакета карты в локальную систему.

События

StatusChanged

Происходит при изменении состояния OfflineMapPackageQueryResult.

Применяется к