アンドロイド--センサーについて知っておく必要があります

5287 ワード

アンドロイドにはたくさんのセンサーがありますが、今日はアンドロイドのセンサーを知ってみましょう.
センサーとは?センサは、測定された情報を感知し、感知された情報を一定の法則に従って電気信号または他の必要な形式の情報出力に変換し、情報の伝送、処理、記憶、表示、記録、制御などの要求を満たす検出装置である.
Androidでは、センサは、ハードウェア情報、現在位置、加速計、ジャイロ、光感度、磁場、指向性、バッテリー窓台、音圧など、現在の携帯電話の状態のアプリケーションを示すとともに、マルチタッチのテストも行うことができます.
センサーの紹介と使い方
Androidプラットフォームは3種類のセンサーをサポート
  • Motion Sensors(モーションセンサ)のようなセンサは、主に加速力を測定する.このようなセンサには、加速計、重力センサ、ジャイロセンサ、回転ベクトルセンサ
  • が含まれる.
  • Environment Sensors(環境センサ)このようなセンサは主に環境の各種パラメータを測定し、例えば:圧力、湿度、温度...このようなセンサは気圧計、光度計、温度計
  • を含む.
  • Position Sensors(位置センサ)のようなセンサは、主に位置情報を測定する.これらのセンサは、方向センサ、磁力計
  • を含む.
    Androidセンサーの使用
    ステップ1:重力センサコントローラの取得
    SensorManager sensormanger =(SensorManager) this.getSystemService(SENSOR_SERVICE);
    

    ステップ2:重力センサを例に、必要なセンサを作成します.
    Sensor sensor = sensormanger.getDefaultSensor(Sensor.TYPE_ACCELEROMETER);
    

    ステップ3:センサをシステムに登録する
    sensormanger.registerListener(moveball, sensor,SensorManager.SENSOR_DELAY_GAME);
    

    registerListener()メソッドには3つのパラメータがあり、1つ目のパラメータはセンサデータの変化のリスナーであり、2つのパラメータはリスニングが必要なセンサ(つまり2ステップ目に作成されたsensor)であり、3つ目のパラメータは受信頻度である.呼び出し後にブール値が返され、trueは成功を表し、falseは失敗を表す
    SensorEventListenerインタフェースを実装する必要があります
    @Override
    	public void onSensorChanged(SensorEvent event) {
    		// TODO Auto-generated method stub
    		if(event.sensor.getType()==Sensor.TYPE_ACCELEROMETER){
    		//ax、ay、az x、y、z      
    			ax = event.values[SensorManager.DATA_X];
    			ay = event.values[SensorManager.DATA_Y];
    			az = event.values[SensorManager.DATA_Z];
    		}
    		
    	}
    
    	@Override
    	public void onAccuracyChanged(Sensor sensor, int accuracy) {
    		// TODO Auto-generated method stub
    		
    	}
    

    アンドロイドのセンサの例
  • 加速度センサ:TYPE_ACCELEROMETERは、装置の3つの物理軸方向(x,y,z)の加速度をm/s 2で測定した.
  • 周囲温度センサー:TYPE_AMBIENT_TEMPERATUREは周囲の空気温度を検出する.
  • 重力センサー:TYPE_GRAVITY測定重力
  • ジャイロセンサー:TYPE_GYROSCOPEは装置の3つの物理軸方向(x,y,およびz)をrad/sで測定した.回転速度.
  • 光照射センサー:TYPE_LIGHTはlxで周囲の光線レベルを測定した.
  • リニア加速度センサ:TYPE_LINEAR_ACCELERATIONは一つの軸方向に沿った加速度を検出する.
  • 磁力センサー:TYPE_MAGNETIC_FIELDは周囲の3つの物理軸方向の磁場を測定した.
  • 方向センサ:TYPE_ORIENTATIONは装置のすべての3つの物理軸線方向(x,y,x)の回転角度を測定する.
  • 圧力センサー:TYPE_PRESSURE周囲空気圧測定
  • 近接センサー:TYPE_PROXIMITY検出物体と携帯電話の距離
  • 相対湿度センサー:TYPE_RELATIVE_HUMIDITYは周囲空気の相対湿度
  • を検出する.
  • 回転ベクトルセンサ:TYPE_ROTATION_VECTORは、動きを検出し、回転を検出するために使用される.
  • 温度センサー:TYPE_TEMPERATURE検出装置の温度