N95硬件中隐藏了一个加速度传感器(Accelerometers),该硬件来自STMicroelectronics,型号为LIS302DL。加速度传感器用于将重力或者运动加速度变换为电信号,Accelerometers很可能是继GPS之后的下一个重量级的硬件。Forum Nokia Wiki上有最权威的描述:http://wiki.forum.nokia.com/index.php/N95_sensor
Accelerometers API首先在NokiaResearchCenter(http://research.nokia.com/projects/activity_monitor)发布,目前可以支持N95,N95 8GB,N93i,N82等手机.该plug-in只能用于研究和开发用途,并含有如下Capabilities,根据Symbian安全性规则,你的应用程序不能含有比他更多的Capabilities: LocalServices ,Location ,NetworkServices ,ReadDeviceData ,ReadUserData SurroundingsDD ,SwEvent ,UserEnvironment ,WriteDeviceData ,WriteUserData
如何使用Accelerometers plug-in API开发应用程序。 首先下载:http://research.nokia.com/files/N95_RD_Accelerometer.zip 1,安装配置: 需要将N95AccelerometerPlugin.sis安装到你的手机(目前可以支持N95,N95 8GB,N93i,N82) 在开发环境中,将RDAccelerometer.h和RDAccelerometerObserver.h头文件放到SDK的\epoc32\include目录中,将*.dso和*.lib文件复制到SDK的\epoc32\release\armv5\LIB目录中
2,具体使用: - 将库文件RDAccelerometer.lib添加到你应用程序的工程中 - 在你需要的类中继承MRDAccelerometerObserver接口,并实现HandleAccelerationL()函数接收来自加速度传感器的数据 - 创建一个CRDAccelerometer实例,并将上面提到的类作为参数传入 - 当实例创建完成后,加速度传感器数据会自动通过HandleAccelerationL()方法发送到应用程序中。 参数含义如下(参考RDAccelerometerObserver.h 获取更多信息): - 1G加速度等于64 - 0G加速度等于0 - (-1G)加速度等于(-63) - 删除CRDAccelerometer实例就可以停止接收来自传感器的数据
3,开发经验: - 即使你将手机放在桌上不动,通过HandleAccelerationL()得到的数据还是略为有所改变。 - 每秒钟会有30帧的数据传入到HandleAccelerationL()中,非常耗电。 - 应用程序中尽量早地关闭传感器,在需要的时候再开启。
附上显示加速度传感器数据的例子TestSensorCode
|