Android編程實現(xiàn)GPS位置獲取的方法
本文實例講述了Android編程實現(xiàn)GPS位置獲取的方法。分享給大家供大家參考,具體如下:
public class GPSInfoService { private static GPSInfoService mInstance; private LocationManager locationManager;//定位服務(wù) private GPSInfoService(Context context) { // TODO Auto-generated constructor stub locationManager = (LocationManager) context.getSystemService(Context.LOCATION_SERVICE); } public static GPSInfoService getInstance(Context context){ if(mInstance == null){ mInstance = new GPSInfoService(context); } return mInstance; } //注冊定位監(jiān)聽 public void registenerLocationChangeListener(){ //得到所有的定位服務(wù) // List<String> providers = locationManager.getAllProviders(); // for(String provider:providers){ // Log.i("i", provider); // } //查詢條件 Criteria criteria = new Criteria(); //定位的精準(zhǔn)度 criteria.setAccuracy(Criteria.ACCURACY_FINE); //海拔信息是否關(guān)注 criteria.setAltitudeRequired(false); //對周圍的事情是否進(jìn)行關(guān)心 criteria.setBearingRequired(false); //是否支持收費(fèi)的查詢 criteria.setCostAllowed(true); //是否耗電 criteria.setPowerRequirement(Criteria.POWER_LOW); //對速度是否關(guān)注 criteria.setSpeedRequired(false); //得到最好的定位方式 String provider = locationManager.getBestProvider(criteria, true); //注冊監(jiān)聽 locationManager.requestLocationUpdates(provider, 60000, 0, getListener()); } //取消監(jiān)聽 public void unRegisterLocationChangeListener(){ locationManager.removeUpdates(getListener()); } private MyLocationListener listener; //得到定位的監(jiān)聽器 private MyLocationListener getListener(){ if(listener == null){ listener = new MyLocationListener(); } return listener; } //得到上個地理位置 public String getLastLocation(){ return sp.getString("last_location", ""); } private final class MyLocationListener implements LocationListener{ //位置的改變 public void onLocationChanged(Location location) { // TODO Auto-generated method stub double latitude = location.getLatitude();//維度 double longitude = location.getLongitude();//經(jīng)度 String last_location = "jingdu: " + longitude + ",weidu:" + latitude; Editor editor = sp.edit(); editor.putString("last_location", last_location); editor.commit(); } //gps衛(wèi)星有一個沒有找到 public void onStatusChanged(String provider, int status, Bundle extras) { // TODO Auto-generated method stub } //某個設(shè)置被打開 public void onProviderEnabled(String provider) { // TODO Auto-generated method stub } //某個設(shè)置被關(guān)閉 public void onProviderDisabled(String provider) { // TODO Auto-generated method stub } } }
更多關(guān)于Android相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Android控件用法總結(jié)》、《Android視圖View技巧總結(jié)》、《Android操作json格式數(shù)據(jù)技巧總結(jié)》、《Android開發(fā)入門與進(jìn)階教程》及《Android資源操作技巧匯總》
希望本文所述對大家Android程序設(shè)計有所幫助。
- Android打開GPS導(dǎo)航并獲取位置信息返回null解決方案
- Android GPS定位測試(附效果圖和示例)
- Android實現(xiàn)GPS定位代碼實例
- android通過gps獲取定位的位置數(shù)據(jù)和gps經(jīng)緯度
- android手機(jī)獲取gps和基站的經(jīng)緯度地址實現(xiàn)代碼
- Android中GPS定位的用法實例
- Android中實現(xiàn)GPS定位的簡單例子
- Android使用GPS獲取用戶地理位置并監(jiān)聽位置變化的方法
- Android編程獲取GPS數(shù)據(jù)的方法詳解
- python獲取android設(shè)備的GPS信息腳本分享
- Android GPS定位詳解及實例代碼
- Android 定位系統(tǒng)(GPS)開發(fā)詳解
相關(guān)文章
Android無需權(quán)限調(diào)起系統(tǒng)相機(jī)
在進(jìn)行一些小型APP的開發(fā),或者是對拍照界面沒有自定義要求時,我們可以用調(diào)起系統(tǒng)相機(jī)的方式快速完成拍照需求2023-03-03Android開發(fā)MQTT協(xié)議的模型及通信淺析
這篇文章主要W為大家介紹了Android開發(fā)MQTT協(xié)議的模型及通信淺析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-03-03Android和IOS的瀏覽器中檢測是否安裝某個客戶端的方法
這篇文章主要介紹了Android和IOS的瀏覽器中檢測是否安裝某個客戶端的方法,需要的朋友可以參考下2014-06-06Android簡單實現(xiàn)自定義彈框(PopupWindow)
本文主要介紹了Android利用PopupWindow實現(xiàn)自定義彈框的相關(guān)知識。具有很好的參考價值。下面跟著小編一起來看下吧2017-04-04Android編程實現(xiàn)將壓縮數(shù)據(jù)庫文件拷貝到安裝目錄的方法
這篇文章主要介紹了Android編程實現(xiàn)將壓縮數(shù)據(jù)庫文件拷貝到安裝目錄的方法,涉及Android處理壓縮文件的相關(guān)技巧,具有一定參考借鑒價值,需要的朋友可以參考下2015-10-10Android如何自定義View實現(xiàn)橫向的雙水波紋進(jìn)度條
最近有個需求需要實現(xiàn)自定義加載進(jìn)度條,于是深入研究了一下,這篇文章主要給大家介紹了關(guān)于Android如何自定義View實現(xiàn)橫向的雙水波紋進(jìn)度條的相關(guān)資料,需要的朋友可以參考下2021-11-11Android之解析JSON數(shù)據(jù)示例(android原生態(tài),F(xiàn)astJson,Gson)
本篇文章主要介紹了Android之解析JSON數(shù)據(jù)示例,主要使用android原生態(tài)代碼解析,F(xiàn)astJson,Gson三種方法,有興趣的可以了解一下。2017-02-02