Android 传感器代码
更新时间:2023-07-23 03:27:01 阅读量: 实用文档 文档下载
详细说明 各传感器调用方式,并附加详细的代码
Android下调用传感器代码
在这里介绍一下所写的在android下调用传感器的程序。
Android中支持的几种传感器:
Sensor.TYPE_ACCELEROMETER:加速度传感器。
Sensor.TYPE_GYROSCOPE:陀螺仪传感器。
Sensor.TYPE_LIGHT:亮度传感器。
Sensor.TYPE_MAGNETIC_FIELD:地磁传感器。
Sensor.TYPE_ORIENTATION:方向传感器。
Sensor.TYPE_PRESSURE:压力传感器。
Sensor.TYPE_PROXIMITY:近程传感器。
Sensor.TYPE_TEMPERATURE:温度传感器。
使用传感器最关键的一些知识是:SensorManager是所有传感器的一个综合管理类,包括了传感器的种类、采样率、精准度等。我们可以通过getSystemService方法来取得一个SensorManager对象。使用传感器时,需要通过registerListener函数注册传感器,使用完后需要通过unregisterListener取消注册。
百闻不如一见,还是直接讲代码:
新建一个Sensors的工程,创建一个Sensors.java,内容如下:
·········10········20········30········40········50········60········70········80········90········100
01 package me.sigma.sensors;
02
03
04import android.app.Activity;
05import android.hardware.SensorListener;
06import android.hardware.SensorManager;
07import android.os.Bundle;
08import android.widget.TextView;
09
10public class Sensors extends Activity {
详细说明 各传感器调用方式,并附加详细的代码
11 TextView myTextView1;//t
12 //gen
13 TextView myTextView2;//x
14 TextView myTextView3;//y
15 TextView myTextView4;//z
16 //acc
17 TextView myTextView5;//x
18 TextView myTextView6;//y
19 TextView myTextView7;//z
20 //ori
21 TextView myTextView8;//x
22 TextView myTextView9;//y
23 TextView myTextView10;//z
24 //Light
25 TextView myTextView11;//z
26
27 SensorManager mySensorManager;//
28 @Override
29 public void onCreate(Bundle savedInstanceState) {
30 super.onCreate(savedInstanceState);
31 setContentView(yout.main);
32 myTextView1 = (TextView) findViewById(R.id.myTextView1);
33 myTextView2 = (TextView) findViewById(R.id.myTextView2);
34 myTextView3 = (TextView) findViewById(R.id.myTextView3);
35 myTextView4 = (TextView) findViewById(R.id.myTextView4);
36 myTextView5 = (TextView) findViewById(R.id.myTextView5);
37 myTextView6 = (TextView) findViewById(R.id.myTextView6);
38 myTextView7 = (TextView) findViewById(R.id.myTextView7);
39 myTextView8 = (TextView) findViewById(R.id.myTextView8);
40 myTextView9 = (TextView) findViewById(R.id.myTextView9);
41 myTextView10 = (TextView) findViewById(R.id.myTextView10);
42 myTextView11 = (TextView) findViewById(R.id.myTextView11);
43 mySensorManager = (SensorManager) getSystemService(SENSOR_SERVICE); 44 }
45 private SensorListener mySensorListener = new SensorListener(){
46 @Override
47 public void onAccuracyChanged(int sensor, int accuracy) {}
详细说明 各传感器调用方式,并附加详细的代码
48 @Override
49 public void onSensorChanged(int sensor, float[] values) { 50 if(sensor == SensorManager.SENSOR_TEMPERATURE){
51 myTextView1.setText("Current Temprature:"+values[0]); 52 }else if(sensor == SensorManager.SENSOR_MAGNETIC_FIELD){
53 myTextView2.setText("Current Magnetic x:"+values[0]); 54 myTextView3.setText("Current Magnetic y:"+values[1]); 55 myTextView4.setText("Current Magnetic z:"+values[2]); 56 }else if(sensor == SensorManager.SENSOR_ACCELEROMETER){
57 myTextView5.setText("Current Accelero x:"+values[0]); 58 myTextView6.setText("Current Accelero y:"+values[1]); 59 myTextView7.setText("Current Accelero z:"+values[2]); 60 }else if(sensor == SensorManager.SENSOR_ORIENTATION){
61 myTextView8.setText("Current Oraenttation x:"+values[0]); 62 myTextView9.setText("Current Oraenttation y:"+values[1]); 63 myTextView10.setText("Current Oraenttation z:"+values[2]); 64 }else if(sensor == SensorManager.SENSOR_LIGHT){
65 myTextView11.setText("Current Oraenttation x:"+values[0]); 66 }
67 }
68 };
69 @Override
70 protected void onResume() {
71 mySensorManager.registerListener(
72 mySensorListener,
73 SensorManager.SENSOR_TEMPERATURE |
74 SensorManager.SENSOR_MAGNETIC_FIELD |
75 SensorManager.SENSOR_ACCELEROMETER |
76 SensorManager.SENSOR_LIGHT |
77 SensorManager.SENSOR_ORIENTATION,
78 SensorManager.SENSOR_DELAY_UI
79 );
80 super.onResume();
81 }
82 @Override
83 protected void onPause() {
84 mySensorManager.unregisterListener(mySensorListener);
详细说明 各传感器调用方式,并附加详细的代码
85 super.onPause();
86 }
87}
更改res/layout/下面的main.xml,为如下内容:
·········10········20········30········40········50········60········70········80········90········100
01 <?xml version="1.0" encoding="utf-8"?>
02<LinearLayout xmlns:android="/apk/res/android" 03 android:orientation="vertical"
04 android:layout_width="fill_parent"
05 android:layout_height="fill_parent">
06 <TextView
07 android:id="@+id/title"
08 android:gravity="center_horizontal"
09 android:textSize="20px"
10 android:layout_width="fill_parent"
11 android:layout_height="wrap_content"
12 android:text="@string/title"/>
13 <TextView
14 android:id="@+id/myTextView1"
15 android:textSize="18px"
16 android:layout_width="fill_parent"
17 android:layout_height="wrap_content"
18 android:text="@string/myTextView1"/>
19 <TextView
20 android:id="@+id/myTextView2"
21 android:textSize="18px"
22 android:layout_width="fill_parent"
23 android:layout_height="wrap_content"
24 android:text="@string/myTextView2"/>
25 <TextView
26 android:id="@+id/myTextView3"
27 android:textSize="18px"
28 android:layout_width="fill_parent"
29 android:layout_height="wrap_content"
30 android:text="@string/myTextView3"/>
详细说明 各传感器调用方式,并附加详细的代码
31 <TextView
32 android:id="@+id/myTextView4"
33 android:textSize="18px"
34 android:layout_width="fill_parent"
35 android:layout_height="wrap_content"
36 android:text="@string/myTextView4"/>
37 <TextView
38 android:id="@+id/myTextView5"
39 android:textSize="18px"
40 android:layout_width="fill_parent"
41 android:layout_height="wrap_content"
42 android:text="@string/myTextView5"/>
43 <TextView
44 android:id="@+id/myTextView6"
45 android:textSize="18px"
46 android:layout_width="fill_parent"
47 android:layout_height="wrap_content"
48 android:text="@string/myTextView6"/>
49 <TextView
50 android:id="@+id/myTextView7"
51 android:textSize="18px"
52 android:layout_width="fill_parent"
53 android:layout_height="wrap_content"
54 android:text="@string/myTextView7"/>
55 <TextView
56 android:id="@+id/myTextView8"
57 android:textSize="18px"
58 android:layout_width="fill_parent"
59 android:layout_height="wrap_content"
60 android:text="@string/myTextView8"/>
61 <TextView
62 android:id="@+id/myTextView9"
63 android:textSize="18px"
64 android:layout_width="fill_parent"
65 android:layout_height="wrap_content"
66 android:text="@string/myTextView9"/>
67 <TextView
详细说明 各传感器调用方式,并附加详细的代码
68 android:id="@+id/myTextView10"
69 android:textSize="18px"
70 android:layout_width="fill_parent"
71 android:layout_height="wrap_content"
72 android:text="@string/myTextView10"/>
73 <TextView
74 android:id="@+id/myTextView11"
75 android:textSize="18px"
76 android:layout_width="fill_parent"
77 android:layout_height="wrap_content"
78 android:text="@string/myTextView11"/>
79</LinearLayout>
80
更改res/values/strings.xml为如下内容:
·········10········20········30········40········50········60········70········80········90········100
01 <?xml version="1.0" encoding="utf-8"?>
02<resources>
03 <string name="hello">templator!</string>
04 <string name="app_name">templator</string>
05 <string name="title">Sigma Sensors</string>
06 <string name="myTextView1">Current Temprature:</string>
07 <string name="myTextView2">Current Magnetic x:</string>
08 <string name="myTextView3">Current Magnetic y:</string>
09 <string name="myTextView4">Current Magnetic z:</string>
10 <string name="myTextView5">Current Accelero x:</string>
11 <string name="myTextView6">Current Accelero y:</string>
12 <string name="myTextView7">Current Accelero z:</string>
13 <string name="myTextView8">Current Oraenttation x:</string>
14 <string name="myTextView9">Current Oraenttation y:</string>
15 <string name="myTextView10">Current Oraenttation z:</string>
16 <string name="myTextView11">Current Light:</string>
17</resources>
正在阅读:
Android 传感器代码07-23
人生要避开的26个心灵陷阱03-12
北师大版八年级下册数学第三章 分式练习题(带解析)07-01
审计局推进审计管理工作2021年度总结08-03
摄影测量试卷-13测量-B卷11-10
我喜欢的小狗作文700字06-21
考古通论10-22
(通用版)备考新2022版高考历史二轮优选习题 立德树人热点练 题组04-06
清除社会上的小广告作文600字07-13
- 教学能力大赛决赛获奖-教学实施报告-(完整图文版)
- 互联网+数据中心行业分析报告
- 2017上海杨浦区高三一模数学试题及答案
- 招商部差旅接待管理制度(4-25)
- 学生游玩安全注意事项
- 学生信息管理系统(文档模板供参考)
- 叉车门架有限元分析及系统设计
- 2014帮助残疾人志愿者服务情况记录
- 叶绿体中色素的提取和分离实验
- 中国食物成分表2020年最新权威完整改进版
- 推动国土资源领域生态文明建设
- 给水管道冲洗和消毒记录
- 计算机软件专业自我评价
- 高中数学必修1-5知识点归纳
- 2018-2022年中国第五代移动通信技术(5G)产业深度分析及发展前景研究报告发展趋势(目录)
- 生产车间巡查制度
- 2018版中国光热发电行业深度研究报告目录
- (通用)2019年中考数学总复习 第一章 第四节 数的开方与二次根式课件
- 2017_2018学年高中语文第二单元第4课说数课件粤教版
- 上市新药Lumateperone(卢美哌隆)合成检索总结报告
- 传感器
- Android
- 代码