libro
www.tuyano.com
Google androidプログラミング入門

ハードウェア・アクセス (1/7)

作成:2010-06-01 16:59
更新:2010-06-01 16:59

■センサー利用の基本

Android携帯の実機(ハードウェア)には、さまざまな機能が搭載されています。それらを利用するための基本的な仕組みもAndroidのAPIには用意されています。

まずは、センサー関係から説明しましょう。アンドロイド携帯には、さまざまなセンサーが内蔵されています。携帯の向き(傾き)を示すセンサー、回転する動きを検視するジャイロ・センサー、動かした時の加速度を測るセンサー、地磁気センサー、温度センサー、明るさのセンサー、等々……。これらを利用することができれば、いろいろと面白いアプリが作れそうですね。まずは、センサー利用の基本についてざっとポイントを整理しておきましょう。

1.センサーはSensorManagerが管理する
センサー機能は非常に多岐に渡っていますので、それらをまとめて管理する機能が必要です。Androidには「SensorManager」というクラスが用意されており、これがセンサー関係を管理しています。センサーを利用するには、まずこのSensorManagerを取得します。

2.利用するSensorを取得する
それぞれのセンサーは、「Sensor」というクラスとして用意されています。SensorManagerから、利用したいセンサーのSensorインスタンスを取得します。

3.registerListenerでイベントを登録する
Sensorには、値が変更されたときなどのイベントを処理するためのイベントリスナーが用意されています。これは「SensorEventListener」と呼ばれるものです。Sensorに、このイベントリスナーを登録することで、そのセンサーの値が変更されるとイベントが呼び出され処理されるようになります。これはSensorManagerの「registerListener」というメソッドで行うことができます。

4.SensorEventListenerを定義する
実際にセンサーの値が検知されると、SensorEventListenerに用意されているメソッドが呼び出されます。従って、SensorEventListenerをimplementsしたクラスを用意し、その中のイベント用メソッドで、値が変更された際の処理を作成すればいい、というわけです。

センサーの種類はいろいろとありますが、この基本的な流れはどれも同じです。SenserManagerを用意し、必要なSensorを取得し、これにregisterListenerでイベントを登録する。そして、イベントリスナーに必要なイベント処理を作成しておく、というわけです。

※プログラムリストが表示されない場合

AddBlockなどの広告ブロックツールがONになっていると、プログラムリスト等が表示されない場合があります。これらのツールをOFFにしてみてください。

※関連コンテンツ

「Google androidプログラミング入門」に戻る