flash.sensorsAccelerometer Die Accelerometer-Klasse setzt Ereignisse ab, die auf einer vom Bewegungssensor des Geräts erkannten Aktivität basieren.Accelerometer-Klasse flash.events:EventDispatcher Die Accelerometer-Klasse setzt Ereignisse ab, die auf einer vom Bewegungssensor des Geräts erkannten Aktivität basieren. Diese Daten repräsentieren die Position des Geräts oder die Bewegung entlang einer dreidimensionalen Achse. Wenn das Gerät bewegt wird, erkennt der Sensor diese Bewegung und gibt Beschleunigungsdaten zurück. Die Accelerometer-Klasse bietet Methoden zum Abfragen, ob ein Beschleunigungssensor unterstützt wird oder nicht, und zum Festlegen der Rate, mit der Beschleunigungsereignisse abgesetzt werden.

Hinweis: Verwenden Sie die Accelerometer.isSupported-Eigenschaft, um zu testen, ob die Laufzeitumgebung die Verwendung dieses Features unterstützt. Während die Accelerometer-Klasse und ihre Mitglieder für die Laufzeitumgebungen, die für jeden API-Eintrag aufgeführt sind, zugänglich sind, bestimmt die aktuelle Umgebung für die Laufzeit die Verfügbarkeit dieser Funktion. Sie können zum Beispiel Code mit den Eigenschaften der Accelerometer-Klasse für Flash Player 10.1 kompilieren, Sie müssen jedoch die Accelerometer.isSupported-Eigenschaft verwenden, um die Verfügbarkeit der Accelerometer-Funktion in der aktuellen Entwicklungsumgebung für die Flash Player-Laufzeitumgebung zu testen. Wenn Accelerometer.isSupported zur Laufzeit den Wert true hat, wird Accelerometer zurzeit unterstützt.

AIR-Profilunterstützung: Diese Funktion wird nur auf mobilen Geräten unterstützt. Auf Desktopgeräten oder Geräten mit AIR für TV wird sie nicht unterstützt. Weitere Informationen zum AIR-Support über mehrere Profile finden Sie unter Unterstützung von AIR-Profilen.

Im folgenden Beispiel bewegt die Anwendung ein Sprite basierend auf update-Ereignissen für den Beschleunigungssensor. Die update-Ereignisse des Beschleunigungssensors zeigen die Bewegung des Geräts an. package { import flash.display.Sprite; import flash.display.StageAlign; import flash.display.StageScaleMode; import flash.events.Event; import flash.events.AccelerometerEvent; import flash.sensors.Accelerometer; public class AccelerometerTest extends Sprite { private var ball:Sprite; private var accelerometer:Accelerometer; private var xSpeed:Number = 0; private var ySpeed:Number = 0; private const RADIUS = 20; public final function AccelerometerTest() { stage.scaleMode = StageScaleMode.NO_SCALE; stage.align = StageAlign.TOP_LEFT; createBall(); if (Accelerometer.isSupported) { accelerometer = new Accelerometer(); accelerometer.addEventListener(AccelerometerEvent.UPDATE, accUpdateHandler); stage.addEventListener(Event.ENTER_FRAME, enterFrameHandler); } } private final function createBall():void { ball = new Sprite(); ball.graphics.beginFill(0xFF0000); ball.graphics.drawCircle(0, 0, RADIUS); ball.cacheAsBitmap = true; ball.x = stage.stageWidth / 2; ball.y = stage.stageHeight / 2; addChild(ball); } private final function enterFrameHandler(event:Event):void { event.stopPropagation(); moveBall(); } private final function moveBall():void { var newX:Number = ball.x + xSpeed; var newY:Number = ball.y + ySpeed; if (newX < 20) { ball.x = RADIUS; xSpeed = 0; } else if (newX > stage.stageWidth - RADIUS) { ball.x = stage.stageWidth - RADIUS; xSpeed = 0; } else { ball.x += xSpeed; } if (newY < RADIUS) { ball.y = RADIUS; ySpeed = 0; } else if (newY > stage.stageHeight - RADIUS) { ball.y = stage.stageHeight - RADIUS; ySpeed = 0; } else { ball.y += ySpeed; } } private final function accUpdateHandler(event:AccelerometerEvent):void { xSpeed -= event.accelerationX * 2; ySpeed += event.accelerationY * 2; } } }
isSupportedflash.events.AccelerometerEventMichael Chaize: AIR and the AccelerometerMichael Chaize: Become an AIR Pilotstatus Wird abgesetzt, wenn ein Beschleunigungssensor seinen Status ändert.flash.events.StatusEvent.STATUSflash.events.StatusEvent Wird abgesetzt, wenn ein Beschleunigungssensor seinen Status ändert.

Hinweis: Bei einigen Geräten ist der Beschleunigungssensor immer verfügbar. Bei derartigen Geräten setzt ein Accelerometer-Objekt niemals status-Ereignisse ab.

update Das update-Ereignis wird in Reaktion auf Updates vom Beschleunigungssensor abgesetzt.flash.events.AccelerometerEvent.UPDATEflash.events.AccelerometerEvent Das update-Ereignis wird in Reaktion auf Updates vom Beschleunigungssensor abgesetzt. Das Ereignis wird unter den folgenden Umständen abgesetzt:

  • Wenn eine neue Listener-Funktion mit addEventListener() hinzugefügt wird, wird dieses Ereignis einmalig allen registrierten Listenern für die Bereitstellung des aktuellen Werts des Beschleunigungssensors zugestellt.
  • Wenn Aktualisierungen vom Beschleunigungssensor in vom Gerät bestimmten Intervallen von der Plattform empfangen werden.
  • Wenn die Anwendung eine Änderung des Beschleunigungssensors verpasst (zum Beispiel die Wiederaufnahme der Laufzeitumgebung nach einer Zeit der Inaktivität).

Accelerometer Erstellt eine neue Accelerometer-Instanz. Erstellt eine neue Accelerometer-Instanz. setRequestedUpdateInterval Mit der setRequestedUpdateInterval-Methode wird das gewünschte Zeitintervall für Aktualisierungen festgelegt.Das angegebene interval ist kleiner als null. ArgumentErrorArgumentErrorintervalNumberDas angeforderte Aktualisierungsintervall. Wenn interval auf 0 gesetzt ist, wird das unterstützte Mindestaktualisierungsintervall verwendet. Mit der setRequestedUpdateInterval-Methode wird das gewünschte Zeitintervall für Aktualisierungen festgelegt. Das Zeitintervall wird in Millisekunden gemessen. Das Aktualisierungsintervall wird zur Schonung der Akkuenergie nur als Näherungswert verwendet. Die tatsächliche Zeitspanne zwischen Beschleunigungsaktualisierungen kann größer oder kleiner als dieser Wert sein. Änderungen am Aktualisierungsintervall betreffen alle registrierten Listener. Sie können die Accelerometer-Klasse verwenden, ohne die setRequestedUpdateInterval()-Methode aufzurufen. In diesem Fall empfängt die Anwendung Aktualisierungen entsprechend dem Standardintervall des Geräts. isSupported Die isSupported-Eigenschaft ist auf „true“ gesetzt, wenn der Beschleunigungssensor im Gerät verfügbar ist, andernfalls hat sie den Wert „false“.Boolean Die isSupported-Eigenschaft ist auf true gesetzt, wenn der Beschleunigungssensor im Gerät verfügbar ist, andernfalls hat sie den Wert false. Im folgenden Beispiel wird mit der Accelerometer.isSupported-Eigenschaft getestet, ob Accelerometer zur Laufzeit unterstützt wird. Wenn die aktuelle Umgebung die Accelerometer-Funktion unterstützt, wird dem Accelerometer-Objekt ein Ereignis-Listener hinzugefügt und die dazugehörige Prozedur füllt das Textfeld mit dem Zeitstempel und den Werten des Beschleunigungssensors aus. Andernfalls gibt das Textfeld an, dass die Funktion in der aktuellen Umgebung nicht unterstützt wird. var myTextField:TextField = new TextField(); myTextField.width = 200; addChild(myTextField); var acc1:Accelerometer = new Accelerometer(); var isSupported:Boolean = Accelerometer.isSupported; checksupport(); function checksupport():void { if (isSupported) { myTextField.text = "Accelerometer feature supported"; acc1.addEventListener(AccelerometerEvent.UPDATE, updateHandler); } else { myTextField.text = "Accelerometer feature not supported"; } } function updateHandler(evt:AccelerometerEvent):void { myTextField.text = String("at: " + evt.timestamp + "\n" + "acceleration X: " + evt.accelerationX + "\n" + "acceleration Y: " + evt.accelerationY + "\n" + "acceleration Z: " + evt.accelerationZ); } muted Gibt an, ob der Benutzer den Zugriff auf den Beschleunigungssensor verweigert (true) oder gewährt hat (false).Boolean Gibt an, ob der Benutzer den Zugriff auf den Beschleunigungssensor verweigert (true) oder gewährt hat (false). Wenn sich dieser Wert ändert, wird ein status-Ereignis ausgelöst. status
Geolocation Die Geolocation-Klasse setzt Ereignisse in Reaktion auf den Positionssensor des Geräts ab.flash.events:EventDispatcher Die Geolocation-Klasse setzt Ereignisse in Reaktion auf den Positionssensor des Geräts ab.

Wenn ein Gerät die Geolokalisierung unterstützt, können Sie diese Klasse verwenden, um die aktuelle geografische Position des Geräts abzurufen. Die geografische Position wird auf dem Gerät mit Breitengrad- und Längengrad-Koordinaten angegeben (im WGS-84-Standardformat). Wenn sich die Position des Geräts ändert, können Sie Aktualisierungen zu den Änderungen empfangen. Wenn das Gerät diese Funktion unterstützt, können Sie Informationen zu Höhe, Genauigkeit, Richtung und Geschwindigkeit sowie den Zeitstempel der letzten Positionsänderungen abrufen.

AIR-Profilunterstützung: Diese Funktion wird nur auf mobilen Geräten unterstützt. Auf Desktopgeräten oder Geräten mit AIR für TV wird sie nicht unterstützt. Mit der Geolocation.isSupported-Eigenschaft können Sie testen, ob zur Laufzeit Unterstützung gegeben ist. Weitere Informationen zum AIR-Support über mehrere Profile finden Sie unter Unterstützung von AIR-Profilen.

Im folgenden Beispiel zeigt die Anwendung den Breitengrad, den Längengrad und die horizontale Genauigkeit von update-Geolokalisierungsereignissen an, wenn sie empfangen werden. package { import flash.display.Sprite; import flash.display.StageAlign; import flash.display.StageScaleMode; import flash.events.GeolocationEvent; import flash.sensors.Geolocation; import flash.text.TextField; import flash.text.TextFormat; public class GeolocationTest extends Sprite { private var geo:Geolocation; private var log:TextField; public function GeolocationTest() { stage.scaleMode = StageScaleMode.NO_SCALE; stage.align = StageAlign.TOP_LEFT; setUpTextField(); if (Geolocation.isSupported) { geo = new Geolocation(); geo.setRequestedUpdateInterval(100); geo.addEventListener(GeolocationEvent.UPDATE, geolocationUpdateHandler); } else { log.text = "No geolocation support."; } } private function geolocationUpdateHandler(event:GeolocationEvent):void { log.text = "latitude:" + event.latitude.toString() + "°\n"; log.appendText("longitude:" + event.longitude.toString() + "°\n"); log.appendText("horizontal accuracy:" + event.horizontalAccuracy.toString() + " m"); } private function setUpTextField():void { log = new TextField(); var format:TextFormat = new TextFormat("_sans", 24); log.defaultTextFormat = format; log.border = true; log.wordWrap = true; log.multiline = true; log.x = 10; log.y = 10; log.height = stage.stageHeight - 20; log.width = stage.stageWidth - 20; addChild(log); } } }
Cristophe Coenraets: Multi-user Google Maps Collaborationstatus Das Geolocation-Objekt setzt Statusereignisse ab, wenn der Benutzer den Zugriff auf den Lokalisierungssensor ändert.flash.events.StatusEvent.STATUSflash.events.StatusEvent Das Geolocation-Objekt setzt status-Ereignisse ab, wenn der Benutzer den Zugriff auf den Lokalisierungssensor ändert. Wenn zum Beispiel der Benutzer in Reaktion auf eine Geräteaufforderung verhindert, dass die Anwendung auf Standortdaten zugreift, setzt das Geolocation-Objekt ein status-Ereignis ab. Wenn sich der Status zu einem Zustand ändert, in dem der Standortsensor nicht verfügbar ist, wird die muted-Eigenschaft der Geolocation-Instanz auf true gesetzt. mutedupdate Das update-Ereignis wird in Reaktion auf Updates vom Positionssensor abgesetzt.flash.events.GeolocationEvent.UPDATEflash.events.GeolocationEvent Das update-Ereignis wird in Reaktion auf Updates vom Positionssensor abgesetzt. Das Ereignis wird unter den folgenden Umständen abgesetzt:

  • Wenn eine neue Listener-Funktion mit addEventListener() hinzugefügt wird, wird dieses Ereignis einmalig allen registrierten Listenern zugestellt, um den aktuellen Wert des Beschleunigungssensors bereitzustellen.
  • Wenn Aktualisierungen der Position in vom Gerät bestimmten Intervallen von der Plattform empfangen werden.
  • Wenn die Anwendung eine Änderung der Position verpasst (zum Beispiel, wenn die Anwendung aus dem Standby reaktiviert wird).

Hinweis: iPhones der ersten Generation, die kein GPS-Modul enthalten, setzen nur gelegentlich update-Ereignisse ab. Bei diesen Geräten setzt ein Geolocation-Objekt anfänglich ein oder zwei update-Ereignisse ab. Danach werden update-Ereignisse abgesetzt, wenn sich Informationen deutlich ändern.

Geolocation Erstellt eine neue Geolocation-Instanz. Erstellt eine neue Geolocation-Instanz. setRequestedUpdateInterval Legt das Zeitintervall für Aktualisierungen in Millisekunden fest.Das angegebene interval ist kleiner als null. ArgumentErrorArgumentErrorintervalNumberangefordertes Aktualisierungsintervall. Wenn interval kleiner oder gleich 0 ist, hat ein Aufruf dieser Methode keine Auswirkungen. Legt das Zeitintervall für Aktualisierungen in Millisekunden fest. Das Aktualisierungsintervall wird zur Schonung der Akkuenergie nur als Näherungswert verwendet. Die tatsächliche Zeitspanne zwischen Positionsaktualisierungen kann größer oder kleiner als dieser Wert sein. Änderungen am Aktualisierungsintervall mit dieser Methode betreffen alle registrierten update-Ereignis-Listener. Die Geolocation-Klasse kann ohne Aufruf der setRequestedUpdateInterval-Methode verwendet werden. In diesem Fall gibt die Plattform Aktualisierungen basierend auf ihrem Standardintervall zurück.

Hinweis: iPhones der ersten Generation, die kein GPS-Modul enthalten, setzen nur gelegentlich update-Ereignisse ab. Bei diesen Geräten setzt ein Geolocation-Objekt anfänglich ein oder zwei update-Ereignisse ab. Danach werden update-Ereignisse abgesetzt, wenn sich Informationen deutlich ändern.

isSupported „true“, wenn im Gerät ein Positionssensor verfügbar ist, andernfalls „false“.Boolean true, wenn im Gerät ein Positionssensor verfügbar ist, andernfalls false. muted Gibt an, ob der Benutzer den Zugriff auf den Positionssensor verweigert (true) oder gewährt hat (false).Boolean Gibt an, ob der Benutzer den Zugriff auf den Positionssensor verweigert (true) oder gewährt hat (false). Wenn sich dieser Wert ändert, wird ein status-Ereignis ausgelöst. status