本文实例讲述了Android编程中光线传感器的调用方法。分享给大家供大家参考,具体如下:

1.activity如果要使用传感器,就必须实现SensorEventListener接口
2.得到传感器管理对象(sensormanager)
3.使用sensormanager.registerlistener 方法注册指定的传感器
4.在sensoreventlistener 接口中的onsensorchanged和onaccuracychanged方法中完成其他具体工作
public class TestActivity extends Activity {
private SensorManager sensorManager;
//第三步:对传感器信号进行监听
private SensorEventListener listener = new SensorEventListener() {
@Override
public void onSensorChanged(SensorEvent event) {
//提示当前光照强度
Toast.makeText(TestActivity.this,
"当前光照强度:" + event.values[0] + "勒克斯", Toast.LENGTH_SHORT).show();
}
@Override
public void onAccuracyChanged(Sensor sensor, int accuracy) {
}
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//第一步:获取 SensorManager 的实例
sensorManager = (SensorManager) getSystemService(Context.SENSOR_SERVICE);
//第二步:获取 Sensor 传感器类型
Sensor sensor = sensorManager.getDefaultSensor(Sensor.TYPE_LIGHT);
//第四步:注册 SensorEventListener
sensorManager.registerListener(listener,sensor,SensorManager.SENSOR_DELAY_NORMAL);
}
@Override
protected void onDestroy() {
super.onDestroy();
//传感器使用完毕,释放资源
if(sensorManager!=null){
sensorManager.unregisterListener(listener);
}
}
}
传感器类型
加速传感器(Sensor.TYPE_ACCELEROMETER)
磁场传感器(Sensor.TYPE_MAGNETIC_FLELD)
光线传感器 (Sensor.TYPE_LIGHT )
方向传感器 (TYPE_ORIENTATION)
Values数值
Accelerometer(加速传感器)
values[0] :沿x轴方向加速度
values[1]: 沿 y 轴方向的加速度
values[2] : 沿 z 轴方向的加速度,也就是重力加速度
Gravity(重力感应器)
values数组中的三个元素分别代表x轴,y轴,z轴的重力大小
Light(光线传感器)
values数组只有第一个元素values[0]有意义,表示光线的强度,最大值是120000.0f.
Gyroscope( 陀螺传感器)
values,分别表示x,y,z轴的旋转的角速度
Orientation(方向传感器)
values[0] : 该值表示方位,也就是手机绕着z轴旋转的角度. 0表示北(north),90表示动(east),180表示南(south),270表示西(west)
values[1]:表示倾斜度. x 轴倾斜时,该值变化,-180<= vaules[1] <= 180
values[2]: 表示沿y轴的滚动角度,-90<=values[2] <=90
在android2.3 sdk中,并不推荐使用sensor.TYPE_ORIENTATION,values[0]值,有时会出现异常。官方推荐使用SensorManager.getOrientaion的方法来获得正确的方向
数值更新速度
SENSOR_DELAY_FASTEST: 以最快的速度获得传感器数据
SENSOR_DELAY_GAME: 适合与在游戏中获得传感器数据
SENSOR_DELAY_NORMAL: 以一般的速度获得传感器数据
SENSOR_DELAY_UI:适合于在ui空间中获得数据
更多关于Android相关内容感兴趣的读者可查看本站专题:《Android基本组件用法总结》、《Android视图View技巧总结》、《Android布局layout技巧总结》、《Android资源操作技巧汇总》、《Android文件操作技巧汇总》、《Android开发入门与进阶教程》、《Android编程之activity操作技巧总结》及《Android控件用法总结》
希望本文所述对大家Android程序设计有所帮助。
# Android
# 光线
# 传感器
# Android编程之光线传感器用法详解
# Android编程使用光线传感器获取光线强弱的方法【LightSensorManager封装类】
# Android开发中方向传感器定义与用法详解【附指南针实现方法】
# Android开发中的重力传感器用法实例详解
# Android编程之方向传感器用法示例
# android 传感器(OnSensorChanged)使用介绍
# Android利用方向传感器获得手机的相对角度实例说明
# Android 利用方向传感器实现指南针具体步骤
# Android 传感器--光照传感器详解及使用
# Android重力传感器实现滚动的弹球
# Android操作系统介绍之11种传感器
# Android编程基于距离传感器控制手机屏幕熄灭的方法详解
# 推荐使用
# 操作技巧
# 进阶
# 重力加速度
# 相关内容
# 第一个
# 感应器
# 感兴趣
# 光照强度
# 给大家
# 有意义
# 更多关于
# 方法来
# 适合于
# 第二步
# 有时会
# 所述
# 要使
# 程序设计
# 第三步
相关文章:
微信网站制作公司有哪些,民生银行办理公司开户怎么在微信网页上查询进度?
全景视频制作网站有哪些,全景图怎么做成网页?
如何通过wdcp面板快速创建网站?
北京的网站制作公司有哪些,哪个视频网站最好?
建站之星体验版:智能建站系统+响应式设计,多端适配快速建站
建站之家VIP精选网站模板与SEO优化教程整合指南
建站主机是什么?如何选择适合的建站主机?
c++怎么实现高并发下的无锁队列_c++ std::atomic原子变量与CAS操作【详解】
盘锦网站制作公司,盘锦大洼有多少5G网站?
大连网站制作公司哪家好一点,大连买房网站哪个好?
矢量图网站制作软件,用千图网的一张矢量图做公司app首页,该网站并未说明版权等问题,这样做算不算侵权?应该如何解决?
再谈Python中的字符串与字符编码(推荐)
哈尔滨网站建设策划,哈尔滨电工证查询网站?
制作国外网站的软件,国外有哪些比较优质的网站推荐?
C++中的Pimpl idiom是什么,有什么好处?(隐藏实现)
建站主机服务器选型指南与性能优化方案解析
如何零成本快速生成个人自助网站?
如何快速搭建高效WAP手机网站吸引移动用户?
北京企业网站设计制作公司,北京铁路集团官方网站?
如何获取开源自助建站系统免费下载链接?
免费网站制作模板下载,除了易企秀之外还有什么H5平台可以制作H5长页面,最好是免费的?
网站规划与制作是什么,电子商务网站系统规划的内容及步骤是什么?
移动端手机网站制作软件,掌上时代,移动端网站的谷歌SEO该如何做?
已有域名如何快速搭建专属网站?
建站主机如何选?高性价比方案全解析
,如何利用word制作宣传手册?
Python文件管理规范_工程实践说明【指导】
宝华建站服务条款解析:五站合一功能与SEO优化设置指南
个人摄影网站制作流程,摄影爱好者都去什么网站?
如何快速搭建FTP站点实现文件共享?
家庭建站与云服务器建站,如何选择更优?
详解免费开源的.NET多类型文件解压缩组件SharpZipLib(.NET组件介绍之七)
高性价比服务器租赁——企业级配置与24小时运维服务
网站制作公司排行榜,抖音怎样做个人官方网站
定制建站价位费用解析与套餐推荐全攻略
武汉网站制作费用多少,在武汉武昌,建面100平方左右的房子,想装暖气片,费用大概是多少啊?
,网站推广常用方法?
威客平台建站流程解析:高效搭建教程与设计优化方案
h5在线制作网站电脑版下载,h5网页制作软件?
网站网页制作电话怎么打,怎样安装和使用钉钉软件免费打电话?
建站之星伪静态规则如何设置?
网站企业制作流程,用什么语言做企业网站比较好?
宝塔新建站点为何无法访问?如何排查?
如何快速搭建安全的FTP站点?
免费制作统计图的网站有哪些,如何看待现如今年轻人买房难的情况?
如何快速登录WAP自助建站平台?
网站制作大概要多少钱一个,做一个平台网站大概多少钱?
制作电商网页,电商供应链怎么做?
5种Android数据存储方式汇总
建站之星后台密码如何安全设置与找回?
*请认真填写需求信息,我们会在24小时内与您取得联系。