2011-12-26 56 views

回答

2

你應該使用這種類型的代碼: -

/* Use the LocationManager class to obtain GPS locations */ 

     LocationManager mlocManager = (LocationManager)getSystemService(Context.LOCATION_SERVICE); 
     Location location = mlocManager.getLastKnownLocation(LocationManager.NETWORK_PROVIDER); 
     if(location!=null) 
     { 

      myLongitude = location.getLongitude(); 
      myLatitude= location.getLatitude(); 
     } 
     else 
     { 

      myLongitude =0; 
      myLatitude= 0; 
     } 



     LocationListener mlocListener; 
     mlocListener = new MyLocationListener(); 

     mlocManager.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 0, 0, mlocListener); 
     Log.v("Checkin_Inspect_activity","cordintes of this place = "+myLatitude+" "+myLongitude); 

和設計你的類是這樣的: -

/* Class My Location Listener */ 
    public class MyLocationListener implements LocationListener 

{ 


@Override 

public void onLocationChanged(Location loc) 

{ 


    myLatitude= loc.getLatitude(); 
    myLongitude=loc.getLongitude(); 
    } 


@Override 

public void onProviderDisabled(String provider) 

{ 



// Toast.makeText(getApplicationContext(),"Gps Disabled", Toast.LENGTH_SHORT).show(); 

} 


@Override 

public void onProviderEnabled(String provider) 

{ 



// Toast.makeText(getApplicationContext(),"Gps Enabled",Toast.LENGTH_SHORT).show(); 

} 


@Override 

public void onStatusChanged(String provider, int status, Bundle extras) 

{ 


} 

} 
0

可以用LocationListener的類,這將給位置的細節時,地點是更新

這裏編輯LocationListener的

LocationListener locationListener = new MyLocationListener(); 
LocationManager lm = (LocationManager) getSystemService(Context.LOCATION_SERVICE); 
lm.requestLocationUpdates(LocationManager.GPS_PROVIDER, 35000, 10, this.locationListener); 

的簡單片段

可以檢查供應商爲這樣的gps定位

if (manager.isProviderEnabled(LocationManager.GPS_PROVIDER)) { 
    // do something 
}else{ 
    // do another thing 
} 

退房本教程鏈接

http://blog.doityourselfandroid.com/2010/12/25/understanding-locationlistener-android/

相關問題