ImageVerifierCode 换一换
格式:DOCX , 页数:39 ,大小:1.04MB ,
资源ID:16389455      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/16389455.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(Android位置服务与传感器Word文档下载推荐.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

Android位置服务与传感器Word文档下载推荐.docx

1、根据criteria返回最合适的LocationProvidergetLastKnownLocation(provider)根据provider获得最新位置信息getProvider(name)根据名字获得LocationProvidergetProviders(enabledOnly)获得可用的LocationProvider列表requestLocationUpdates(provider,minTime, minDistance, listener)通过给定的Provider名称,并将其绑定指定的LocationListener监听器GPS_PROVIDER静态字符串常量,表明Locat

2、ionProvider是GPSNETWORK_PROVIDER静态字符串常量,表明LocationProvider是网络表8-1 LocationManager类的常用方法8.1.3 LocationProvider介绍 LocationProvider用来描述位置提供者,设置位置提供者的一些属性。可以通过Criteria类来为LocationProvider设置条件,获得合适的LocationProvider。表8-2列出了LocationProvider的常用方法和属性。AVAILABLE静态整型常量,标示是否可利用OUT_OF_SERVICE静态整型常量,不在服务区TEMPORAILY_

3、UNAVAILABLE静态整型常量,临时不可利用getAccuarcy()获得精度getName()获得名称getPowerRequirement()获得电源需求hasMonetaryCost()花钱的还是免费的requiresCell()是否需要访问基站网络requiresNetWork()是否需要Intent网络数据requiresSatelite()是否需要访问卫星表8-2 LocationProvider的常用方法和属性 LocationProvider中最常用的两个是GPS_PROVIDER和NETWORK_PROVIDER,就是前文提到过的GPS定位和网络定位两种方式。使用下面代码

4、可以获取系统所有的LocationProvider名称:package introduction.android.gpsLocation;import java.util.List;import android.app.Activity;import android.location.LocationManager;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget

5、.TextView;public class GooglemapActivity extends Activity /* Called when the activity is first created. */ Button button; TextView textview; LocationManager manager; Override public void onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState); setContentView(R.layout.main); button=(Bu

6、tton)findViewById(R.id.btn_listen); textview=(TextView)findViewById(R.id.tv_01); manager=(LocationManager)getSystemService(LOCATION_SERVICE);/获取系统location服务 button.setOnClickListener(new OnClickListener() Override public void onClick(View v) /获取系统所有的LocationProvider名称 List list=manager.getAllProvide

7、rs(); String t=; for (int i = 0; i list.size(); i+) t+=list.get(i)+n textview.setText(t); ); Criteria类可以设置一系列的查询条件,用于查找当前设备当中符合条件的LocationProvider,下面的代码片段展示了Criteria类的一般用法: Criteria c = new Criteria(); c.setAccuracy(Criteria.ACCURACY_FINE); /精度高 c.setPowerRequirement(Criteria.POWER_LOW); /电量消耗低 c.se

8、tAltitudeRequired(false); /不需要海拔 c.setSpeedRequired(false); /不需要速度 c.setCostAllowed(false); /不需要费用 String provider = locationManager.getBestProvider(c, false); /false是指不管当前适配器是否可用 System.out.println(provider);Location类Location类用于描述当前设备的地理位置信息,包括了经纬度、方向、高度和速度等。可以通过LocationManager.getLastKnownLocation

9、(String provider)方法可以获得Location实例。其常用方法见表8-3。public float getAccuracy ()获得精确度public double getAltitude ()获得高度public float getBearing ()获得方向public double getLatitude ()获取经度public double getLongitude ()获得纬度public float getSpeed ()获得速度表8-3 Location类的常用方法 Location的典型应用见下面的代码片段: Location location = locat

10、ionManager.getLastKnownLocation(LocationManager.GPS_PROVIDER); double latitude = location.getLatitude(); /经度 double longitude = location.getLongitude(); /纬度 double altitude = location.getAltitude(); /海拔8.1.4 使用GPS获取当前位置信息使用GPS获取用户当前位置,一般需要以下几个步骤:1)在Manifest文件中声明权限: uses-permission android:name=andro

11、id.permission.ACCESS_FINE_LOCATION/- 使用网络定位需要以下权限 -android.permission.ACCESS_COARSE_LOCATION 2)获取LocationManager对象:locationManager=(LocationManager)getSystemService(Context.LOCATION_SERVICE); 3)选择一个合适的LocationProvider,并注册一个周期性的位置更新:locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER,

12、0,0,new MyLocationListener(); 4)实现LocationListener接口,获取位置信息: class MyLocationListener implements LocationListener Override public void onLocationChanged(Location location) tv_01.setText(您当前位置的经度为:+location.getLongitude(); tv_02.setText(您当前位置的纬度为:+location.getLatitude(); public void onProviderDisable

13、d(String provider) /当provider被用户关闭时调用 public void onProviderEnabled(String provider) /当provider被用户开启后调用 public void onStatusChanged(String provider, int status, Bundle extras) /当provider的状态在OUT_OF_SERVICE、TEMPORARILY_UNAVAILABLE和AVAILABLE之间发生变化时调用 实例GPSLocation演示了使用GPS获取用户位置信息的过程,运行效果如图8-1所示。图8-1 实例

14、GPSLocation的运行效果 由于模拟器没有真正的GPS硬件,所以需要在DDMS中模拟GPS服务,图8-2展示了再Emulator Control面板上手动发送经纬度信息来测试位置服务。图8-2 Emulator Control面板 下面是实例GPSLocation的主界面布局文件main.xml的代码:LinearLayout xmlns:android= android:orientation=verticallayout_width=fill_parentlayout_height= TextView wrap_contenttext=string/hello /Button and

15、roid:id=+id/btn_listenstring/btn_listen /+id/tv_01+id/tv_02/LinearLayout 该实例的资源文件strings.xml的内容如下:resourcesstring name=hello使用GPS获取位置信息app_nameGPSLocationbtn_listen获取GPS信息在Manifest文件中添加相应的权限:manifest xmlns: package=introduction.android.gpsLocationversionCode=1versionName=uses-sdk android:minSdkVersi

16、on=8applicationicon=drawable/ic_launcherlabel=string/app_nameactivity.GPSLocationActivityintent-filter action android:android.intent.action.MAINcategory android:android.intent.category.LAUNCHER/intent-filter/activity/application/manifest 主Activity文件GPSLocationActivity.java的代码如下:import android.conten

17、t.Context;import android.location.Location;import android.location.LocationListener;import android.util.Log;public class GPSLocationActivity extends Activity private Button btn_listen; private TextView tv_01,tv_02; btn_listen=(Button) findViewById(R.id.btn_listen); tv_01=(TextView) findViewById(R.id

18、.tv_01); tv_02=(TextView) findViewById(R.id.tv_02); btn_listen.setOnClickListener(new OnClickListener() Override LocationManager locationManager=(LocationManager) GPSLocationActivity.this.getSystemService(Context.LOCATION_SERVICE); locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER,

19、 0, 0,new MyLocationListener(); / TODO Auto-generated method stub Log.i(GpsLocation,provider被关闭!);provider被开启!provider状态发生改变! 由以上代码可见,LocationListener用于接收位置发生改变时的通知。当Provider提供的位置信息发生改变时,onLocationChanged方法会被调用。当不需要使用LocationListener进行位置更新时,可以LocationManager的removeUpdates(LocationListener)方法将其移除。8.2 传感器大部分Android设备都带有传感器,传感器可以检测到设备的运动、方位以及周围环境因素的变化,从而给应用程序的功能带来更多可能性。例如:一个游戏可以不用触摸屏幕,而仅需要倾斜,晃动或摇摆手机就可以对游戏进行控制;一个与天气相关的程序可以报告及时的温度和湿度情况;一个旅游相关的程序可以根据地磁和加速度模拟一个罗盘。8.2.1 Android传感器简介总的来讲,传感器可以分为三大类: 运动传感器:与三维空间中的运动相关的传感器,包括加速度传感器、重力传感器、陀螺仪和旋转向量传感器等

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1