Geolocator Kelas

Definisi

Menyediakan akses ke lokasi geografis saat ini.

public ref class Geolocator sealed
/// [Windows.Foundation.Metadata.Activatable(65536, Windows.Foundation.UniversalApiContract)]
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class Geolocator final
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
/// [Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
class Geolocator final
[Windows.Foundation.Metadata.Activatable(65536, typeof(Windows.Foundation.UniversalApiContract))]
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class Geolocator
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
[Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
public sealed class Geolocator
function Geolocator()
Public NotInheritable Class Geolocator
Warisan
Object Platform::Object IInspectable Geolocator
Atribut

Persyaratan Windows

Rangkaian perangkat
Windows 10 (diperkenalkan dalam 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (diperkenalkan dalam v1.0)
Kemampuan aplikasi
location ID_CAP_LOCATION [Windows Phone]

Contoh

Contoh ini menunjukkan cara menggunakan kelas Geolocator untuk mengambil lokasi perangkat. Untuk informasi selengkapnya, lihat Mendapatkan lokasi saat ini.

using Windows.Devices.Geolocation;
...
var accessStatus = await Geolocator.RequestAccessAsync();
switch (accessStatus)
{
    case GeolocationAccessStatus.Allowed:
        // notify user: Waiting for update

        // If DesiredAccuracy or DesiredAccuracyInMeters are not set (or value is 0), DesiredAccuracy.Default is used.
        Geolocator geolocator = new Geolocator { DesiredAccuracyInMeters = _desireAccuracyInMetersValue };

        // Subscribe to StatusChanged event to get updates of location status changes
        _geolocator.StatusChanged += OnStatusChanged;

        // Carry out the operation
        Geoposition pos = await geolocator.GetGeopositionAsync();

        UpdateLocationData(pos);
        // notify user: Location updated
        break;

    case GeolocationAccessStatus.Denied:
        // notify user: Access to location is denied

        break;

    case GeolocationAccessStatus.Unspecified:
        // notify user: Unspecified error
        break;
}

Keterangan

Riwayat versi

Versi Windows Versi SDK Nilai ditambahkan
1607 14393 AllowFallbackToConsentlessPositions
1607 14393 DefaultGeoposition
1607 14393 IsDefaultGeopositionRecommended

Konstruktor

Geolocator()

Menginisialisasi objek Geolokator baru.

Properti

DefaultGeoposition

Mendapatkan lokasi yang dimasukkan secara manual ke dalam sistem oleh pengguna, untuk digunakan jika tidak ada opsi yang lebih baik.

DesiredAccuracy

Tingkat akurasi di mana Geolocator menyediakan pembaruan lokasi.

DesiredAccuracyInMeters

Mendapatkan atau mengatur akurasi yang diinginkan dalam meter untuk data yang dikembalikan dari layanan lokasi.

IsDefaultGeopositionRecommended

Menunjukkan apakah pengguna harus diminta untuk mengatur lokasi default secara manual.

LocationStatus

Status yang menunjukkan kemampuan Geolokator untuk memberikan pembaruan lokasi.

MovementThreshold

Jarak gerakan, dalam meter, relatif terhadap koordinat dari peristiwa PositionChanged terakhir, yang diperlukan geolokator untuk menaikkan peristiwa PositionChanged .

ReportInterval

Interval waktu minimum yang diminta antara pembaruan lokasi, dalam milidetik. Jika aplikasi Anda jarang memerlukan pembaruan, atur nilai ini sehingga layanan lokasi dapat menghemat daya dengan menghitung lokasi hanya saat diperlukan.

Metode

AllowFallbackToConsentlessPositions()

Mengatur Geolokator untuk menggunakan lokasi kasar sebagai opsi fallback (lihat Keterangan).

GetGeopositionAsync()

Memulai operasi asinkron untuk mengambil lokasi perangkat saat ini.

GetGeopositionAsync(TimeSpan, TimeSpan)

Memulai operasi asinkron untuk mengambil lokasi perangkat saat ini.

GetGeopositionHistoryAsync(DateTime)

Memulai operasi asinkron untuk mengambil riwayat lokasi perangkat.

Catatan

API ini tidak tersedia untuk semua aplikasi Windows. Kecuali akun pengembang Anda disediakan secara khusus oleh Microsoft, panggilan ke API ini akan gagal saat runtime.

GetGeopositionHistoryAsync(DateTime, TimeSpan)

Memulai operasi asinkron untuk mengambil riwayat lokasi perangkat.

Catatan

API ini tidak tersedia untuk semua aplikasi Windows. Kecuali akun pengembang Anda disediakan secara khusus oleh Microsoft, panggilan ke API ini akan gagal saat runtime.

RequestAccessAsync()

Catatan

Beberapa informasi berkaitan dengan produk yang telah dirilis sebelumnya, yang mungkin dimodifikasi secara substansial sebelum dirilis secara komersial. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.

Penting

API ini akan dipengaruhi oleh perubahan perilaku sistem operasi yang akan datang, yang direncanakan pada musim gugur 2024. Untuk informasi selengkapnya, lihat Perubahan perilaku API untuk akses dan lokasi Wi-Fi.

Meminta izin untuk mengakses data lokasi.

Acara

PositionChanged

Dimunculkan ketika lokasi diperbarui.

StatusChanged

Muncul ketika kemampuan Geolocator untuk memberikan perubahan lokasi yang diperbarui.

Berlaku untuk

Lihat juga