一、简介
前几篇sensor相关的文章介绍了sensor的hal及framework的知识,这一节以gsensor实时显示xyz轴坐标来分析,app层数据获取的过程,其实实现数据监控非常简单,主要分为下面三个步骤:
(1)获取Sensor服务:getSystemService;
(2)获取具体sensor对象:getDefaultSensor;
(3)注册数据监听器:registerListener;
二、详细过程分析
下面看实现数据显示的源码:
package com.example.yinpengzhang.myapplication_test2;
import android.content.Context;
import android.hardware.Sensor;
import android.hardware.SensorEvent;
import android.hardware.SensorEventListener;
import android.hardware.SensorManager;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.TextView;
public class MainActivity extends AppCompatActivity implements SensorEventListener{
private TextView mTextView_x = null;
private TextView mTextView_y = null;
private TextView mTextView_z = null;
private SensorManager mSensorManager;
private Sensor gsensor;
private float mLastX,mLastY,mLastZ;
private String sX,sY,sZ;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//定义xyz内容显示框TextView
mTextView_x = (TextView) findViewById(R.id.textView6);
mTextView_y = (TextView) findViewById(R.id.textView7);
mTextView_z = (TextView) findViewById(R.id.textView8);
//获取Sensor服务