【发布时间】:2014-07-22 04:44:03
【问题描述】:
我正在创建一个应用程序以从 GPS 和网络提供商处获取速度。我首先使用以下代码尝试基础知识:
LocationManager locationManager = (LocationManager) this .getSystemService(Context.LOCATION_SERVICE);
LocationListener locationListener = new LocationListener()
{
public void onLocationChanged(Location location)
{
//location.getLatitude();
speedText.setText("Current speed:" + location.getSpeed());
}
public void onStatusChanged(String provider, int status, Bundle extras)
{
}
public void onProviderEnabled(String provider)
{
}
public void onProviderDisabled(String provider)
{
}
};
locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, locationListener);
//locationManager.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 0, 0, locationListener);
具有 Manifext 权限:
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
使用上面的代码,我总是只得到 0.0 作为值。 GPS 和网络都给出相同的值。我不确定我哪里出错了?有人可以帮我解决这个问题吗?
谢谢!
【问题讨论】:
-
为什么 -1 - 我认为这是一个真正的问题......
标签: android gps location android-location