BluetoothLEAdvertisementWatcherTrigger Kelas

Definisi

Mewakili pemicu yang terdaftar untuk memindai iklan Bluetooth LE di latar belakang.

public ref class BluetoothLEAdvertisementWatcherTrigger 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 BluetoothLEAdvertisementWatcherTrigger 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 BluetoothLEAdvertisementWatcherTrigger 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 BluetoothLEAdvertisementWatcherTrigger
[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 BluetoothLEAdvertisementWatcherTrigger
function BluetoothLEAdvertisementWatcherTrigger()
Public NotInheritable Class BluetoothLEAdvertisementWatcherTrigger
Warisan
Object Platform::Object IInspectable BluetoothLEAdvertisementWatcherTrigger
Atribut
Penerapan

Persyaratan Windows

Rangkaian perangkat
Windows 10 (diperkenalkan dalam 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (diperkenalkan dalam v1.0)

Keterangan

Tugas latar belakang diluncurkan saat iklan diterima.

Pemicu ini berfungsi mirip dengan kelas BluetoothAdvertisementWatcher , dengan pengecualian bahwa pemicu ini memiliki lebih banyak batasan karena memungkinkan aplikasi untuk menerima iklan di latar belakang. Terutama, persis satu pola filter diterima di latar belakang (tidak lebih, tidak kurang).

Setelah terdaftar, pengamat latar belakang dilayankan dengan cara upaya terbaik. Tugas latar belakang akan diluncurkan untuk memberi tahu aplikasi saat iklan yang cocok dengan filter yang dikonfigurasi melalui pemicu diterima. Aplikasi ini juga diberi tahu tentang kegagalan atau gangguan pengamat latar belakang melalui detail pemicu yang disediakan dalam konteks tugas latar belakang. Untuk berhenti menerima iklan, tugas latar belakang yang terkait dengan pemicu ini harus tidak terdaftar.

Jenis iklan berikut tidak diizinkan untuk difilter di latar belakang karena sifat generiknya

  • Bendera (0x01)
  • Kelas Perangkat (0x0D)
  • Bendera Out-of-Band Manajer Keamanan (0x11)
  • Tampilan (0x19)
  • Peran LE (0x1C)

Filter latar belakang untuk bagian mentah dari jenis data spesifik produsen (0xFF) yang hanya cocok untuk byte kedua dari bagian dengan 0x00 akan ditolak, karena sesuai dengan byte yang paling signifikan dari bidang pengidentifikasi perusahaan. Semua pengidentifikasi perusahaan yang ditetapkan SIG saat ini mengatur byte ini ke 0x00 dan melakukan kecocokan parsial hanya dengan satu byte berpotensi menghasilkan kelebihan iklan yang diterima ketika berada di hadapan beberapa pengiklan. Hal ini dapat berdampak signifikan pada masa pakai baterai sistem.

Penggunaan BluetoothLEAdvertisementWatcherTrigger dibatasi oleh sumber daya offload perangkat keras yang tersedia. Perangkat Windows baru dengan dukungan Ekstensi HCI di radio Bluetooth lokal menyediakan pemindaian iklan berdaya lebih rendah, meningkatkan masa pakai baterai untuk skenario jangka panjang seperti suar. Jumlah sumber daya perangkat keras yang tersedia tergantung pada radio dan penggunaan di seluruh sistem saat ini, dan upaya untuk mendaftar pemicu ini akan mengembalikan BluetoothError.ResourceInUse ketika tidak ada lagi sumber daya yang tersedia. Aplikasi harus menggunakan sumber daya ini dengan hemat untuk menyediakan skenario hemat daya yang terfokus dalam menonton data iklan unik hanya untuk pengiklan jarak jauh tertentu yang diperlukan.

Meskipun banyak perangkat Windows baru memiliki dukungan Ekstensi HCI, beberapa mungkin tidak, terutama dalam kasus peningkatan pada perangkat yang lebih lama dari versi Windows yang lebih lama. Dalam kasus ini, Windows akan meniru pemfilteran perangkat keras dalam perangkat lunak, menyediakan maksimum 20 kondisi pemicu per perangkat, di semua aplikasi pada sistem. Saat menggunakan emulasi perangkat lunak ini, upaya untuk mendaftar sumber daya pemicu setelah maksimum tercapai akan menyebabkan pengecualian dilemparkan, dengan kesalahan ERROR_NO_SYSTEM_RESOURCES (0x800705AA).

Riwayat versi

Versi Windows Versi SDK Nilai ditambahkan
2004 19041 AllowExtendedAdvertisements

Konstruktor

BluetoothLEAdvertisementWatcherTrigger()

Membuat instans baru kelas BluetoothLEAdvertisementWatcherTrigger .

Properti

AdvertisementFilter

Mendapatkan atau mengatur konfigurasi pemfilteran iklan Bluetooth LE yang menggunakan pemfilteran berbasis bagian payload.

AllowExtendedAdvertisements

Memungkinkan penerimaan iklan menggunakan format Extended Advertising. Default ke False.

MaxOutOfRangeTimeout

Mendapatkan batas waktu maksimum di luar rentang yang didukung untuk properti SignalStrengthFilter dari pemicu ini.

MaxSamplingInterval

Mendapatkan interval pengambilan sampel maksimum yang didukung untuk properti SignalStrengthFilter dari pemicu ini. Interval pengambilan sampel maksimum digunakan untuk menonaktifkan filter pengambilan sampel dan hanya memicu peristiwa yang diterima berdasarkan perangkat yang masuk dan di luar jangkauan.

MinOutOfRangeTimeout

Mendapatkan batas waktu minimum di luar rentang yang didukung untuk properti SignalStrengthFilter dari pemicu ini.

MinSamplingInterval

Mendapatkan interval pengambilan sampel minimum yang didukung untuk properti SignalStrengthFilter dari pemicu ini. Interval pengambilan sampel minimum untuk pengamat latar belakang tidak boleh nol tidak seperti rekan latar depannya.

SignalStrengthFilter

Mendapatkan atau mengatur konfigurasi pemfilteran iklan Bluetooth LE yang menggunakan pemfilteran berbasis kekuatan sinyal.

Berlaku untuk

Lihat juga