Klasse ASACloudSpatialAnchorSession
Deklaration
@interface ASACloudSpatialAnchorSession : NSObject;
BESCHREIBUNG
Verwenden Sie diese Klasse, um Raumanker zu erstellen, zu suchen und zu verwalten.
Methoden
init
Initialisiert eine neue Instanz mit einer Standardkonfiguration.
-(instancetype)init;
entsorgen
Beendet diese Sitzung und gibt alle zugehörigen Ressourcen frei.
-(void)dispose;
getAccessTokenWithAuthenticationToken
Ruft das Azure Spatial Anchors-Zugriffstoken aus dem Authentifizierungstoken ab.
-(void)getAccessTokenWithAuthenticationToken:(NSString *)authenticationToken withCompletionHandler:(void (^)(NSString * value, NSError *error))completionHandler;
Parameter
-
authenticationToken
– Authentifizierungstoken. -
completionHandler
– Die Zugriffstokenzeichenfolge.
Gibt zurück
void
getAccessTokenWithAccountKey
Ruft das Azure Spatial Anchors-Zugriffstoken aus dem Kontoschlüssel ab.
-(void)getAccessTokenWithAccountKey:(NSString *)accountKey withCompletionHandler:(void (^)(NSString * value, NSError *error))completionHandler;
Parameter
-
accountKey
- Kontoschlüssel. -
completionHandler
– Die Zugriffstokenzeichenfolge.
Gibt zurück
void
createAnchor
Erstellt einen neuen dauerhaften räumlichen Anker aus den angegebenen lokalen Anker- und Zeichenfolgeneigenschaften.
Der an diese Methode übergebene lokale Anker muss eine gültige Transformation aufweisen. Beachten Sie, dass einige von Azure Spatial Anchors unterstützte Plattformen wie iOS Transformationen mit der Skalierungskomponente != 1.0 zulassen. Das Azure Spatial Anchors SDK unterstützt solche Transformationen nicht und kann den Raumanker nicht mit dem Fehlercode InvalidAnchorTransformRigidity erstellen. Jede Skalierungsbehandlung für Anker muss auf App-Ebene erfolgen.
-(void)createAnchor:(ASACloudSpatialAnchor *)anchor withCompletionHandler:(void (^)(NSError *error))completionHandler;
Parameter
-
anchor
- Anker, der beibehalten werden soll. -
completionHandler
– Eine Aufgabe, die den asynchronen Erstellungsvorgang darstellt.
Gibt zurück
void
createWatcher
Erstellt ein neues Objekt, das auf Anker überwacht, die die angegebenen Kriterien erfüllen.
-(ASACloudSpatialAnchorWatcher *)createWatcher:(ASAAnchorLocateCriteria *)criteria;
Parameter
-
criteria
- Kriterien für Anker, auf die sie achten sollen.
Gibt zurück
-
ASACloudSpatialAnchorWatcher *
- Ein neues Watcherobjekt, das kontinuierlich nach Ankern sucht, bis die Kriterien vollständig erfüllt oder der Watcher beendet wird. Es kann nur ein aktiver Watcher gleichzeitig sein.
getAnchorProperties
Ruft einen raumbasierten Cloudanker für den angegebenen Bezeichner ab, auch wenn er noch nicht gefunden wurde.
-(void)getAnchorProperties:(NSString *)identifier withCompletionHandler:(void (^)(ASACloudSpatialAnchor * value, NSError *error))completionHandler;
Parameter
-
identifier
– Der zu suchende Bezeichner. -
completionHandler
– Eine Aufgabe, die den asynchronen Abrufvorgang darstellt. Der abgerufene Anker verfügt über Eigenschaftswerte, aber möglicherweise keinen lokalen Anker.
Gibt zurück
void
getNearbyAnchorIds
Ruft eine Liste aller räumlichen Anker-IDs in der Nähe der Cloud ab, die einem bestimmten Kriterium entsprechen.
-(void)getNearbyAnchorIds:(ASANearDeviceCriteria *)criteria withCompletionHandler:(void (^)(NSArray * value, NSError *error))completionHandler;
Parameter
-
criteria
- Die Suchkriterien. -
completionHandler
– Eine Aufgabe, die den asynchronen Abrufvorgang darstellt.
Gibt zurück
void
getActiveWatchers
Ruft eine Liste der aktiven Watcher ab.
-(NSArray<ASACloudSpatialAnchorWatcher *> *)getActiveWatchers;
Gibt zurück
-
NSArray<ASACloudSpatialAnchorWatcher *> *
- Eine Liste der aktiven Watcher.
refreshAnchorProperties
Aktualisiert die Eigenschaften für den angegebenen Raumanker.
-(void)refreshAnchorProperties:(ASACloudSpatialAnchor *)anchor withCompletionHandler:(void (^)(NSError *error))completionHandler;
Parameter
-
anchor
– Der Zu aktualisierende Anker. -
completionHandler
– Eine Aufgabe, die den asynchronen Aktualisierungsvorgang darstellt.
Gibt zurück
void
updateAnchorProperties
Aktualisierungen den angegebenen raumanker.
-(void)updateAnchorProperties:(ASACloudSpatialAnchor *)anchor withCompletionHandler:(void (^)(NSError *error))completionHandler;
Parameter
-
anchor
– Der zu aktualisierende Anker. -
completionHandler
– Eine Aufgabe, die den asynchronen Aktualisierungsvorgang darstellt.
Gibt zurück
void
deleteAnchor
Löscht einen persistenten raumanker.
-(void)deleteAnchor:(ASACloudSpatialAnchor *)anchor withCompletionHandler:(void (^)(NSError *error))completionHandler;
Parameter
-
anchor
- Der zu löschende Anker. -
completionHandler
– Eine Aufgabe, die den asynchronen Löschvorgang darstellt.
Gibt zurück
void
processFrame
Anwendungen müssen diese Methode auf Plattformen aufrufen, auf denen die Verarbeitung pro Frame erforderlich ist.
Diese Methode ist auf der HoloLens-Plattform nicht verfügbar.
-(void)processFrame:(ARFrame *)frame;
Parameter
-
frame
– zu verarbeitende AR-Frame.
getSessionStatus
Ruft ein Objekt ab, das den Status der Sitzung beschreibt.
-(void)getSessionStatusWithCompletionHandler:(void (^)(ASASessionStatus * value, NSError *error))completionHandler;
Parameter
-
completionHandler
– Eine Aufgabe, die den Sitzungsstatusabruf darstellt.
Gibt zurück
void
start
Beginnt mit der Erfassung von Umgebungsdaten für die Sitzung.
-(void)start;
stop
Beendet die Erfassung von Umgebungsdaten für die Sitzung und bricht alle ausstehenden Suchvorgänge ab. Umgebungsdaten werden verwaltet.
-(void)stop;
reset
Setzt Umgebungsdaten zurück, die in dieser Sitzung erfasst wurden; Anwendungen müssen diese Methode aufrufen, wenn die Nachverfolgung verloren geht.
Auf jeder Plattform bereinigt das Aufrufen der -Methode den gesamten internen zwischengespeicherten Zustand.
-(void)reset;
Eigenschaften
delegate
Ein Objekt, das Sie bereitstellen, um Ereignisse von dieser ASACloudSpatialAnchorSession-Instanz zu empfangen.
@property(nonatomic, assign) id<ASACloudSpatialAnchorSessionDelegate> delegate;
Konfiguration
Die Konfigurationsinformationen für die Sitzung.
Konfigurationseinstellungen werden wirksam, wenn die Sitzung gestartet wird.
@property (retain, readonly) ASASessionConfiguration * configuration;
Diagnose
Die Diagnoseeinstellungen für die Sitzung, die verwendet werden können, um Daten für die Problembehandlung und Verbesserungen zu sammeln und zu übermitteln.
@property (retain, readonly) ASACloudSpatialAnchorSessionDiagnostics * diagnostics;
logLevel
Protokolliergrad für die Sitzungsprotokollereignisse.
@property ASASessionLogLevel logLevel;
session
Die Nachverfolgungssitzung, die verwendet wird, um Anker zu finden.
Diese Eigenschaft ist auf der HoloLens-Plattform nicht verfügbar.
@property (retain) ARSession * session;
telemetryEnabled
Diese API kann verwendet werden, um Azure Spatial Anchors SDK-Telemetriedaten zu aktivieren oder zu deaktivieren. Die ASA SDK-Telemetrie ist standardmäßig aktiviert. Wenn diese Option deaktiviert ist, protokolliert das ASA SDK keine Telemetrieereignisse für diese Sitzung. Anwendungen, die ASA SDK-Telemetrie vollständig deaktivieren müssen, können diese API vor dem Aufrufen von CloudSpatialAnchorSession::Start verwenden, was dazu führen würde, dass für diese CloudSpatialAnchorSession-Instanz kein Telemetrieereignis gesendet wird.
@property BOOL telemetryEnabled;
locationProvider
Standortanbieter, der zum Erstellen und Suchen von Ankern mithilfe der ungefähren Standortbestimmung verwendet wird.
@property (retain) ASAPlatformLocationProvider * locationProvider;
sessionID
Der eindeutige Bezeichner für die Sitzung.
@property (retain, readonly) NSString * sessionId;