除了手机录制音/视频外,手机拍照也已经不是什么新鲜事了,Android相应地提供了手机拍照功能API。要使用Android系统进行拍照,使用到的类有很多。具体介绍如下。
□ SurfaceView:该类是一个视图组件,实现了照片的预览功能。
□ LocationManager可以用来获取当前的位置,追踪设备的移动路线,或设定敏感区域,在进入或离开敏感区域时设备会发出特定警报。
□ LocationProviders是能够提供定位功能的组件集合,集合中的每种组件以不同的技术提供设备的当前位置,区别在于定位的精度、速度和成本等方面。
LocationListener接口用于接收从LocationManager的位置发生改变时的通知。如果LocationListener被注册添加到LocationManager对象,并且此LocationManager对象调用了requestLocationUpdates(String, long, float, LocationListener)方法,那么接口中的相关方法将会被调用。其公共方法如表1所示。
表1 LocationListener类的方法
抽象方法 |
参数描述 |
说明 |
public abstract void onLocationChanged (Location location) |
location:位置发生变化后的新位置 |
当位置发生改变后被调用 |
public abstract void onProviderDisabled(String provider) |
provider:与之关联的location provider名称 |
在provider被用户关闭后被调用 |
public abstract void onPorviderEnabled (String provider) |
provider:与之关联的location provider名称 |
provider被用户开启后调用 |
public abstract void onStatusChanged (String provider, int Status, Bundle extras) |
provider:与变化相关的location provider名称。
status :如果服务已停止,并且在短时间内不会改变,状态码为OUT_OF_SERVICE;如果服务暂时停止,并且在短时间内会恢复,状态码为TEMPORARILY_UNAVAILABLE;如果服务正常有效,状态码为AVAILABLE。
extras: 一组可选参数,其包含provider的特定状态。下面列出一组共用的键值对,其实任何键的provider都需要提供的值
|
在Provider的状态在可用、暂时不可用和无服务三个状态直接切换时被调用 |
□ Location类,表示某一特定时间地理位置的相关信息。其方法如表2所示。
表2 LocationListener类的方法
方法 |
说明 |
getLatitude() |
取得纬度——Latitude |
getLongitude() |
取得经度——Longitude |
getAccuracy() |
取得精确度——Accuracy |
getAltitude() |
取得高度——Altitude |
getTime() |
取得时间——Time |
getSpeed() |
取得速度——Speed |
getBearing() |
取得方位——Bearing |