LoginSignup
0
0

More than 5 years have passed since last update.

Android x Google Play Servicesで取得するconfidenceが理解しにくかったので私なりにまとめてみた。

Posted at

きっかけ

仕事でGoogle Play Servicesの ActivityRecognitionApiを使うことになった。
Google Play Servicesの ActivityRecognitionApiはユーザーの行動を取得する API で、徒歩で移動中か、自転車で移動中かなど「ユーザーが何をしているか」ということが把握できるので使用してみました。が!DetectedActivityで取得するconfidenceがなんとも理解しにくい!
activityTypeを使っている例がいっぱいあるけど、confidenceを使っている例がないので、ちょっと覚書のためにメモ。

やってみたこと

activityTypeはわかるんです。
「IN_VEHICLE」や「on_foot」など車なのか?歩いてるのか?走っているのか?って値がactivityTypeなのでif文で使うと

if(activityType === 0 )

てな感じになる。
しかし、confidenceの説明が公式サイトにはこう書いてあります。

value from 0 to 100 indicating how likely it is that the user is performing this activity.
ユーザーがアクティビティを実行している可能性があることを0〜100の値で示す。(Google先生翻訳)

とのこと....可能性? if文でどうやって使うの?と思ったので色々なケースでif文を書いてみた。

検証した結果

confidenceの値が100の場合
if(activityType === 0 && confidence > 100)
(間違いなく車やな!)
confidenceの値が100の場合
if(activityType === 0 && confidence > 75)
(多分、車とちゃうかなぁ〜)
confidenceの値が100の場合
if(activityType === 0 && confidence > 50)
(あれ?車とちゃうかなぁ〜でも、ビミョー)

こんな感じで使えるのだと思う。一応、ちゃんと動いている....
ん〜でも、これだとactivityTypeが0で全て通ってしまわないのだろうか?

まとめ

まとめるほどではないが、公式文章を読むと書いてあることはわかるんだけど、何に使うかわからない時は使ってみて覚えるのが一番だなぁ〜と思った。
でも、くだらない内容なので、あまり誰も役にも立たないと思うw

参考にしたサイト

公式ページDetectedActivity

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0