Обнаружение Nearby Connections выдает ошибку 8036 на Android10

При вызове ConnectionsClient#startDiscovery(String, EndpointDiscoveryCallback, DiscoveryOptions) на моем OnePlus7Pro (Android 10) я получаю

    com.google.android.gms.common.api.ApiException: 8036: unknown status code: 8036
        at com.google.android.gms.internal.nearby.zzby.setFailedResult(Unknown Source:4)
        at com.google.android.gms.internal.nearby.zzba.zzc(Unknown Source:18)
        at com.google.android.gms.internal.nearby.zzea.dispatchTransaction(Unknown Source:7)
        at com.google.android.gms.internal.nearby.zzb.onTransact(Unknown Source:22)
        at android.os.Binder.execTransactInternal(Binder.java:1032)
        at android.os.Binder.execTransact(Binder.java:1005)

Я не думаю, что это проблема моего кода. Код отлично работает для любой другой версии Android. То же самое происходит и с официальным образцом https://github.com/android/connectivity-samples/tree/master/NearbyConnectionsRockPaperScissors и может быть воспроизведен там путем добавления прослушивателя ошибок.

Ошибка не определена в документах https://developers.google.com/android/reference/com/google/android/gms/nearby/connection/ConnectionsStatusCodes. Реклама работает нормально.

Есть идеи, что означает ошибка и как от нее избавиться?


person dak    schedule 18.11.2019    source источник


Ответы (1)


Этот код состояния означает, что разрешение ACCESS_FINE_LOCATION не запрашивалось во время выполнения, но теперь это разрешение требуется Android 10 для обнаружения.

См. https://developers.google.com/nearby/connections/android/get-started, чтобы убедиться, что у вас есть все необходимые разрешения.

Наши документы с кодами состояния устарели, поэтому мы обновим https://developers.google.com/android/reference/com/google/android/gms/nearby/connection/ConnectionsStatusCodes, чтобы в ближайшее время убедиться, что все коды состояния добавлены.

person John Kaczor    schedule 10.12.2019