2016-08-31 33 views
0

私は、ユーザー(会社員)が特定の時間(まだ長時間机の上にいた場合)の静止位置にいたかどうかを確認するために行動認識を使用するAndroid Wearアプリを開発しています。そうであれば、通知を送り、短い休憩を取るように指示し、散歩をする。私はハンドヘルド機器を対象としたActivityRecognitionチュートリアルを2回続けました。コードを実装した後、最初のテストで私の時計のアプリは私がいくつかの小さな問題で取り組んでいる活動を認識しているようです。しかし、stackoverflowで私はそれを読んでアンドロイドウェアは、専用のActivityDetection APIを持っていないので、それは間違っているでしょう。誰かが代わりに動き検出のために加速度計データを使用することを提案しました。一方、Google Fit APIがあります。私はアンドロイドの着用に慣れていないので、正しい道が何であるかはわかりません。ユーザーの動きを追跡するための適切な方法と、ActivityRecognitionを使用してウェアを信頼できるかどうかについてのアドバイスをお願いしますか?それともGoogle Fit APIを使用するべきですか?Android WearのActivityRecognition

答えて

0

Google Fit APIは、ユーザーがフィットネスデータを制御できるようにするためによく使用されます。一定の時間、ユーザーが同じ位置にいると通知を送信したい場合は、fitness storeで特定のデータソースまたはデータ型が更新されるたびにこのAPIを使用できます。これをチェックしてくださいdocumentation

しかし、これはウェアラブル上のAndroidアクティビティの認識に関してこのrelated SO questionが見つかりました。あなたはすでにこのリンクをチェックしていて、accelerometer dataを使ってデバイスの動きを監視することに同意しました。

次のコードは、デフォルトの加速度センサのインスタンスを取得する方法を示しています

private SensorManager mSensorManager; 
private Sensor mSensor; 
    ... 
mSensorManager = (SensorManager) getSystemService(Context.SENSOR_SERVICE); 
mSensor = mSensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER); 

は、この情報がお役に立てば幸い!

+0

他のstackoverflow質問へのリンクでは、「生の加速度計データを使用して動きを検出する方法の1つは、デバイスがまったく動いていないことを検出することはかなり簡単です。些細なことではない」それはまったく動きがないか、わずかな動きしかないことを意味します。ユーザが異なる手のジェスチャを使用して机の上に座っているが、同じ場所にとどまっている場合。座っている?座っているときに手振りを使ったり、ユーザーが動いているとき(歩行、走っているときなど)に加速度計を使って区別することは可能でしょうか? –

関連する問題