首页 > 解决方案 > GoogleApiClient.OnConnectionFailedListener 已弃用?

问题描述

我使用 GoogleApiClient.ConnectionCallbacks ,GoogleApiClient.OnConnectionFailedListener(已弃用)获取当前的纬度和经度。我们用什么来获取位置而不是 GoogleApiClient?

Java代码在这里:

   private fun createGoogleApiClient(): GoogleApiClient? {
    return GoogleApiClient.Builder(mContext).addConnectionCallbacks(this).addOnConnectionFailedListener(this).addApi(LocationServices.API).build()
}
override fun onConnected(p0: Bundle?) {

    if (!checkPermissions()) {

        requestPermissions()
    } else {
        val location = LocationServices.FusedLocationApi.requestLocationUpdates(mGoogleApiClient, mLocationRequest) { location: Location? -> onLocationChanged(location) }



        if (location == null) {
            LocationServices.FusedLocationApi.requestLocationUpdates(mGoogleApiClient, mLocationRequest) { location: Location? ->
                onLocationChanged(location)
            }
        } else {


        }
    }


}

   override fun onLocationChanged(p0: Location?) {

    if (p0 != null) {
        mCurrentLocation = p0
    }

}

标签: androidgoogle-mapsgoogle-api-client

解决方案


GoogleAPIClient 早就被弃用了。要获取用户的位置,您必须使用融合位置提供程序。通过以下链接,您将了解如何使用它:-

https://www.vogella.com/tutorials/AndroidLocationAPI/article.html


推荐阅读