Android - Umgang mit Sturz-Erkennung-Algorithmus

Ich möchte in der Lage sein, die über ein relativ einfacher Sturz-Erkennung-Algorithmus, der in meiner Anwendung. In dem moment, in onSensorChanged(), bin ich immer der absolute Wert der aktuellen x -, x -, z-Werte und Subtraktion SensorManager.GRAVITY_EARTH (9,8 m/s) aus. Der sich ergebende Wert größer als ein Schwellenwert 10 mal hintereinander festlegen ein flag zu sagen, ein Sturz erkannt wurde, durch den Beschleunigungssensor, der Schwellenwert wird über 8m/s.

Auch ich bin den Vergleich der Orientierung des Telefons, sobald die Schwelle überschritten worden und die orienation ist es, wenn der Schwellenwert nicht mehr übergeben werden, dies setzt einen flag zu sagen, das Orientierungs-sensor hat erkannt, dass eine Herbst.

Wenn beide flags gesetzt sind, wird ein Ereignis Auftritt, überprüfen Sie, user ok, etc etc. Mein problem ist, mit dem Schwellenwert, wenn das Telefon gerade gehalten bis der absolute Wert der Beschleunigungsmesser ist etwa 9,8 m/s, aber wenn ich es halten sich immer noch in einem Winkel, kann es über 15m/s. Dies verursacht andere Ereignisse auslösen, die Sturz-Erkennung, und ob ich erhöhen Sie den Schwellenwert zu vermeiden, ist es nicht entdecken fällt.

Kann jemand geben Sie mir einige Ratschläge hier mit, was für Werte ich nehmen sollte oder wie auch Verbesserung meiner Methode? Vielen Dank.

InformationsquelleAutor der Frage bobby123 | 2011-01-31

Schreibe einen Kommentar