A. android如何獲取地理位置
三種方式進行定位,獲取用戶位置,分別是基於基站定位, 網路定位,GPS定位。
1.基站定位(passive):這是基於網路基站進行定位的,定位的精確度在幾十米到幾千米不等,在城市中基站覆蓋率比較高,推薦使用基站定位,如果是在郊區,基站相距較遠,基站的覆蓋沒有城裡好,定位的誤差比較大。如果在郊區不推薦使用基站定位。
2.網路定位:wifi定位,網路定位
3.GPS定位:與衛星進行通信。手機中嵌入了GPS模塊(精簡版的A-GPS),通過A-GPS搜索衛星, 獲取經緯度。使用GPS的弊端是:必須站在空曠的地方,頭頂對著天空,如果雲層厚了,也會受到一定的影響。精確度:10-50米
擴展知識:
使用Android是定位必備的許可權:
< uses-permission android:name= " android.permission.ACCESS_FINE_LOCATION " /> //精確定位
<uses-permission android:name= "android.permission.ACCESS_MOCK_LOCATION" /> //模擬器
<uses-permission android:name= "android.permission.ACCESS_COARSE_LOCATION" /> //粗糙定位
//獲取定位管理對象
LocationManager lm=(LocationManager)getSystemService(LOCATION_SERVICE);
String[] names=lm.getAllProviders();//獲取所有的位置提供者,一般三種
Criteria criteria=new Criteria();//查詢條件,如果設置了海拔,則定位方式只能是GPS;
criteria.setCostAllowed(true);//是否產生開銷,比如流量費
String provider=lm.getBaseProvider(criteria,true)//獲取最好的位置提供者,第二個參數為true,表示只獲取那些被打開的位置提供者
lm.requestLocationUpdates(provier,0,0,new LocationListener(){});//獲取位置。第二個參數表示每隔多少時間返回一次數據,第三個參數表示被定位的物體移動每次多少米返回一次數據。
private class MyLocationListener implements LocationListener {
@Override
public void onStatusChanged(String provider, int status, Bundle extras) {
}
@Override
public void onProviderEnabled(String provider) {
}
@Override
@Override
public void onLocationChanged(Location location) {
System. out.println( "服務中位置監聽發送了變化了" );
float accuracy = location.getAccuracy(); // 精確度
double altitude = location.getAltitude(); // 海拔
double latitude = location.getLatitude(); // 緯度
double longitude = location.getLongitude(); // 經度
String locationInfo = "jing:" + longitude + ",wei:" + latitude + ",haiba:" + altitude + ",jingque:" + accuracy;
Editor edit = sp.edit();
edit.putString( "location", locationInfo);
edit.commit();
}
} public void onProviderDisabled(String provider) {
}
B. 請問android如何修改系統gps信息,也就是我修改gps定位後,其他軟體通過gps獲取地理位置
我之前做過android網路地圖相關的開發 無論是gps還是中國的北斗定位系統 都是通過手機硬體和定位衛星進行時時連接 數據也是時時傳輸 不存在數據緩存(客戶端有可能有數據緩存) 如果實在想修改定位 可以通過eclipse(專門開發android的軟體)啟動一個android模擬器 在模擬器上安裝微信或者你需要定位的軟體 在裡面模擬經度緯度(因為模擬器沒有gps硬體
) 點擊send相當於獲取了你設置的位置信息
C. Android 怎樣穩定的獲取原生GPS數據
定位了就有經緯度,沒定位,則一直閃的;
一般是4個星的時候 會定位。
所以可以根據是否獲取有效的經緯度信息來判斷是否定位。
衛星的個數 sv_status也是可以通過API獲取的。LOCATION類
給你一段我的代碼,看看就知道了。
locationManager.addGpsStatusListener(statusListener);//偵聽GPS狀態
private GpsStatus.Listener statusListener = new GpsStatus.Listener()
{
public void onGpsStatusChanged(int event)
{
// TODO Auto-generated method stub
GpsStatus gpsStatus= locationManager.getGpsStatus(null);
Log.v(TAG,"GPS status listener ");
//Utils.DisplayToastShort(GPSService.this, "GPS status listener ");
switch(event)
{
case GpsStatus.GPS_EVENT_FIRST_FIX:{
//第一次定位時間UTC gps可用
//Log.v(TAG,"GPS is usable");
int i=gpsStatus.getTimeToFirstFix();
Utils.DisplayToastShort(GPSService.this, "GPS 第一次可用 "+i);
Utils.setGPSStatus(Utils.GPS_STATUS.START);
break;
}
case GpsStatus.GPS_EVENT_SATELLITE_STATUS:{//周期的報告衛星狀態
//得到所有收到的衛星的信息,包括 衛星的高度角、方位角、信噪比、和偽隨機號(及衛星編號)
Iterable<GpsSatellite> allSatellites;
allSatellites = gpsStatus.getSatellites();
Iterator<GpsSatellite>iterator = allSatellites.iterator();
int numOfSatellites = 0;
int maxSatellites=gpsStatus.getMaxSatellites();
while(iterator.hasNext() && numOfSatellites<maxSatellites){
numOfSatellites++;
iterator.next();
}
Log.v(TAG,"GPS is **unusable** "+ numOfSatellites +" "+ maxSatellites);
if( numOfSatellites < 3){
// Utils.DisplayToastShort(GPSService.this, "***衛星少於3顆***");
Utils.setGPSStatus(Utils.GPS_STATUS.STOP);
} else if(numOfSatellites > 7){
Utils.setGPSStatus(Utils.GPS_STATUS.START);
}
break;
}
case GpsStatus.GPS_EVENT_STARTED:{
//Utils.DisplayToastShort(GPSService.this, "GPS start Event");
break;
}
case GpsStatus.GPS_EVENT_STOPPED:{
//Utils.DisplayToastShort(GPSService.this, "GPS **stop*** Event");
Utils.setGPSStatus(Utils.GPS_STATUS.STOP);
break;
}
default :
break;
}
}
};
D. 如何在Android7.1上打開GPS定位
如何在Android7.1上打開GPS定位?
如何在Android7.1上打開GPS定位?
GPS定位是現代手機中許多應用程序所需的基本功能之一。在Android7.1版本中,打開GPS定位的步驟與先前版本的步驟略有不同。在這篇文章中,我們將簡要介紹如何在Android7.1上打開GPS定位。
步驟1:打開「設置」應用程序
在Android設備的主屏幕上,點擊「設置」應用程序的圖標。這個應用程序的圖標通常具有一個齒輪的形狀。
步驟2:打開「位置」設置
在「設置」應用程序中,向下滾動,找到「位置」選項並點擊。
步驟3:使用GPS定位
在「位置」設置屏幕上,您將看到一個開關按鈕,上面寫著「使用GPS定位」。如果該開關按鈕沒有顯示綠色,您需要將其打開才能允許應用程序使用您的GPS定位。
步驟4:允許所有應用程序使用GPS定位
如果您希望允許所有應用程序訪問您的GPS定位,請確保「位置」設置屏幕上的「高級」選項被啟用。此時,您將看到一個名為「允許所有應用程序訪問此設備上的位置信息」的選項。您必須將此選項打開,以允許任何應用程序使用您的GPS位置。
總的來說,打開GPS定位功能是非常容易的。只需要轉到設備的設置應用程序中的「位置」屏幕,打開「使用GPS定位」按鈕即可。如果您希望允許所有應用程序使用您的GPS位置,請確保「高級」選項中的「允許所有應用程序訪問此設備上的位置信息」選項被啟用。當您完成這些步驟並允許應用程序訪問您的GPS定位時,您就可以開始使用那些需要這個功能的應用程序了。
E. 怎樣在android手機中開啟GPS功能
1、解鎖手機進入主界面,選擇“設置”
2、進入設置界面,選擇“定位服務”
3、進入定位設置界面後,將“定位服務”右側滑塊開啟。
4、開啟後即可打開GPS功能,在下方可以選擇不同的“定位模式”
5、在主界面下拉屏幕呼出菜單欄,點擊“位置信息”可以快速開啟GPS功能。
F. android gps是怎麼定位的
開發中對於地圖及地理位置的定位是我們經常要用地,地圖功能的使用使得我們應用功能更加完善,下面 www.androidkaifa.com 總結了一下網路中現有對於介紹android定位的幾種方式,希望對大家有幫助:
android 定位一般有四種方法,這四種方式分別是:GPS定位,WIFI定準,基站定位,AGPS定位,
(1) Android GPS:需要GPS硬體支持,直接和衛星交互來獲取當前經緯度,這種方式需要手機支持GPS模塊(現在大部分的智能機應該都有了)。通過GPS方式准確度是最高的,但是它的缺點也非常明顯:1,比較耗電;2,絕大部分用戶默認不開啟GPS模塊;3,從GPS模塊啟動到獲取第一次定位數據,可能需要比較長的時間;4,室內幾乎無法使用。這其中,缺點2,3都是比較致命的。需要指出的是,GPS走的是衛星通信的通道,在沒有網路連接的情況下也能用。要實用Adnroid平台的GPS設備,首先需要添加上許可權,所以需要添加如下許可權:
uses-permission android:name= android.permission.ACCESS_FINE_LOCATION /uses-permission