2016-11-27 14 views

答えて

1

ほとんどのAndroid搭載端末には、動き、向き、さまざまな環境条件を測定するセンサーが組み込まれています。これらのセンサは、高精度で正確な生データを提供することができます。モーションセンサーを使用して、傾き、揺れ、回転、スイングなどを検出できます。

センサーの3つの支持広義のカテゴリーがあります。

  • モーションセンサー
  • 環境センサー
  • 位置センサ

はここで、重力や加速度を感知するためのサンプルコードです:

private SensorManager mSensorManager; 
private Sensor mSensor; 

... 

mSensorManager = (SensorManager) getSystemService(Context.SENSOR_SERVICE); 
mSensor = null; 

if (mSensorManager.getDefaultSensor(Sensor.TYPE_GRAVITY) != null){ 
    List<Sensor> gravSensors = mSensorManager.getSensorList(Sensor.TYPE_GRAVITY); 
    for(int i=0; i<gravSensors.size(); i++) { 
    if ((gravSensors.get(i).getVendor().contains("Google Inc.")) && 
     (gravSensors.get(i).getVersion() == 3)){ 
     // Use the version 3 gravity sensor. 
     mSensor = gravSensors.get(i); 
    } 
    } 
} 
if (mSensor == null){ 
    // Use the accelerometer. 
    if (mSensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER) != null){ 
    mSensor = mSensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER); 
    } 
    else{ 
    // Sorry, there are no accelerometers on your device. 
    // You can't play this game. 
    } 
} 

sensormanagerの詳細については、https://developer.android.com/guide/topics/sensors/sensors_overview.html

をご確認ください。
関連する問題