今天有个公司说需要动作感应的几个小游戏!也接触android很久了,但是以前没有看过关于动作感应技术的教程,到google上也没搜索到类似教程!只有自己看API了,加上就其他平台的动作感应试试吧!就在这里记录下收获吧!

  1.发现Android提供了SensorListener接口

  2.要使用还得有个动作感应管理器SensorManager

  Java代码

 

                                                             //                取得SensorManager                
SensorManager sensorMgr = (SensorManager)getSystemService(SENSOR_SERVICE);

  3.注册我们获得的SensorManager   

  Java代码

                                             //                返回true表示注册成功,flase则反之                
sensorMgr.registerListene( this ,SensorManager.SENSOR_ACCELEROMETER,SensorManager.
SENSOR_DELAY_GAME);
如果注册SensorManager不成功就调用

  Java代码

                                sensorMgr.unregisterListener(                this                ,SensorManager.SENSOR_ACCELEROMETER); 
 
4.SensorListener必须实现两个方法

  Java代码

                                public                                 void                 onAccuracyChanged(                int                 arg0,                 int                 arg1) {}
public void onSensorChanged( int sensor, float [] values) {}
5.自己定义一个3D的坐标

  Java代码

                                class                 Pos3D
{
float x;
float y;
float z;
}
Pos3D cur,last;
在方法中这样就可以获得数据

  Java代码

                                cur.x                 =                 values[SensorManager.DATA_X];
cur.y
= values[SensorManager.DATA_Y];
cur.z
= values[SensorManager.DATA_Z];
float speed = Math.abs((cur.x + cur.y + cur.z) - (last.x + last.y + last.z)) / 间隔的时间
下面就是判断这个speed大于自己定义的一个数值时,进行处理

  Java代码

                                if                (speed                 >                                 1000                )
{
// 这里来进行处理
}

 

就这样最基本的实现了动作感应,,但是大家肯定能感觉得到这个方法的不足之处,我也还在研究更好的方法,希望一起讨论。

 

更多相关文章

  1. Android仿淘宝首页UI(附代源代码及示例图片)
  2. Android中使用语音引擎入门七步曲
  3. 狂刷Android范例之4:用代码安装卸载app
  4. android studio如何生成混淆代码的jar
  5. Android中使用语音引擎入门七步曲
  6. Android(安卓)layout之优化:使用include和merge 标签
  7. Android(安卓)layout 使用include和merge 标签
  8. 一看就懂的Android(安卓)APP开发入门教程
  9. Android如何完全调试framework层代码

随机推荐

  1. ubuntu11.04上搭建Android推送服务器
  2. delphi xe5 android 调用照相机获取拍的
  3. Android(安卓)第九天(下午)
  4. Android(安卓)ImageCropper 矩形 圆形 裁
  5. android 横向滑动 HorizontalScrollView
  6. sdcard相关的adb命令
  7. Android中使用AdapterViewFlipper实现自
  8. Android(安卓)TextView实现点击展开动画
  9. [Android实例] 基于ffmpeg的Android播放
  10. 关于直接在View中实现Gesture的功能