新規記事の投稿を行うことで、非表示にすることが可能です。
2017年12月03日
SensorEventListenerの使い方備忘録
SensorEventListener
概要
・android.hardware配下のリスナー
methods
- onAccuracyChanged
センサーの精度が変更されたときにのみ呼び出される関数。
基本的には扱うことはないと考えてよい。@Override
public void onAccuracyChanged(Sensor sensor, int accuracy){
//処理の記載
} - onSensorrChangedd
センサーイベントが発生したときに呼び出される。
センサー値取得後の処理を記載。@Override
public void onSensorChanged(SensorEvent event){
//処理の記載
}
使い方
・androidStudioのメイン画面のxmlに追加してテストしてみたい場合。
・amazon Fire8で動作確認済みの3つのセンサーをswich文で切り替え。
⇒swich文を修正で対応可能
sensorEventListenerにオーバーロードで処理を実行
private final SensorEventListener listener = new SensorEventListener() {
@Override
public void onSensorChanged(SensorEvent sensorEvent) {
switch (sensorEvent.sensor.getType()){
case Sensor.TYPE_LIGHT:
//処理を記載
break;
case Sensor.TYPE_ACCELEROMETER:
//処理を記載
break;
case Sensor.TYPE_GYROSCOPE:
//処理を記載
break;
default:
//処理を記載
break;
}
}
@Override
public void onAccuracyChanged(Sensor sensor, int i) {
}
};
ButtonのclickListenerなどに以下を記入でSenser起動
List<Sensor> sensorList = sensorManager.getSensorList(Sensor.<<利用したいセンサー>>);
if(sensorList.size()>0){
Sensor s = sensorList.get(0);
sensorManager.registerListener(this.listener,s,sensorManager.<<描画速度>>);
}
指定可能センサー一覧
※※※使用機種によって異なる※※※〇対応しているセンサー一覧の取得
List<Sensor> deviceSensors = mSensorManager.getSensorList(Sensor.TYPE_ALL);
〇センサー一覧
- Sensor.TYPE_ACCELEROMETER
- Sensor.TYPE_MAGNETIC_FIELD
- Sensor.TYPE_GYROSCOPE
- Sensor.TYPE_LIGHT
- Sensor.TYPE_PRESSURE
- Sensor.TYPE_PROXIMITY
- Sensor.TYPE_GRAVITY
- Sensor.TYPE_LINEAR_ACCELERATION
- Sensor.TYPE_ROTATION_VECTOR
- Sensor.TYPE_ORIENTATION
- Sensor.TYPE_RELATIVE_HUMIDITY
- Sensor.TYPE_AMBIENT_TEMPERATURE
- Sensor.TYPE_MAGNETIC_FIELD_UNCALIBRATED
- Sensor.TYPE_GAME_ROTATION_VECTOR
- Sensor.TYPE_GYROSCOPE_UNCALIBRATED
- Sensor.TYPE_POSE_6DOF
- Sensor.TYPE_STATIONARY_DETECT
- Sensor.TYPE_MOTION_DETECT
- Sensor.TYPE_HEART_BEAT
- Sensor.TYPE_LOW_LATENCY_OFFBODY_DETECT
- Sensor.TYPE_ACCELEROMETER_UNCALIBRATED
描画速度
設定 | 遅延時間(ms) | 備考 |
SensorManager.SENSOR_DELAY_FASTEST | 0 | ほぼリアルタイム |
SensorManager.SENSOR_DELAY_GAME | 20 | ゲームなどの用途 |
SensorManager.SENSOR_DELAY_UI | 60 | 通常App |
SensorManager.SENSOR_DELAY_NORMAL | 80 | デフォルト |
・遅延を減らせば減らすほど、消費電力もその分増えていくため、目的に沿った速度を選択。
・センサーごとに消費電力も取得できるため、パフォーマンス設定時には参考に。
(Google Developersはこちら)
---
【更新履歴】
171203:初期作成
【対応必要箇所】(171205現在)
□androidHardware章の作成
□android機種ごとのセンサー対応表作成
posted by androidprogramblog at 21:00
| Android Studio
Android Studio の準備
Android Studio覚書
概要
Android Studioとは。
Android Studio(アンドロイド スタジオ)は、Googleが提供するAndroidプラットフォームに対応する統合開発環境(IDE)。JetBrains社が開発したIntelliJ IDEAをベースにAndroid開発に最適化されており、Windows、macOSおよびLinux用が存在する。
2013年5月16日、Google I/Oカンファレンスにおいて発表され[5]、同年5月にアーリーアクセスプレビュー版がリリースされた[4]。その後、2014年6月に公開されたバージョン0.8.0からは、開発段階がベータ版へ移行した[6]。
更にその後、2014年12月8日に正式バージョン1.0.0が公開され、従来EclipseとADT(Android Developer Tools)により実現されていた開発環境を、Android Studioで実現できる様になった。 2015年末をもってEclipseとADTのサポートが打ち切られ[7]、Android開発環境はAndroid Studioに完全移行された。
google mapなどのベースを自分で加工することもできる。
ー引用ー
「"Android Studio"」『フリー百科事典 ウィキペディア日本語版』より。
最終更新 2017年11月22日 (水) 08:23 UTC
入手はこちらから
最新版は 3.1.4 for windows
Update方法
- Android Studio を起動する
- 「Help」 → 「Check for Update」 を選択する
- アップデート内容を確認して、Update方法を選択する
ビルド環境
Amazon Fire 8
各年式の仕様はAmazonのサイトに記載されている。
[対応Sensor]:対応は以下3つのみ
- TYPE_ACCELEROMETER
- value[0]
X軸の加速度センサー - value[1]
Y軸の加速度センサー - value[2]
Z軸の加速度センサー
- value[0]
- TYPE_GYROSCOPE
- value[0]
X軸のジャイロセンサー - value[1]
Y軸のジャイロセンサー - value[2]
Z軸のジャイロセンサー
- value[0]
- TYPE_LIGHT
- value[0]
SI単位系のルクス(lux)表示
- value[0]
関連記事
〇センサーを動かしてみたい!(SensorEventListenerの使い方備忘録)
おすすめ教材
JavaからはじめようAndroidプログラミングーAndroid Studio対応版【電子書籍】[ 大津 真 ]
価格:1,254円
(2018/9/17 21:42時点)
【更新履歴】
・2017.12.03:新規作成、Fire8記載
・2018.09.02:Android Update 方法記載
・2018.09.17:関連記事追加、リンク更新
・2018.09.22:Fireの仕様リンクを追加
posted by androidprogramblog at 15:00
| Android Studio