次の方法で共有


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 Maps for Enterprise サービス提供終了

Windows.Services.Maps 名前空間からの UWP MapControl およびマップ サービスは、Bing Maps に依存します。 Bing Maps for Enterprise は非推奨となり、廃止されます。その時点で、MapControl とサービスはデータを受信しなくなります。

詳細については、Bing Maps デベロッパー センターのBing Maps のドキュメントを参照してください。

このクラスを使用して、オフラインで使用するマップ パッケージを非同期的に検索します。 パッケージの状態を確認して、それらのパッケージがローカル システムに存在するかどうかを判断できます。 そうでない場合は、非同期的にシステムにダウンロードできます。

その後、MapControlなどのシステム コントロール内のデータや、Windows.Services.Maps 名前空間内の他のオブジェクトからそのデータにアクセスできます。

大事な

このクラスを使用するには、Offline Maps Management 機能が必要です (App 機能宣言を参照)。

プロパティ

DisplayName

オフライン マップ パッケージの地理的な場所の表示名を取得します。

EnclosingRegionName

オフライン マップ パッケージの周囲または含まれているリージョンを取得します (例: USA)。

EstimatedSizeInBytes

オフライン マップ パッケージの推定サイズ (バイト単位) を取得します。

Status

マップ パッケージの状態を取得します (たとえば、パッケージがローカル システムにダウンロードされるかどうかなど)。

メソッド

FindPackagesAsync(Geopoint)

指定した地理的位置のマップ データを含むマップ パッケージを検索する非同期操作を開始します。

FindPackagesInBoundingBoxAsync(GeoboundingBox)

指定した 4 辺の地理的領域のマップ データを含むマップ パッケージを検索する非同期操作を開始します。

FindPackagesInGeocircleAsync(Geocircle)

指定した地理的領域のマップ データを含むマップ パッケージを検索する非同期操作を開始します。

RequestStartDownloadAsync()

ローカル システムへのマップ パッケージのダウンロードを要求する非同期操作を開始します。

イベント

StatusChanged

OfflineMapPackageQueryResult の状態が変更されたときに発生します。

適用対象