(android实战)实现摇一摇功能
2012-11-13 22:28
375 查看
//感应管理器
private SensorManager mSensorManager;
//震动器
private Vibrator vibrator;
//活动管理器
ActivityManager activityManager ;
//1获得硬件信息
mSensorManager = (SensorManager) getSystemService(SENSOR_
SERVICE);
vibrator = (Vibrator) getSystemService(Service.VIBRATOR_SERVICE);
activityManager = (ActivityManager) getSystemService(ACTIVITY_SERVICE);
//2 判断当前手机是否带加速度感应器,如果不带,直接结束,不启动服务
List<Sensor> sensors = mSensorManager.getSensorList(Sensor.TYPE_ACCELEROMETER);
if(sensors!=null)
if(sensors.size()==0)
return;
//3生成感应侦听事件
SensorEventListener sensorelistener=new SensorEventListener(){
@Override
public void onAccuracyChanged(Sensor sensor, int accuracy) {
// TODO Auto-generated method stub
}
//感应器发生改变
@Override
public void onSensorChanged(SensorEvent event) {
// TODO Auto-generated method stub
int sensorType = event.sensor.getType();
//读取摇一摇敏感值
int shakeSenseValue=Integer.parseInt(getResources().getString(R.string.shakeSenseValue)); ;
//values[0]:X轴,values[1]:Y轴,values[2]:Z轴
float[] values = event.values;
if(sensorType == Sensor.TYPE_ACCELEROMETER){
if((Math.abs(values[0])>shakeSenseValue||Math.abs(values[1])>shakeSenseValue||Math.abs(values[2])>shakeSenseValue)){
//触发事件,执行打开应用行为
vibrator.vibrate(500);
}
}
}
};
//4注册侦听事件
mSensorManager.registerListener(sensorelistener,
mSensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER),
SensorManager.SENSOR_DELAY_NORMAL);
}
private SensorManager mSensorManager;
//震动器
private Vibrator vibrator;
//活动管理器
ActivityManager activityManager ;
//1获得硬件信息
mSensorManager = (SensorManager) getSystemService(SENSOR_
SERVICE);
vibrator = (Vibrator) getSystemService(Service.VIBRATOR_SERVICE);
activityManager = (ActivityManager) getSystemService(ACTIVITY_SERVICE);
//2 判断当前手机是否带加速度感应器,如果不带,直接结束,不启动服务
List<Sensor> sensors = mSensorManager.getSensorList(Sensor.TYPE_ACCELEROMETER);
if(sensors!=null)
if(sensors.size()==0)
return;
//3生成感应侦听事件
SensorEventListener sensorelistener=new SensorEventListener(){
@Override
public void onAccuracyChanged(Sensor sensor, int accuracy) {
// TODO Auto-generated method stub
}
//感应器发生改变
@Override
public void onSensorChanged(SensorEvent event) {
// TODO Auto-generated method stub
int sensorType = event.sensor.getType();
//读取摇一摇敏感值
int shakeSenseValue=Integer.parseInt(getResources().getString(R.string.shakeSenseValue)); ;
//values[0]:X轴,values[1]:Y轴,values[2]:Z轴
float[] values = event.values;
if(sensorType == Sensor.TYPE_ACCELEROMETER){
if((Math.abs(values[0])>shakeSenseValue||Math.abs(values[1])>shakeSenseValue||Math.abs(values[2])>shakeSenseValue)){
//触发事件,执行打开应用行为
vibrator.vibrate(500);
}
}
}
};
//4注册侦听事件
mSensorManager.registerListener(sensorelistener,
mSensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER),
SensorManager.SENSOR_DELAY_NORMAL);
}
相关文章推荐
- Android 摇一摇功能的实现
- Android 微信摇一摇功能实现详细介绍
- android 实现摇一摇功能
- (android实战)实现【关于我们】功能(textview的文本样式几种实现方式)
- Android开发,项目中实现的摇一摇功能。使用加速度传感器SensorEventListener
- 基于Android重力传感器的编程——摇一摇打电话+旋转锁屏功能的实现
- Android实战教程第三篇之简单实现拨打电话功能
- Android实现摇一摇功能
- Android实战简易教程-第二十四枪(基于Baas的用户表查询功能实现!)
- Android摇一摇功能实现
- android摇一摇功能实现
- Android实战——科大讯飞语音听写SDK的使用,实现语音识别功能
- android开发利用传感器实现微信的摇一摇功能
- 基于Android重力传感器的编程——摇一摇打电话+旋转锁屏功能的实现
- Android实战简易教程<三十一>(基于加速度传感器的摇一摇功能实例)
- android传感器实现摇一摇功能
- Android 使用加速度传感器实现摇一摇功能及优化
- Android实现摇一摇功能
- Android实战简易教程-第二十八枪(基于Bmob实现头像图片设置和网络上传功能!)
- android实现摇一摇功能