0
我試圖通過GPS獲取當前用戶位置。我已經閱讀了關於這個的谷歌文檔,並嘗試了一些教程,但似乎沒有任何工作正常。這裏是我的代碼:GPS定位器不工作
public class useGPS extends Activity implements LocationListener
{
private static final String TAG = "useGPS:";
LocationManager myLocManager;
TextView locationData;
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.use_gps);
myLocManager = (LocationManager)this.getSystemService(LOCATION_SERVICE);
Location location = myLocManager.getLastKnownLocation(myLocManager.GPS_PROVIDER) ;
if(location != null)
{
Log.d(TAG,location.toString());
Toast.makeText(this, "Location changed...", Toast.LENGTH_SHORT);
this.onLocationChanged(location);
}
}
@Override
protected void onResume()
{
super.onResume();
myLocManager.requestLocationUpdates(myLocManager.GPS_PROVIDER, 3000, 0, this);
}
@Override
protected void onPause()
{
super.onPause();
myLocManager.removeUpdates(this);
}
@Override
public void onLocationChanged(Location location)
{
Log.d(TAG,"onLocationChanged with location: "+location.toString());
// Return a string representation of the latitude & longitude. Pass it to the textview and update the text
String text = "Lat: "+location.getLatitude()+"\nLong: "+location.getLongitude();
locationData = (TextView)findViewById(R.id.locationData);
locationData.setText(text);
}
@Override
public void onProviderDisabled(String provider) {
Toast.makeText(getApplicationContext(), "Provider Disabled...", Toast.LENGTH_SHORT);
}
@Override
public void onProviderEnabled(String provider)
{
Toast.makeText(getApplicationContext(), "Provider Enabled...", Toast.LENGTH_SHORT);
}
@Override
public void onStatusChanged(String provider, int status, Bundle extras) {
// TODO Auto-generated method stub
}
我知道,GPS往往不是在室內工作,所以我就去站在外面5分鐘,並沒有發揮作用。當我使用模擬器來模擬一個位置時,它返回的位置很長 - 沒有錯誤。
而且 - 我已經包括在清單文件所需的權限如下:
<uses-permission android:name = "android.permission.ACCESS_FINE_LOCATION"></uses-permission>
任何想法的,爲什麼這是不工作?
您是否使用過谷歌地圖或一些GPS測試工具,你真的從GPS獲得位置?在某些設備上可能需要很長時間。你甚至可能禁用GPS。 – zapl 2012-03-14 14:23:05
定義真的很長 - 我一直在盯着設備15分鐘,除了屏幕頂部的衛星圖像以外,沒有做任何動畫 - 你知道整個衛星發送信號的東西... – Katana24 2012-03-14 14:25:36
GPS沒有直到GPS圖標停止閃爍。取決於您的位置/衛星可視性/援助數據的可用性等長= 30分鐘左右。 – zapl 2012-03-14 14:30:01