Карта Google не выбирает местоположение после обновления gradle до версии 7.0

#android-studio #google-maps #google-maps-markers

Вопрос:

[Следующие ошибки в режиме отладки][1]После того, как я обновил gradle, я не могу получить местоположение, обычно долгота в onCreate равна нулю, но как только действие перезагружено, оно начинает работать нормально.

Зависимости для Google используются :

     implementation 'com.google.android.gms:play-services-maps:17.0.1'
implementation 'com.google.android.gms:play-services-location:18.0.0'

implementation 'com.google.android.gms:play-services-maps:17.0.1'
implementation 'com.google.maps.android:android-maps-utils:0.5'
implementation 'com.google.android.libraries.places:places:2.5.0'
 

Подключение обоих маркеров

 private fun setMarkersDrawDirections(acceptRideResponseItem: AcceptRideResponseItem) {
    marker = map?.addMarker(
        acceptRideResponseItem.pickupAddress.location.lat?.let {
            acceptRideResponseItem.pickupAddress.location.lng?.let { it1 ->
                LatLng(
                    it,
                    it1
                )
            }
        }?.let {
            MarkerOptions()
                .position(
                    it
                )
                .icon(BitmapDescriptorFactory.fromResource(R.drawable.ic_location))
        }
    )
    dropOffmarker = map?.addMarker(
        acceptRideResponseItem.dropoffAddress.location.lat?.let {
            acceptRideResponseItem.dropoffAddress.location.lng?.let { it1 ->
                LatLng(
                    it,
                    it1
                )
            }
        }?.let {
            MarkerOptions()
                .position(
                    it
                )
                .icon(BitmapDescriptorFactory.fromResource(R.drawable.ic_location_destination))
        }
    )
 

Распространенный способ получения и отправки адреса

 suspend fun getAddress(lat: Double?, lng: Double?, context: Context?): Address? {
        return try {
            val geocoder = Geocoder(context, Locale.getDefault())
            if (lat != null amp;amp; lng != null) {
                withContext(Dispatchers.IO) {
                    geocoder.getFromLocation(lat, lng, 1)[0]
                }
            } else
                null
        } catch (exception: Exception) {
            return getAddress(lat,lng,context)
        }
    }
 

Map Fragment

             val latLng = map?.cameraPosition?.target
        val coef = 250 * 0.0000089;
        val newLat = latLng?.latitude?.plus(coef);
        val newLong = latLng?.longitude?.plus(coef / kotlin.math.cos(latLng.latitude * 0.018));
        val newLatLong = newLong?.let { it1 -> newLat?.let { it2 -> LatLng(it2, it1) } }
        dropOffmarker = map?.addMarker(
                newLatLong?.let { it1 ->
                    MarkerOptions()
                            .position(it1)
                            .icon(BitmapDescriptorFactory.fromResource(R.drawable.ic_location_destination)).draggable(true)
                }

        )
        map?.animateCamera(
                CameraUpdateFactory.newLatLngZoom(
                        newLatLong, DEFAULT_ZOOM.toFloat()
                )
        )