Android下的重力感应应用

0922Android传感器实例指南针 指指指指南针  实现指南针能够旋转要求手机内部有地磁传感器和加速度传感器,然后用自定义View画出指南针。通过地磁传感器计算出的角度,通过一系列的计算将这个角度转换成合适的角度后利用自定义View中的角度的set方法来将角度传到自定义View中。在surface中开启一个线程实现指南针的动画。传感器部分  Android中的传感器的用法其实都很类似。首先第一步要获取到SensorManager的实例 阅读详情

android手机支持重力感应,针对Android的通过如下接口支持:

android.hardware.SensorEventListener

该接口有两个方法需要实现:

 @Override
 public void onSensorChanged(SensorEvent e) {

    view.handleMoving(e.values[SensorManager.DATA_X]);
 }

 @Override
 public void onAccuracyChanged(Sensor s, int accuracy) {
....

 }

实现该接口比较容易,可以将对应的Activity实现该接口,在onSensorChanged方法中添加需要感应重力变化的处理代码即可。

还有一点,为了使重力感应生效需要增加如下处理逻辑

1:在Activity创建后,使重力感应生效

2:在Activity终止时,使重力感应失效

参考类似代码如下:

private SensorManager mSensorManager;

 private Sensor mSensor;
 
 @Override
 public void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  enableSensor();
 }
 
 @Override
 public void finish() {
  // 注销重力感应监听
  disableSensor();
  super.finish();
 }
 
 private void enableSensor(){
  mSensorManager = (SensorManager) getSystemService(SENSOR_SERVICE);
  mSensor = mSensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER);
  // 注册重力感应监听
  mSensorManager.registerListener(this, mSensor,
    SensorManager.SENSOR_DELAY_GAME);
 }
 
 public void disableSensor(){
  mSensorManager.unregisterListener(this, mSensor);
 }


获取系统重力感应的方法:

public static void getSystemGravity(Context context) {
		try {
			int systemGravity = Settings.System.getInt(context
					.getContentResolver(),
					Settings.System.ACCELEROMETER_ROTATION);
			if (0 == systemGravity) {
				Constant.g_isGravity = false;
			} else {
					Constant.g_isGravity = true;
			}
		} catch (SettingNotFoundException e1) {
			// TODO Auto-generated catch block
			e1.printStackTrace();
		}
		
	}
设置系统是否开启重力感应:

setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR);
Android重力感应应用编程:实现倾斜控制手机游戏 通过注册重力感应事件的监听器,我们可以获取设备在三个轴上的倾斜度,并根据倾斜度的值来实现相应的游戏操作。在本篇文章中,我们将讨论如何编写一个Android应用程序,利用重力感应传感器实现倾斜控制手机游戏的功能。通过倾斜手机,玩家可以控制游戏中的角色或物体进行移动,为游戏增添更加直观和有趣的交互方式。通过以上的代码,我们可以实现一个简单的倾斜控制手机游戏的Android应用程序。在实际开发中,你可以根据具体的游戏需求和逻辑,在。根据这些倾斜度的值,我们可以实现游戏中的相应操作,例如控制游戏角色的移动。 阅读详情

相关推荐

Android重力感应技术详解及应用案例

本文还有配套的精品资源,点击获取 简介:重力感应技术是Android开发中重要的交互功能,使应用程序能够响应设备移动和方向变化,为多种场景提供丰富体验。本文详细介绍了Android重力感应的工作原理、API使用方法,以及如何在游戏、健康和导航应用中实现实际应用。通过SensorManager和SensorEventListener,开发者能够轻松集成设备运动感应,优化性能和...

weixin_35835030的博客 3352

Android 传感器(Sensor)API教程 (二) 传感器事件

原帖地址:http://www.androidegg.com/portal.php?mod=view&aid=592 1.3.4  android.hardware.SensorEvent       SensorEvent类是在传感器事件(onAccuracyChanged

Gracker的专栏 1607

Android应用全面支持重力感应屏幕旋转

在Android系统中,传感器是感知外部世界变化的设备,如加速传感器、磁场传感器、光线传感器等。它们提供了一个简易的方式来获取设备的物理环境信息,广泛应用于游戏、导航、运动检测等领域。除了加速度计和陀螺仪之外,还支持其他多种类型的传感器。例如:磁场传感器)可以用来测量设备周围的磁场强度。接近传感器)可以用来检测物体是否靠近设备,常用于接听电话时关闭屏幕以防止误操作。光线传感器TYPE_LIGHT)可以用来检测周围环境的光照强度,对于调节屏幕亮度很有帮助。

weixin_30533301的博客 830

android硬件传感器

[size=large][color=red]纯属转载:http://dev.10086.cn/cmdn/bbs/thread-41843-1-1.html[/color][/size] 1、传感器入门 自从苹果公司在2007年发布第一代iPhone以来,以前看似和手机挨不着边的传感器也逐渐成为手机硬件的重要组成部分。如果读者使用过iPhone、HTC Dream、HTC Magic、HTC ...

aliusa的博客 469

NAO V6 开发环境的配置(附所有文件)

NAO V6开发环境配置前言环境Robot SettingsChoregraphe 2.8.5.10python2.7+naoqi2.8+opencv4.1.0putty与FileZilla 前言 学校的机器人摸索了一段时间,之前摸爬滚打探索环境,之前没接触这类机器人可能会非常艰辛,希望能给需要的人一些帮助。Nao与pepper通用 环境 win10(x64)+naoqi2.8 1、Robot S...

wbhhello的博客 3219

3.1 计算机视觉的发展和卷积神经网络概要(百度架构师手把手带你零基础实践深度学习原版笔记系列)

3.1 计算机视觉的发展和卷积神经网络(百度架构师手把手带你零基础实践深度学习原版笔记系列) 概要 计算机视觉作为一门让机器学会如何去“看”的科学学科,具体的说,就是让机器去识别摄像机拍摄的图片或视频中的物体,检测出物体所在的位置,并对目标物体进行跟踪,从而理解并描述出图片或视频里的场景和故事,以此来模拟人脑视觉系统。因此,计算机视觉也通常被叫做机器视觉,其目的是建立能够从图像或者视频中“感知”信息的人工系统。 计算机视觉技术经过几十年的发展,已经在交通(车牌识别、道路违章抓拍)、安防(人脸闸机.

aiAI 691

Android重力感应SensorEventListener详解

两个类: 1、SensorTest类,是Acvitivity 2、SensorListenerTest类,实现了SensorEventListener类, SensorTest.java: package com.sensor; import android.app.Activity; import android.os.Bundle; public class S

三少GG 1万+

PVE 8.0 保姆级换源教程:从Debian到LXC仓库,一次搞定国内镜像(附弹窗去除)

本文提供PVE 8.0保姆级换源教程,涵盖从Debian基础源到LXC仓库的国内镜像配置,并附赠去除订阅弹窗的实用技巧。通过详细步骤和命令示例,帮助用户快速优化ProxmoxVE环境,提升下载速度并消除干扰提示,适用于虚拟化平台的高效管理。

weixin_33282146的博客 413

Android重力感应应用【安卓进化十七】

重力感应主要应用于游戏开发中,这个效果非常棒!主要是3个轴,简单理解:那个朝上,值为正,朝下值为负!这个效果我测试过了,由于在手机上才能实现重力感应,所以没有效果图。见谅!转载请标明出处:http://blog.csdn.net/wdaming1986/article/detai

大明的android学习之旅 3405

吉林大学软件工程章节测验 第九章 答案+解析

4.【判断题】估算软件规模有代码行技术和功能点技术两种方法,其中代码行方法估计实现一个功能所需要的源程序行数,其不依赖项目所使用的开发语言,并且具有较好的直观性。3.【单选题】软件项目估算时,若计划人员对每个功能分别按最佳的、可能的、悲观的三种情况给出功能点估计值,记作a, m, b,则估算的期望值E的公式为( )。8.【判断题】在工程网络图中,如果在由起始事件至终止事件所构成的一条路径上,所有事件的最早时刻都和最迟时刻都相同,那么这条路径就是关键路径。4.【单选题】配置管理贯穿软件开发的整个过程。

m0_51459931的博客 1431

沧小海深入剖析xilinx的GTP/GTX核,掌握高速串行收发机制——第六章 接收端结构及功能说明

总目录在这哦~ https://blog.csdn.net/z123canghai/article/details/107700878 第六章 接收端结构及功能说明 子目录 6.1 RX的模拟前端 6.2 RX的OOB信号 6.3 RX的均衡器 6.4 RX的CDR 时钟数据恢复 6.5 RX时钟输出结构 6.6 RX 的极性控制 6.7 RX 的PRBS 6.8 Rx字节、字的对齐功能 6.9 Rx接收弹性缓冲区 6.10 Rx的时钟纠正 6.11 Rx接收通道绑定 6...

滄海的博客 1万+

Android模拟器下重力感应应用的开发-Simulator的使用

近段时间,一直在做一个关于重力感应的问题,涉及到手机的重力感应,开始一直用真机进行测试的,结果测试了很久,发现并不如人意,一直没有达到效果,鉴于使用真机,连线啊什么的比较麻烦,因此,笔者准备使用模拟的重力感应来进行重力感应方面的开发。      搜索了很多的资料,大抵上讲的都是一样的,很多地方很难弄明白,几个.jar文件混乱不清,使开发者看的不知所以然,慢慢摸索了很久,终于把重力感应的Demo跑

ivsunshine的专栏 3095

Isaac Sim/Lab & ROS2 入门教程 —— 宇树人形机器人 H1 强化学习策略部署

本文介绍了如何通过ROS2和IsaacSim运行H1人形机器人的强化学习运动策略。主要内容包括:1)设置机器人关节配置和初始位置;2)添加IMU传感器;3)配置ROS2节点以发布观测数据和接收动作指令;4)创建模拟环境并发布ROS时钟;5)最终运行ROS2策略实现对机器人的键盘控制。文中详细说明了关节参数设置、传感器配置、ROS2节点创建等关键步骤,并提供了注意事项和验证方法。完成配置后,用户可通过键盘指令控制机器人在平坦地形上的运动。

2506_90492529的博客 2170

重力感应

http://www.javaeye.com/topic/592409 关于手机重力感应的。 手机的感应器在Android里边所代表的类是Sensor,你只要看到在android.hardware这个包下边的都是封装的关于一些特殊的硬件方面的类,比如说Camera、S

工作博客 1624

Qt —— 百度地图 - 3、Qt调用高德在线地图功能示例(附源码)

Qt - 地图相关 —— 3、Qt调用高德在线地图功能示例(附源码)

497

出现 has been blocked by CORS policy: No ‘Access-Control-Allow-Origin‘ header is present on the 解决方法

Access to XMLHttpRequest at 'http://127.0.0.1:5000/api/data' from origin 'http://10.197.0.79:8080' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.

码农研究僧的博客 1万+

进阶二之Android重力感应(二)

路途再远也要一步步的走不止为了生存而是对其的热爱 本讲内容:Android重力感应 一、SensorMannager传感器管理对象 1、取得SensorMannager 手机中的所有传感器都须要通过SensorMannager来访问,调用getSystemService(SENSOR_SERVICE)方法就可以拿到当前手机的传感器管理对象。 sm = (Senso

355

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

Android重力感应

个月底拿到的手机HTC Nexus One,最初是在纯粹的在玩的爽,后来到中关村图书大厦看了一下午的书,最后买了两本Android的书,然后看了看。只是看了看纯基础,也就是基础的布局和Activity的生命周期。 上周成都和京沪两头跑,什么都没看,这两天又在想火车票的事情。。。。。晕啊。。。刚刚拿到票。。。长出一口气。 关于手机重力感应的。 手机的感应器在Android里边所代表

学无止境~ 695

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

对 Android 重力感应器的初步认识

  今天写了一个关于监测 Android 重力感应器的小例子,只是初步认识,能够获取x,y,z坐标轴的值,暂时还无法将其应用到实际应用中,有空慢慢研究吧。例子在我的手机上的效果如下图: accelerometer1 accelerometer2 主要代码如下: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 ...

bk_lin的专栏 349

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

Android重力感应示例

android中的很多游戏的游戏都使用了重力感应的技术,就研究了一下重力感应 以屏幕的左下方为原点,箭头指向的方向为正。从-10到10,以浮点数为等级单位,想象以下情形:   手机屏幕向上(z轴朝天)水平放置的时侯,(x,y,z)的值分别为(0,0,10); 手机屏幕向下(z轴朝地)水平放置的时侯,(x,y,z)的值分别为(0,0,-10); 手机屏幕向左侧放(x轴朝

ITSTAR 718

android sensor之重力小球

安卓重力小球demo 要过年了,最近在公司也没事。于是就在研究android的一些SDK。看到sensor时,突然想到大学里面刚出现android的时候,还没有钱买android手机,那时候想要是有个android手机能测试什么的岂不是很牛逼啊。记得那时候同学有款重力小球的游戏。 今天就开发了一款简单的demo重力小球。在网上也借鉴了一些别人的代码。测试是用的我爸以前的联想200元安卓机,

huowen1990的专栏 1630

Android 重力感应模拟器sensorsimulator

最近在研究android重力感应相关技术,郁闷的是在每次写完demo后,都必须放到真机上运行才能看到效果,于是就上网找了找,发现了一个android重力感应模拟器的插件。非常实用。不敢吃独食,特分享之。   这个插件名字叫做sensorsimulator,是一个开源的项目,配备

achellies's Blog 2249

android重力感应

手机和PC的一个比较大的区别就是支持重力感应,所以手机上很多地方都可以利用一下下这个特性~前两天做了一下,现在就总结总结(发现好少哦~)     主要用到的就三个对象:             /** SensorManager对象 */                Senso

androidlab 749

Android重力感应实现方式简介

Android中的很多游戏的游戏都使用了重力感应的技术,但其api demo却并没有重力感应的实例(不知道是不是我没找到,找到的朋友麻烦告诉我一下,谢谢),因为开发的需要,就研究了一下重力感应这方面,因为网上关于这方面的东西比较少,所以写出来跟大家交流一下,算是抛砖引玉吧。(ps.因为重力感应式需要真机才能测试的,所以,下面提供的demo程序只能在真机上跑。) 因为官方说明比较含糊难懂,

clarence 513
上一篇: Android 获取自己程序APK包的MD5指纹
下一篇: android编译系统makefile(Android.mk)写法
GaoJava08
博客等级 码龄18年 201粉丝 148原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值