我只想编写一个返回纬度和经度的方法。我有一个带有按钮和两个文本字段的活动。我正在使用的java类扩展AppCompatActivity并实现LocationListener按下按钮时,按下以下方法:
public void startGPS(View view)
{
// Here is the code to handle permissions - you should not need to edit this.
if ( Build.VERSION.SDK_INT >= 23 &&
ContextCompat.checkSelfPermission( this, android.Manifest.permission.ACCESS_FINE_LOCATION ) != PackageManager.PERMISSION_GRANTED &&
ContextCompat.checkSelfPermission( this, android.Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
ActivityCompat.requestPermissions(this, new String[] { android.Manifest.permission.ACCESS_FINE_LOCATION, android.Manifest.permission.ACCESS_COARSE_LOCATION }, TAKE_PHOTO_PERMISSION);
}
Location location = locationManager.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 5000, 0, this);
}
稍后我尝试在onLocationChanged方法中打印出我的位置,但这导致应用崩溃。我在调试器中运行它,发现该位置始终为null。
我尝试this solution,但它没有奏效。其他示例是在onResume中调用该函数,但我确实需要使用startGPS方法。
此外,错误是否恰好与我的设备有关?我在Nexus 7上运行它,当我运行谷歌地图时似乎没有任何问题。