Jetzt kostenlos registrieren. Mitglieder surfen ohne Werbung auf Android-Hilfe.de!
Zurück   Android-Hilfe.de > Android Developer > Android App Entwicklung

Beschleunigungssensor

Das Thema "Beschleunigungssensor" befindet sich unter Android App Entwicklung auf Android-Hilfe.de.


Antwort

 

Themen-Optionen Ansicht
Alt 12.04.2009, 19:25   #1 (permalink)
Fortgeschrittenes Mitglied

Modell: Galaxy Nexus

Registriert seit: 29.03.2009
Beiträge: 322
Abgegebene Danke: 2
Erhielt 28 Danke für 24 Beiträge
Standard Beschleunigungssensor

Hallo,

ich versuche schon eine Weile den Beschleunigungssensor auszulesen.
Bis jetzt erhalte ich aber immer die Werte vom Lagesensor.

Hat einer für mich einen Tipp, wie man den ausliest?


Gruß Manu
manu ist offline   Mit Zitat antworten
Alt 18.04.2009, 16:29   #2 (permalink)
Android-Hilfe.de Mitglied

Registriert seit: 19.01.2009
Beiträge: 71
Abgegebene Danke: 7
Erhielt 6 Danke für 4 Beiträge
Standard AW: Beschleunigungssensor

Ich mach das so (es muss nicht unbedingt SENSOR_ALL sein):

...
SensorManager sensor = (SensorManager) getSystemService(SENSOR_SERVICE);
sensor.registerListener(this, SensorManager.SENSOR_ALL, SensorManager.SENSOR_DELAY_GAME);
...

und

public void onSensorChanged(int sensor, float[] values) {
if (sensor == SensorManager.SENSOR_ACCELEROMETER) {
float x = values[0];
float y = values[1];
float z = values[2];
...
} else if (sensor == SensorManager.SENSOR_ORIENTATION) {
float x = values[0];
float y = values[1];
float z = values[2];
...
} else {
...
}
}
__________________
greenrobot.de - Android Apps & Services
K'UMPA - Android Game (ADC2 Finalist)
Markus ist offline   Mit Zitat antworten
Alt 18.04.2009, 17:32   #3 (permalink)
Fortgeschrittenes Mitglied

Modell: Galaxy Nexus

Registriert seit: 29.03.2009
Beiträge: 322
Abgegebene Danke: 2
Erhielt 28 Danke für 24 Beiträge
Standard AW: Beschleunigungssensor

Danke, das muss ich bei Gelegenheit mal testen.
Ich hatte in Erinnerung, dass ich das so auch probiert habe.
manu ist offline   Mit Zitat antworten
Alt 11.05.2009, 16:51   #4 (permalink)
Neuer Benutzer

Registriert seit: 31.03.2009
Beiträge: 5
Abgegebene Danke: 0
Erhielt 0 Danke für 0 Beiträge
Standard AW: Beschleunigungssensor

Tach,
hab seit kurzem damit begonnen mit dem G1 zu experimentieren und suche ein Code-Besipiel zum Beschleunigungs/Lagesensor. So dass die aktuellen werte einfach in einem TextView angezeigt werden. Also der Code oben sieht schon gut aus, ist aber leider nicht vollständig könntet ihr die restlichen Zeilen oder einen Link zu einem guten Beispiel posten? Bin erst seit kurzem bei Java dabei hatte vorher nur mit C++ zutun und die DOku auf Android.com ist nicht wirklich hilfreich.

Danke im Vorraus!
Centin ist offline   Mit Zitat antworten
Alt 02.06.2009, 11:28   #5 (permalink)
Android Guru

Registriert seit: 09.05.2009
Beiträge: 2.389
Abgegebene Danke: 36
Erhielt 307 Danke für 289 Beiträge
Standard AW: Beschleunigungssensor

Zitat:
Zitat von Markus Beitrag anzeigen
Ich mach das so (es muss nicht unbedingt SENSOR_ALL sein):

...
SensorManager sensor = (SensorManager) getSystemService(SENSOR_SERVICE);
sensor.registerListener(this, SensorManager.SENSOR_ALL, SensorManager.SENSOR_DELAY_GAME);
...

und

public void onSensorChanged(int sensor, float[] values) {
if (sensor == SensorManager.SENSOR_ACCELEROMETER) {
float x = values[0];
float y = values[1];
float z = values[2];
...
} else if (sensor == SensorManager.SENSOR_ORIENTATION) {
float x = values[0];
float y = values[1];
float z = values[2];
...
} else {
...
}
}

ja so funktioniert das bestimmt, aber mit 1.5 ist der sensorlistener deprecated und sensoreventlistener ist neu

gibts dazu irgendwelche infos dazu?
swordi ist offline   Mit Zitat antworten
Alt 03.06.2009, 15:01   #6 (permalink)
Neuer Benutzer

Registriert seit: 03.06.2009
Beiträge: 2
Abgegebene Danke: 0
Erhielt 0 Danke für 0 Beiträge
Standard AW: Beschleunigungssensor

hier ein kleiner Ausschnitt meinerseits:

Erstmal der SensorEventListener:
Code:
private class DeviceSensor implements SensorEventListener {
...
}
Dann nur noch registrieren:
Code:
deviceSensor = new DeviceSensor();

SensorManager mSensorManager = (SensorManager) getSystemService(SENSOR_SERVICE);

mSensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER);
      mSensorManager.registerListener(deviceSensor,
                                      mSensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER),
                                      SensorManager.SENSOR_DELAY_NORMAL);
      mSensorManager.registerListener(deviceSensor,
                                      mSensorManager.getDefaultSensor(Sensor.TYPE_MAGNETIC_FIELD),
                                      SensorManager.SENSOR_DELAY_FASTEST);
prihei ist offline   Mit Zitat antworten
Alt 03.06.2009, 15:27   #7 (permalink)
Android Guru

Registriert seit: 09.05.2009
Beiträge: 2.389
Abgegebene Danke: 36
Erhielt 307 Danke für 289 Beiträge
Standard AW: Beschleunigungssensor

danke für deinen code

ich werde ihn mal probieren bei mir zu integrieren.

geht das bei dir im emulator auch? hab etwas gelesen, dass 1.5 probleme mit dem sensormanager hat??
swordi ist offline   Mit Zitat antworten
Antwort

Stichworte
-

Themen-Optionen
Ansicht


Ähnliche Themen

Thema Autor Forum Antworten Letzter Beitrag
Beschleunigungssensor / Hard Reset / Simlock elprizo T-Mobile G1 Forum 7 07.05.2009 15:34
Beschleunigungssensor HomerSimpson Android App Entwicklung 4 10.12.2008 20:58




Du liest gerade: "Beschleunigungssensor" unter "Android App Entwicklung" auf Android-Hilfe.de.


Powered by vBulletin®
Copyright ©2000 - 2012, vBulletin Solutions, Inc.
Search Engine Friendly URLs by vBSEO
© Android-Hilfe.de 2012 - All rights reserved.