CoreBluetooth Espace de noms
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
L’espace de noms CoreBluetooth fournit des classes pour la communication Bluetooth.
Classes
AdvertisementData |
L’espace de noms CoreBluetooth fournit des classes pour la communication Bluetooth. |
CBAdvertisement |
Clés utilisées pour rechercher des valeurs de dictionnaire à partir du NSDictionary reçu en tant que paramètre dans DiscoveredPeripheral(CBCentralManager, CBPeripheral, NSDictionary, NSNumber). |
CBATTErrorExtensions |
Méthodes d’extension pour l’énumération CoreBluetooth.CBATTError. |
CBATTRequest |
Demande de protocole d’attribut pour la lecture ou l’écriture. |
CBATTRequestEventArgs |
Fournit des données pour l'événement ReadRequestReceived. |
CBATTRequestsEventArgs |
Fournit des données pour l'événement WriteRequestsReceived. |
CBAttribute |
Classe qui identifie de manière unique un appareil Bluetooth. |
CBCentral |
Permet d’identifier les centrales (qui ne sont pas l’appareil actuel). |
CBCentralInitOptions |
Contient les options d’initialisation d’un gestionnaire central Bluetooth. |
CBCentralManager |
Représente l’appareil central local dans Bluetooth LE. Utilisez CBCentralManager pour analyser, découvrir et vous connecter à des périphériques distants. |
CBCentralManagerDelegate |
Déléguer des objets pour des CBCentralManager objets. |
CBCentralManagerDelegate_Extensions |
Méthodes d’extension à l’interface ICBCentralManagerDelegate pour prendre en charge toutes les méthodes du CBCentralManagerDelegate protocole. |
CBCharacteristic |
Caractéristiques d’un périphérique distant. |
CBCharacteristicEventArgs |
Fournit des données pour , WroteCharacteristicValueE:CoreBluetooth.CBCharacteristicEventArgs.UpdatedCharacterteristicValue, E:CoreBluetooth.CBCharacteristicEventArgs.UpdatedNotificationState et E: Événements CoreBluetooth.CBCharacteristicEventArgs.WroteCharacteristicValue. |
CBDescriptor |
Description immuable de la caractéristique d’un périphérique. Voir aussi CBMutableDescriptor. |
CBDescriptorEventArgs |
Fournit des données pour les WroteDescriptorValue événements E:CoreBluetooth.CBDescriptorEventArgs.WroteDescriptorValue . |
CBDiscoveredPeripheralEventArgs |
Fournit des données pour l'événement DiscoveredPeripheral. |
CBErrorExtensions |
Méthodes d’extension pour l’énumération CoreBluetooth.CBError. |
CBL2CapChannel |
L’espace de noms CoreBluetooth fournit des classes pour la communication Bluetooth. |
CBManager |
L’espace de noms CoreBluetooth fournit des classes pour la communication Bluetooth. |
CBMutableCharacteristic |
Mutable CBCharacteristic. |
CBMutableDescriptor |
T T:Corebluetooth.CBDescriptor mutable. |
CBMutableService |
Mutable CBService. |
CBPeer |
Classe qui représente un appareil Bluetooth central ou perhiphérique. |
CBPeripheral |
Représente un périphérique CoreBluetooth. |
CBPeripheralDelegate |
Objet délégué pour CBPeripheral. Fournit des méthodes appelées sur les événements liés à la découverte, à l’exploration et à l’interaction avec un périphérique distant. |
CBPeripheralDelegate_Extensions |
Méthodes d’extension à l’interface ICBPeripheralDelegate pour prendre en charge toutes les méthodes du CBPeripheralDelegate protocole. |
CBPeripheralErrorEventArgs |
Fournit des données pour les FailedToConnectPeripheral événements E:CoreBluetooth.CBPeripheralErrorEventArgs.FailedToConnectPeripheral . |
CBPeripheralEventArgs |
Fournit des données pour l'événement ConnectedPeripheral. |
CBPeripheralManager |
Gère les services publiés selon la base de données GATT de l’appareil T:Coreblutooth.CBPeripheral . |
CBPeripheralManagerDelegate |
Objet délégué pour CBPeripheralManager. Ajoute des méthodes pour les événements liés à la disponibilité, à la publication, à la publicité et à l’abonnement. |
CBPeripheralManagerDelegate_Extensions |
Méthodes d’extension à l’interface ICBPeripheralManagerDelegate pour prendre en charge toutes les méthodes du CBPeripheralManagerDelegate protocole. |
CBPeripheralManagerL2CapChannelOperationEventArgs |
Fournit des données pour les DidUnpublishL2CapChannel événements E:CoreBluetooth.CBPeripheralManagerL2CapChannelOperationEventArgs.DidUnpublishL2CapChannel . |
CBPeripheralManagerOpenL2CapChannelEventArgs |
Fournit des données pour l'événement DidOpenL2CapChannel. |
CBPeripheralManagerServiceEventArgs |
Fournit des données pour l'événement ServiceAdded. |
CBPeripheralManagerSubscriptionEventArgs |
Fournit des données pour les CharacteristicUnsubscribed événements E:CoreBluetooth.CBPeripheralManagerSubscriptionEventArgs.CharacteristicUnsubscribed . |
CBPeripheralOpenL2CapChannelEventArgs |
Fournit des données pour l'événement DidOpenL2CapChannel. |
CBPeripheralServicesEventArgs |
Fournit des données pour l'événement ModifiedServices. |
CBPeripheralsEventArgs |
Fournit des données pour les RetrievedPeripherals événements E:CoreBluetooth.CBPeripheralsEventArgs.RetrievedPeripherals . |
CBRssiEventArgs |
Fournit des données pour l'événement RssiRead. |
CBService |
Représente les services d’un périphérique distant. |
CBServiceEventArgs |
Fournit des données pour les DiscoveredIncludedService événements E:CoreBluetooth.CBServiceEventArgs.DiscoveredIncludedService . |
CBUUID |
Identificateurs uniques universels pour la pile Bluetooth. |
CBWillRestoreEventArgs |
Fournit des données pour les WillRestoreState événements E:CoreBluetooth.CBWillRestoreEventArgs.WillRestoreState . |
PeripheralConnectionOptions |
Options de connexion de périphérique. |
PeripheralScanningOptions |
Valeurs possibles pour le paramètre options dans les appels à ScanForPeripherals(CBUUID[], NSDictionary). |
RestoredState |
L’espace de noms CoreBluetooth fournit des classes pour la communication Bluetooth. |
StartAdvertisingOptions |
Gère l’accès aux options utilisées par la méthode M:CoreBluetooth.StartAdvertising* . |
Interfaces
ICBCentralManagerDelegate |
Interface représentant les méthodes requises (le cas échéant) du protocole CBCentralManagerDelegate. |
ICBPeripheralDelegate |
Interface représentant les méthodes requises (le cas échéant) du protocole CBPeripheralDelegate. |
ICBPeripheralManagerDelegate |
Interface représentant les méthodes requises (le cas échéant) du protocole CBPeripheralManagerDelegate. |
Énumérations
CBATTError |
Erreurs retournées par un serveur GATT. |
CBAttributePermissions |
Énumère les autorisations de lecture, d’écriture et de chiffrement pour les valeurs d’une caractéristique. |
CBCentralManagerState |
Énumère les états possibles d’un CBCentralManager. |
CBCharacteristicProperties |
Propriétés possibles d’une caractéristique. Une caractéristique peut avoir plusieurs propriétés. |
CBCharacteristicWriteType |
Énumère les types d’écritures possibles à la valeur d’une caractéristique. |
CBError |
Erreurs possibles lors des transactions Bluetooth LE. |
CBManagerState |
L’espace de noms CoreBluetooth fournit des classes pour la communication Bluetooth. |
CBPeripheralManagerAuthorizationStatus |
Énumère les états possibles de .CBPeripheralManager |
CBPeripheralManagerConnectionLatency |
Latence de connexion du CBPeripheralManager. |
CBPeripheralManagerState |
Énumère les états possibles de .CBPeripheralManager |
CBPeripheralState |
Énumère les états de connexion possibles d’un CBPeripheral. |
Remarques
L’espace de noms CoreBluetooth permet aux développeurs de travailler avec des appareils Bluetooth Low Energy (Bluetooth LE).
Le modèle Bluetooth LE tourne autour CBPeer d’objets. Il existe deux types d’objets CBPeer: CBCentral les objets qui analysent et consomment des données fournies par CBPeripheral des objets qui correspondent à des appareils Bluetooth LE fournissant des données.
En règle générale, l’appareil iOS joue le CBCentral rôle, mais il est également possible de créer des applications dans lesquelles l’appareil est un CBPeripheral.
L’exemple suivant montre le comportement d’initialisation classique d’une application qui consomme des données à partir d’appareils Bluetooth LE externes. Les applications qui ont un CBCentral doivent avoir un objet délégué associé CBCentralManagerDelegate et remplacer sa UpdatedState méthode. Le remplacement doit case activée l’état du et confirmer qu’il s’agit PoweredOnde CBCentralManager .
En règle générale, les applications souhaitent rechercher les périphériques Bluetooth LE. Il s’agit d’une fonction à haute énergie. Les développeurs doivent donc appeler M:CoreBluetooth.CBManager.StopScan* après avoir trouvé le CBPeripheral qui les intéresse ou après un certain laps de temps.
public class MySimpleCBCentralManagerDelegate : CBCentralManagerDelegate
{
override public void UpdatedState (CBCentralManager mgr)
{
if (mgr.State == CBCentralManagerState.PoweredOn) {
//Passing in null scans for all peripherals. Peripherals can be targeted by using CBUIIDs
CBUUID[] cbuuids = null;
mgr.ScanForPeripherals (cbuuids); //Initiates async calls of DiscoveredPeripheral
//Timeout after 30 seconds
var timer = new Timer (30 * 1000);
timer.Elapsed += (sender, e) => mgr.StopScan();
} else {
//Invalid state -- Bluetooth powered down, unavailable, etc.
System.Console.WriteLine ("Bluetooth is not available");
}
}
public override void DiscoveredPeripheral (CBCentralManager central, CBPeripheral peripheral, NSDictionary advertisementData, NSNumber RSSI)
{
Console.WriteLine ("Discovered {0}, data {1}, RSSI {2}", peripheral.Name, advertisementData, RSSI);
}
}
public partial class HelloBluetoothCSharpViewController : UIViewController
{
MySimpleCBCentralManagerDelegate myDel;
public override void ViewDidLoad ()
{
base.ViewDidLoad ();
//Important to retain reference, else will be GC'ed
myDel = new MySimpleCBCentralManagerDelegate ();
var myMgr = new CBCentralManager (myDel, DispatchQueue.CurrentQueue);
}
//...etc...
}
La DiscoveredPeripheral méthode peut être appelée plusieurs fois pour un seul appareil physique. Une fois que les développeurs d’applications disposent d’une référence au CBPeripheral qui les intéresse, ils doivent conserver cette référence pour un travail supplémentaire et appeler StopScan.
Avec une référence à un découvert CBPeripheral, les développeurs peuvent ensuite s’y connecter, comme illustré dans l’exemple suivant.
un CBPeripheral a zéro ou plusieurs CBServices, chacun d’eux ayant zéro ou plus CBCharacteristicde s. Si la caractéristique représente une mesure (par exemple, une pulsation, une heure, une température, etc.), la valeur se trouve dans la Value propriété .
public class SimplePeripheralDelegate : CBPeripheralDelegate
{
public override void DiscoveredService (CBPeripheral peripheral, NSError error)
{
System.Console.WriteLine ("Discovered a service");
foreach (var service in peripheral.Services) {
Console.WriteLine (service.ToString ());
peripheral.DiscoverCharacteristics (service);
}
}
public override void DiscoveredCharacteristic (CBPeripheral peripheral, CBService service, NSError error)
{
System.Console.WriteLine ("Discovered characteristics of " + peripheral);
foreach (var c in service.Characteristics) {
Console.WriteLine (c.ToString ());
peripheral.ReadValue (c);
}
}
public override void UpdatedValue (CBPeripheral peripheral, CBDescriptor descriptor, NSError error)
{
Console.WriteLine ("Value of characteristic " + descriptor.Characteristic + " is " + descriptor.Value);
}
public override void UpdatedCharacterteristicValue (CBPeripheral peripheral, CBCharacteristic characteristic, NSError error)
{
Console.WriteLine ("Value of characteristic " + characteristic.ToString () + " is " + characteristic.Value);
}
}
//...
mgr = new CBCentralManager (myCentralDelegate, DispatchQueue.CurrentQueue);
mgr.ConnectedPeripheral += (s, e) => {
activePeripheral = e.Peripheral;
System.Console.WriteLine ("Connected to " + activePeripheral.Name);
if (activePeripheral.Delegate == null) {
activePeripheral.Delegate = new SimplePeripheralDelegate ();
//Begins asynchronous discovery of services
activePeripheral.DiscoverServices ();
}
};
//Connect to peripheral, triggering call to ConnectedPeripheral event handled above
mgr.ConnectPeripheral (myPeripheral);