添加当重力变化时的处理函数
在创建监听器时调用的函数 doSomething(x, y, z) 是自己定义的方法。
当手机倾斜方向改变时,监听器会调用该方法。
我们要做的,就是填充该方法,用于在重力发生变化时进行我们自己的处理。
当 x=y=0 时,手机处于水平放置状态。
当 x=0 并且 y>0 时,手机顶部的水平位置要大于底部,也就是一般接听电话时手机所处的状态。
当 x=0 并且 y<0 时,手机顶部的水平位置要小于底部。手机一般很少处于这种状态。
当 y=0 并且 x>0 时,手机右侧的水平位置要大于左侧,也就是右侧被抬起。
当 y=0 并且 x<0 时,手机右侧的水平位置要小于左侧,也就是左侧被抬起。
当 z=0 时,手机平面与水平面垂直。
当 z>0 时,手机屏幕朝上。
当 z<0 时,手机屏幕朝下。
[代码]
java代码
03
|
private
SensorManager mManager =
null
;
|
04
|
private
Sensor mSensor =
null
;
|
07
|
mManager = (SensorManager) getSystemService(Context.SENSOR_SERVICE);
|
09
|
mSensor = manager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER);
|
13
|
private
SensorEventListener mListener =
null
;
|
16
|
mListener =
new
SensorEventListener() {
|
17
|
public
void
onAccuracyChanged(Sensor sensor,
int
accuracy) {
|
20
|
public
void
onSensorChanged(SensorEvent event) {
|
21
|
float
x = event.values[SensorManager.DATA_X];
|
22
|
float
y = event.values[SensorManager.DATA_Y];
|
23
|
float
z = event.values[SensorManager.DATA_Z];
|
30
|
mManager.registerListener(mListener, mSensor, SensorManager.SENSOR_DELAY_GAME);
|
39
|
mManager.unregisterListener(mListener);
http://www.oschina.net/code/snippet_12_687
|
分享到:
相关推荐
本项目“Android重力感应的测试程序源码”提供了一个实用的示例,帮助开发者理解如何在Android应用中集成并利用重力感应器的数据。下面将详细解析这个项目的知识点。 1. **Android传感器服务**: - Android系统...
在本"Android重力感应Demo"中,我们将深入探讨如何利用Android SDK中的Sensor类和SensorEventListener接口来实现对重力感应数据的监听和处理。 首先,我们需要了解Android的Sensor框架。Android系统提供了多种...
总的来说,"android_重力感应demo"是一个基础教程,帮助开发者入门Android传感器编程,尤其是重力感应的应用。通过这个示例,学习者可以掌握如何获取和处理重力感应数据,为后续的传感器应用开发打下坚实的基础。
总之,Android重力感应编程涉及了Android传感器API的使用、物理方向的计算以及与UI的交互。通过"GravityTest"这样的项目,开发者可以学习如何利用设备的重力感应实现各种有趣的功能,如在本例中控制虚拟小车的运动。...
总的来说,这个压缩包提供了学习和实践Android重力感应器API的机会,对于想深入了解Android硬件交互或者游戏开发的开发者来说,是非常有价值的参考资料。通过研究源码,开发者可以掌握如何动态响应设备的运动,提升...
在Android平台上,重力感应是移动设备中一个关键的传感器技术,它允许应用程序根据设备的移动和方向来响应用户...通过实际操作,你将能够更好地掌握Android重力感应器的使用,为你的应用程序增添更多互动性和趣味性。
总的来说,"Android小球重力感应源码"项目涵盖了Android传感器API的使用、物理模拟(尤其是重力和碰撞)以及游戏编程的基础知识。通过研究这个源码,开发者可以学习到如何将实际环境的输入转换为屏幕上动态效果的...
在标题“Android重力感应”中提到的“飘落树叶”和“用力摇晃手机掉元宝”是两个典型的示例,它们展示了如何利用重力感应实现交互式动画效果。 首先,我们需要理解Android中的传感器系统。Android设备通常配备有多...
《Android重力感应贪吃蛇》是一款专为Android平台设计的创新版贪吃蛇游戏,它巧妙地将手机的重力感应技术与经典游戏贪吃蛇相结合,为玩家带来全新的操控体验。通过手机的倾斜,玩家可以实现对贪吃蛇的移动控制,这种...
这个"Android重力感应源代码"是专门为遥控Arduino机器人设计的,它利用了Android手机的内置重力传感器来获取实时的三维重力数据,并将这些数据发送到Arduino控制器,从而控制机器人的运动。 Android的传感器系统...
在Android平台上,重力感应是一项基础且重要的功能,它允许应用程序根据设备的移动和旋转来改变界面或执行...记住,实践是检验真理的唯一标准,不断尝试和优化你的代码,你将在Android重力感应编程方面变得更加熟练。
总之,"Android重力感应的测试程序源码.zip"是一个学习和实践Android传感器编程的好资源。通过对源码的分析和修改,开发者可以深入理解重力传感器的工作原理,以及如何在Android应用中有效地使用这些数据。
在Android开发中,"摇一摇"和"重力感应"是两个常用的功能,它们涉及到设备传感器的应用。本文将深入探讨这两个概念,并提供一个实际的示例代码——`重力感应MainActivity.java`。 首先,我们要了解Android中的...
在本资源中,"Android 重力感应的测试程序源码.zip" 包含了一个用于演示如何使用Android SDK中的Sensor API来获取并处理这些数据的应用程序。 1. **Sensor API**:Android SDK 提供的Sensor API允许开发者访问设备...
在Android平台上,重力感应是通过传感器系统服务来实现的,它允许应用程序检测设备的运动和方向变化。这个"Android 重力感应的测试程序源码.rar"包含了一个用于演示如何利用Android SDK来获取和处理重力感应数据的...
结合以上信息,我们可以构建一个基础的重力感应监听器,从而在游戏中实现根据设备角度变化动态调整游戏元素的效果,如控制小球滚动方向等。不过,还需要注意的是,不同的设备可能支持不同类型的传感器,因此在实际...
这个Demo展示了如何集成和利用Android系统的传感器API,特别是重力感应器,来实现一个可交互的小球游戏,用户可以通过倾斜设备来控制小球在屏幕上的移动。下面将详细介绍涉及的技术点。 首先,Android系统提供了...
在本“安卓重力感应源文件”中,我们主要探讨的是如何利用Android SDK中的Sensor类和SensorManager类来编译一个能够检测并处理重力感应数据的程序。 首先,Android系统的传感器服务是通过SensorManager类提供的,它...
首先,要使用Android设备的重力感应器,我们需要在`AndroidManifest.xml`文件中声明对加速度传感器的权限。这可以通过添加以下代码实现: ```xml <uses-permission android:name="android.hardware.sensor....
4. **Android SDK集成**:为了在Flash应用中使用Android的硬件功能,如重力感应器,开发者需要利用Android Software Development Kit (SDK)。通过Android的Sensor API,开发者可以获取设备传感器的数据,如加速度计...