我試圖獲取當前位置Android中使用的LocationManager和LocationListener的作爲http://developer.android.com/guide/topics/location/obtaining-user-location.html的LocationManager requestLocationUpdates不起作用
然而,LocationListener的的onLocationChanged方法不會被調用描述。我使用了一個真正的android手機/也使用了仿真器和仿真位置,使用telnet進行了更改,如上面的鏈接所述。
這裏是我的代碼:
public class MyActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
/* Use the LocationManager class to obtain GPS locations */
LocationManager mlocManager = (LocationManager)
getSystemService(Context.LOCATION_SERVICE);
LocationListener mlocListener = new CustomLocationListener(
getApplicationContext());
// Location Providers
String locationProvider = LocationManager.NETWORK_PROVIDER;
// LocationProvider locationProvider = LocationManager.GPS_PROVIDER;
mlocManager
.requestLocationUpdates(locationProvider, 0, 0, mlocListener);
}
}
和我LocationListener的:
public class CustomLocationListener implements LocationListener {
private Context m_context;
public CustomLocationListener(Context context) {
m_context = context;
}
@Override
public void onLocationChanged(Location location) {
double latitude = location.getLatitude();
double longitude = location.getLongitude();
String Text = latitude + " " + longitude;
Toast.makeText(m_context, Text, Toast.LENGTH_SHORT).show();
}
@Override
public void onProviderDisabled(String provider) {
// TODO
}
@Override
public void onProviderEnabled(String provider) {
// TODO
}
@Override
public void onStatusChanged(String arg0, int arg1, Bundle arg2) {}
}
所以onLocationChanged永遠不會被調用。 任何人都可以看到問題? 非常感謝
您是否啓用了手機上的GPS服務,並確認您應該擁有一個位置? (等待幾分鐘不是一個確認,如果你在一個很差的服務區30分鐘可能是不夠的...) – Sam
得問:你有清單中指定的位置權限? – dymmeh
@dophie是的,我已經在清單中添加了許可 –