嗨,我是Android编程的新手,我想问一下位置API,当我使用网络提供商获取位置数据时,我在这里遇到问题,我在logcat中查看我的登录有一个变化我的位置数据12-19 23:22:08.556: DEBUG/NetworkLocationProvider(1974): onCellLocationChanged [9994,65172896]
,但我似乎无法在手机中更新它,即使requestLocationUpdate侦听器方法onLocationchanged()没有更新,你能回答这个问题吗?这是我的代码:
private void initLocation(){
locman = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
lokasi = locman.getLastKnownLocation(LocationManager.NETWORK_PROVIDER);
locman.requestLocationUpdates(LocationManager.NETWORK_PROVIDER,1 , 0,this);
lat.setText("Latitude : 0 ");
lon.setText("Longitude : 0 ");
}
@Override
public void onLocationChanged(Location location) {
lon.setText("Longitude : "+String.valueOf(lokasi.getLongitude()));
lat.setText("Latitude : "+String.valueOf(lokasi.getLatitude()));
Toast.makeText(this, lokasi + "",2000).show();
}
我可以发现任何错误,但即使logcat对此thx作出反应,我的位置仍然没有改变
答案 0 :(得分:0)
尝试使用Location.GPS_PROVIDER
代替Location.NETWORK_PROVIDER
。您还需要manifest.xml
中的以下权限:
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />