【问题标题】:Android FusedLocationProviderClient getLastLocation always returning null for the first timeAndroid FusedLocationProviderClient getLastLocation 总是第一次返回 null
【发布时间】:2018-12-24 11:55:09
【问题描述】:

我需要当前位置,所以我使用了 FusedLocationProviderClient getLastLocation()。但它总是第一次为空。我该如何处理?这是代码

    private FusedLocationProviderClient mFusedLocationClient;
        mFusedLocationClient = LocationServices.getFusedLocationProviderClient(getApplicationContext());
if (ActivityCompat.checkSelfPermission(mContext, Manifest.permission.ACCESS_FINE_LOCATION) == PackageManager.PERMISSION_GRANTED) {
            mFusedLocationClient.getLastLocation().addOnSuccessListener(location -> {
                if (location != null) {
                    String latitude = String.valueOf(location.getLatitude());
                    String longitude = String.valueOf(location.getLongitude());
                    sendAddress(addressId,mTicketId,latitude,longitude,mCurrentTime);
                }
            });
        }

【问题讨论】:

    标签: android fusedlocationproviderclient


    【解决方案1】:

    但第一次总是为空。

    这种情况并不少见,特别是如果设备上没有其他东西恰好在积极尝试确定位置。

    请记住,您可能永远无法获取位置:用户可能禁用了位置服务,或者用户可能处于设备无法获取位置修复的环境中。

    我该如何处理?

    处理您可能无法获得位置的可能性。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-07-27
      • 2012-05-02
      • 2015-08-15
      • 1970-01-01
      • 2014-12-31
      • 2018-01-16
      相关资源
      最近更新 更多