如果关闭并开启GPS,则位置返回null

时间:2019-03-29 12:15:00

标签: java android null location

我正在使用Android开发应用程序。我使用“位置和位置管理器”获取当前位置,但是如果我在应用执行时关闭并打开GPS,则location.getLastKnownLocation返回null。这是代码。

@Override
public void onClick(View view) {
    if(!checkGPSEnabled()){
        dialogCheckGPS();
    }else{
        Intent i =new Intent(getApplicationContext(), ZoneUser.class);
        if (ActivityCompat.checkSelfPermission(getApplicationContext(), Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(getApplicationContext(), Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
            return;
        }
        LocationManager locManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
        Location location = locManager.getLastKnownLocation(LocationManager.GPS_PROVIDER);
        if(location==null)
            Toasty.success(getApplicationContext(),"Es null").show();
        Bundle bundle = new Bundle();
        bundle.putDouble("lat",location.getLatitude());
        bundle.putDouble("lng",location.getLongitude());
        i.putExtras(bundle);
        startActivity(i);
    }
}

我使用IntentBundle来获取另一项活动的经度和纬度,但是位置返回null。

谢谢。

0 个答案:

没有答案