Skip to content
  • P
    Projects
  • G
    Groups
  • S
    Snippets
  • Help

android / dayu

  • This project
    • Loading...
  • Sign in
Go to a project
  • Project
  • Repository
  • Issues 0
  • Merge Requests 0
  • Pipelines
  • Wiki
  • Snippets
  • Members
  • Activity
  • Graph
  • Charts
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
  • Files
  • Commits
  • Branches
  • Tags
  • Contributors
  • Graph
  • Compare
  • Charts
Switch branch/tag
  • dayu
  • ..
  • util
  • SensorUtil.java
Find file
Normal viewHistoryPermalink
SensorUtil.java 1.5 KB
Newer Older
罗翻's avatar
增加人脸识别
5b0d1c4f
 
罗翻 committed 7 years ago
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73
package com.megvii.idcardlib.util;

import android.content.Context;
import android.hardware.Sensor;
import android.hardware.SensorEvent;
import android.hardware.SensorEventListener;
import android.hardware.SensorManager;
import android.os.Handler;

/**
 *传感器工具类 
 */
public class SensorUtil implements SensorEventListener {
	public float Y;
	private SensorManager mSensorManager;
	private Sensor mSensor;
	private boolean isFail;
	private Handler mHandler;

	public SensorUtil(Context context) {
		init(context);
	}

	private void init(Context context) {
		mSensorManager = (SensorManager) context
				.getSystemService(Context.SENSOR_SERVICE);
		mSensor = mSensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER);
		if (mSensor != null) {
			mSensorManager.registerListener(this, mSensor,
					SensorManager.SENSOR_DELAY_NORMAL);
		} else {
			isFail = true;
		}
		mHandler = new Handler();
		mHandler.postDelayed(new Runnable() {
			@Override
			public void run() {
				isFail = true;
			}
		}, 3000);
	}

	@Override
	public void onSensorChanged(SensorEvent event) {
		Y = event.values[1];
	}

	@Override
	public void onAccuracyChanged(Sensor sensor, int accuracy) {

	}

	public void release() {
		if (mSensor != null && mSensorManager != null) {
			mSensorManager.unregisterListener(this);
		}
		if (mHandler != null) {
			mHandler.removeCallbacksAndMessages(null);
		}
	}

	public boolean isVertical() {
		if (Y >= 8)
			return true;

		return false;
	}

	public boolean isSensorFault() {
		return isFail;
	}

}