» 首頁 » 討論區 » Android程式設計 »GPS經緯度讀取

GPS經緯度讀取

發表人: 訪客
發表時間: 2012-01-10 22:42:59
public void onCreate(Bundle savedInstanceState)
{
super.onCreate();
mLocationManager = (LocationManager)getSystemService(LOCATION_SERVICE);
mLocationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, mLocationListener);

mHandler01.postDelayed(mTasks01, 1000);
}


public LocationListener mLocationListener = new LocationListener()
{
//GPS位置資訊被更新
public void onLocationChanged(Location location) {
Toast.makeText(GPXService.this,"GPS更新", Toast.LENGTH_LONG).show();
EditText1=String.valueOf(location.getLatitude());
EditText2=String.valueOf(location.getLongitude());
Toast.makeText(GPXService.this,EditText1+"+"+EditText2, Toast.LENGTH_LONG).show();
}
public void onProviderDisabled(String provider) {
}
public void onProviderEnabled(String provider) {
}
//GPS位置資訊的狀態被更新
public void onStatusChanged(String provider, int status, Bundle extras) {
/*switch (status) {
case LocationProvider.AVAILABLE:
Log.v("Status", "AVAILABLE");
break;
case LocationProvider.OUT_OF_SERVICE:
Log.v("Status", "OUT_OF_SERVICE");
break;
case LocationProvider.TEMPORARILY_UNAVAILABLE:
Log.v("Status", "TEMPORARILY_UNAVAILABLE");
break;
}*/
}
};

private Runnable mTasks01 = new Runnable()
{
/* 執行緒執行 */
public void run()
{
if (mLocationManager != null) {
mLocationManager.requestLocationUpdates(
LocationManager.GPS_PROVIDER,
0,
0,
mLocationListener);
}
mHandler01.postDelayed(mTasks01, 1000);
}
};

為什麼這樣一直跑不出來@@
是我有哪邊少打了什麼嗎?
發表人: 訪客
發表時間: 2012-01-11 22:00:06
我是要寫在service上~~
網路上找到的都不是用在service上
所以我自己改成這樣~也不知道對不對
要讓該裝置的所在位址回報使用者
發表人: 訪客
發表時間: 2012-01-12 15:27:40
mHandler01.postDelayed 這應該是不需要的
你的mLocationListener在mLocationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER,
0, 0, mLocationListener);
時已會自動去抓GPS的資訊了

試看看吧
發表人: 訪客
發表時間: 2012-01-12 15:30:02
解決了~
感謝您