OfflineMapPackage クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
特定の地理的リージョンのマップ データを表します。 データはオフラインでダウンロードして使用できます。
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
- 継承
- 属性
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 の状態が変更されたときに発生します。 |