我正在开发一个基于运动传感器的 android 项目。出于各种目的,我在我的项目中使用加速度计,即陀螺仪。
这是onResume()方法的onCreate()的代码段:
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
/*To setup Gravity*/
flickManager = (SensorManager) getSystemService(Context.SENSOR_SERVICE);
Objects.requireNonNull(flickManager).registerListener(mSensorListener, flickManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER),
SensorManager.SENSOR_DELAY_NORMAL);
mAccel = 10f;
mAccelCurrent = SensorManager.GRAVITY_EARTH;
mAccelLast = SensorManager.GRAVITY_EARTH;
/*End Here*/
/*To setup YouTube API*/
youTubeView = (YouTubePlayerView) findViewById(R.id.youtube_view);
youTubeView.initialize(Config.YOUTUBE_API_KEY, this);
/*---------End-------------------*/
/*Setup the textbox*/
txtView = (TextView) findViewById(R.id.ttview);
txtview2 = (TextView) findViewById(R.id.ttview2);
txtview3 = (TextView) findViewById(R.id.ttview3);
txtview4 = (TextView) findViewById(R.id.ttview4);
final EditText seekToText = (EditText) findViewById(R.id.seek_to_text);
/*-----------------End------------------------------*/
/* Setup seekbar*/
Button seekToButton = (Button) findViewById(R.id.seek_to_button);
seekToButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
int skipToSecs = Integer.valueOf(seekToText.getText().toString());
player.seekToMillis(skipToSecs * 1000);
Log.d("dur:"+skipToSecs * 1000,"Second");
}
});
protected void onResume()
{
flickManager.registerListener(mSensorListener, flickManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER),
SensorManager.SENSOR_DELAY_NORMAL);
super.onResume();
//accelerometer.register();
//gyroscope.register();
}
我的方法是在激活任何基于运动的工作之前先检查一些条件。是否可以在这里设置任何条件,例如“If-else”?如果不是,最好的做法是从方法外部调用它们以查看它们是否应该激活。
谢谢你。