- 1、本文档共4页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
传感器3
使用传感器获取相应数据
Android的大部分手机中都有传感器,传感器类型有方向、加速度 重力 、光线、磁场、距离 临近性 、温度等。
方向传感器: Sensor.TYPE_ORIENTATION
加速度 重力 传感器: Sensor.TYPE_ACCELEROMETER
光线传感器: Sensor.TYPE_LIGHT
磁场传感器: Sensor.TYPE_MAGNETIC_FIELD
距离 临近性 传感器: Sensor.TYPE_PROXIMITY
温度传感器: Sensor.TYPE_TEMPERATURE
//获取某种类型的感应器
Sensor sensor sensorManager.getDefaultSensor Sensor.TYPE_ACCELEROMETER ;
//注册监听,获取传感器变化值
sensorManager.registerListener listener, sensor, SensorManager.SENSOR_DELAY_GAME ;
上面第三个参数为采样率:最快、游戏、普通、用户界面。当应用程序请求特定的采样率时,其实只是对传感器子系统的一个建议,不保证特定的采样率可用。
最快: SensorManager.SENSOR_DELAY_FASTEST
最低延迟,一般不是特别敏感的处理不推荐使用,该种模式可能造成手机电力大量消耗,由于传递的为原始数据,算法不处理好将会影响游戏逻辑和UI的性能。
游戏: SensorManager.SENSOR_DELAY_GAME
游戏延迟,一般绝大多数的实时性较高的游戏都使用该级别。
普通: SensorManager.SENSOR_DELAY_NORMAL
标准延迟,对于一般的益智类或EASY级别的游戏可以使用,但过低的采样率可能对一些赛车类游戏有跳帧现象。
用户界面: SensorManager.SENSOR_DELAY_UI
一般对于屏幕方向自动旋转使用,相对节省电能和逻辑处理,一般游戏开发中我们不使用。
使用传感器做应用的难点在于获取数据后如何处理,获得相应需要的效果,这里涉及很多数学物理的知识……
下面使用一个代码实例演示如何获取方向与加速度的数据:
view plain
span style font-family:Comic Sans MS;font-size:18px; public class MainActivity extends Activity private TextView accelerometerView; private TextView orientationView; private SensorManager sensorManager; private MySensorEventListener sensorEventListener; @Override public void onCreate Bundle savedInstanceState super.onCreate savedInstanceState ; setContentView R.layout.main ; sensorEventListener new MySensorEventListener ; accelerometerView TextView this.findViewById R.id.accelerometerView ; orientationView TextView this.findViewById R.id.orientationView ; //获取感应器管理器 sensorManager SensorManager getSystemService SENSOR_SERVICE ; @Override protected void onResume //获取方向传感器 Sensor orientationSensor sensorManager.getDefaultSensor Sensor.TYPE_ORIENTATION ; sensorManager.registerListener sensorEventListener, orientationSensor, SensorManager.SENSOR_DELAY_NORMAL ; //获取加速度传感器 Sensor accelerometerSensor sensorManager.getDefaultSensor Sensor.TYPE_ACCELEROMETER ; sensorManager.registerListener sensorEventLis
您可能关注的文档
- Inverter loyer 架构1.ppt
- ROM优化.doc
- s112过滤和蒸发.ppt
- SAW传感器.doc
- Q系统.ppt
- Office2010 优化措施.doc
- PFMEA分析应用表单.doc
- PHWS-G系列风速传感器变送器使用说明书V2.0.doc
- QQ信息挖掘破案技战法.doc
- zemax优化.doc
- PDM软件:Siemens Teamcenter二次开发_(17).Teamcenter最佳实践与案例分析.docx
- SCADA软件:GE Proficy二次开发_(4).Proficy开发环境搭建.docx
- 智能电表软件:Landis+Gyr智能电表二次开发_(13).系统集成与测试.docx
- 智能电表软件:Elster智能电表二次开发_(8).Elster智能电表二次开发环境搭建.docx
- PDM软件:Siemens Teamcenter二次开发_(11).TeamcenterAPI与编程基础.docx
- SCADA软件:GE Proficy二次开发_(7).报警与事件管理.docx
- 智能电表软件:Echelon智能电表二次开发_(11).智能电表行业标准与法规.docx
- 智能电表软件:Itron智能电表二次开发_(6).用户界面定制与开发.docx
- 智能电表软件:Elster智能电表二次开发_(9).Elster智能电表二次开发工具使用.docx
- PDM软件:PTC Windchill二次开发_(21).Windchill最佳实践案例分析.docx
文档评论(0)