Что такое гироскоп и акселерометр и как его использовать в Android
Все.. Я новичок в Android, и я хочу знать об акселерометре и гироскопе. Как оба они используются в приложении для Android и как это работает. Я пробую простое демонстрационное приложение для проверки датчика, найденного или нет на мобильном устройстве. Но это не найдено.. Плз, направьте меня на гироскоп и акселерометр.
Это мой класс демо-приложения
public class MainActivity extends Activity {
private SensorManager mSensorManager;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mSensorManager = (SensorManager) getSystemService(Context.SENSOR_SERVICE);
if(mSensorManager.getDefaultSensor(Sensor.TYPE_GYROSCOPE) != null)
{
Toast.makeText(getApplicationContext(), "Found", 9).show();
// Sensor FOUND
}
else
{
Toast.makeText(getApplicationContext(), "NOt...Found", 9).show();
//Sensor NOT FOUND
}
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}}
Спасибо заранее..
1 ответ
Решение
Вы можете найти эту ссылку полезной в гироскоп для Android
и для accelerometer
начать с этого
public class yourActivity extends Activity implements SensorEventListener{
private SensorManager sensorManager;
double ax,ay,az; // these are the acceleration in x,y and z axis
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
sensorManager=(SensorManager) getSystemService(SENSOR_SERVICE);
sensorManager.registerListener(this, sensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER), SensorManager.SENSOR_DELAY_NORMAL);
}
@Override
public void onAccuracyChanged(Sensor arg0, int arg1) {
}
@Override
public void onSensorChanged(SensorEvent event) {
if (event.sensor.getType()==Sensor.TYPE_ACCELEROMETER){
ax=event.values[0];
ay=event.values[1];
az=event.values[2];
}
}
}