Как предотвратить ошибку 8007: STATUS_RADIO_ERROR при использовании ближайших подключений Android?Android

Форум для тех, кто программирует под Android
Ответить Пред. темаСлед. тема
Anonymous
 Как предотвратить ошибку 8007: STATUS_RADIO_ERROR при использовании ближайших подключений Android?

Сообщение Anonymous »

У меня есть три устройства, которые пытаются установить связь с помощью API ближайших подключений Android. Сеть настроена с использованием стратегии P2P_Cluster, и каждое устройство выполняет как рекламу, так и обнаружение. Когда все устройства нашли друг друга и установили соединение, реклама и обнаружение отключаются. На каждом устройстве включен Bluetooth, Wi-Fi и функция определения местоположения, и все они находятся в пределах двух метров друг от друга.
Я считаю, что эта настройка иногда работает хорошо, и устройства устанавливают стабильное соединение, но часто они борются и выдают это 8007: STATUS_RADIO_ERROR при попытке запросить соединение (иногда также 8012: STATUS_ENDPOINT_IO_ERROR, но это встречается реже).
Согласно документации это происходит, когда «Произошло ошибка при попытке использовать возможности телефона Bluetooth/WiFi/NFC». Но устройства прекрасно могут подключаться к Интернету через Wi-Fi, поэтому я не думаю, что с их Wi-Fi в целом что-то не так.
Что-то не так с моей настройкой, что приводит к сбоям в работе устройств? соединиться друг с другом? Или API ближайших подключений просто случайно ненадежен?
Изменить: вот журналы, когда происходит STATUS_RADIO_ERROR:
2024-07-11 12:42:20.577 1763-9711 NearbyConnections com.google.android.gms.persistent I EndpointManager send a KEEP_ALIVE frame (seqNum:5) and sleep 5000 for endpoint QO61.
2024-07-11 12:42:23.577 1763-9454 NearbyMediums com.google.android.gms.persistent E MEDIUM_ERROR [SYSTEM][BLUETOOTH][CONNECT][ESTABLISH_CONNECTION_FAILED][UNKNOWN], service-id=com.companyname.appname.pos.debug
2024-07-11 12:42:23.577 1763-9454 NearbyMediums com.google.android.gms.persistent E Extra Sensitive/PII message : BluetoothSocketName : {IjZHTEnwg7QAAAAAAAAADVROMDkxOENSNDA0ODE:com.companyname.appname.pos.debug}, Exception : read failed, socket might closed or timeout, read ret: -1
2024-07-11 12:42:23.579 1763-9663 NearbyMediums com.google.android.gms.persistent E MEDIUM_ERROR [SYSTEM][BLUETOOTH][CONNECT][ESTABLISH_CONNECTION_FAILED][EXECUTION_EXCEPTION], service-id=com.companyname.appname.pos.debug
2024-07-11 12:42:23.581 1763-9663 Nearby com.google.android.gms.persistent W Failed attempt #3 out of 3 for ConnectToBluetoothDevice [CONTEXT service_id=49 ]
java.lang.RuntimeException: Failed to create client Bluetooth socket to {IjZHTEnwg7QAAAAAAAAADVROMDkxOENSNDA0ODE:com.companyname.appname.pos.debug}.
at bvvk.call(:com.google.android.gms@241615009@24.16.15 (040300-627785391):31)
at eeya.a(:com.google.android.gms@241615009@24.16.15 (040300-627785391):20)
at bvvl.a(:com.google.android.gms@241615009@24.16.15 (040300-627785391):84)
at bvzk.i(:com.google.android.gms@241615009@24.16.15 (040300-627785391):43)
at bvzo.o(:com.google.android.gms@241615009@24.16.15 (040300-627785391):36)
at bvzo.a(:com.google.android.gms@241615009@24.16.15 (040300-627785391):614)
at com.google.android.gms.nearby.mediums.bluetooth.BluetoothClassic.a(:com.google.android.gms@241615009@24.16.15 (040300-627785391):112)
at bsxm.c(:com.google.android.gms@241615009@24.16.15 (040300-627785391):43)
at btcq.f(:com.google.android.gms@241615009@24.16.15 (040300-627785391):76)
at btbb.a(:com.google.android.gms@241615009@24.16.15 (040300-627785391):60)
at bszi.run(:com.google.android.gms@241615009@24.16.15 (040300-627785391):648)
at bsmg.run(:com.google.android.gms@241615009@24.16.15 (040300-627785391):20)
at amhz.c(:com.google.android.gms@241615009@24.16.15 (040300-627785391):50)
at amhz.run(:com.google.android.gms@241615009@24.16.15 (040300-627785391):76)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607)
at amnn.run(:com.google.android.gms@241615009@24.16.15 (040300-627785391):8)
at java.lang.Thread.run(Thread.java:761)
2024-07-11 12:42:23.613 1763-9663 NearbyMediums com.google.android.gms.persistent W Failed to create client Bluetooth socket because we failed to register the MediumOperation.
2024-07-11 12:42:23.614 1763-9663 NearbyConnections com.google.android.gms.persistent W Failed to connect to endpoint 6GLI over medium BLUETOOTH [CONTEXT service_id=54 ]
btba: In bluetoothConnectImpl(), failed to connect to Bluetooth device 0C:25:76:31:52:76 for endpoint 6GLI
at btcq.f(:com.google.android.gms@241615009@24.16.15 (040300-627785391):178)
at btbb.a(:com.google.android.gms@241615009@24.16.15 (040300-627785391):60)
at bszi.run(:com.google.android.gms@241615009@24.16.15 (040300-627785391):648)
at bsmg.run(:com.google.android.gms@241615009@24.16.15 (040300-627785391):20)
at amhz.c(:com.google.android.gms@241615009@24.16.15 (040300-627785391):50)
at amhz.run(:com.google.android.gms@241615009@24.16.15 (040300-627785391):76)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607)
at amnn.run(:com.google.android.gms@241615009@24.16.15 (040300-627785391):8)
at java.lang.Thread.run(Thread.java:761)
2024-07-11 12:42:23.615 1763-9663 NearbyConnections com.google.android.gms.persistent W requestConnection() for client 167916638 failed to initialize the connection with endpoint 6GLI [CONTEXT service_id=54 ]
btba: Failed to connect to endpoint 6GLI
at btbb.a(:com.google.android.gms@241615009@24.16.15 (040300-627785391):128)
at bszi.run(:com.google.android.gms@241615009@24.16.15 (040300-627785391):648)
at bsmg.run(:com.google.android.gms@241615009@24.16.15 (040300-627785391):20)
at amhz.c(:com.google.android.gms@241615009@24.16.15 (040300-627785391):50)
at amhz.run(:com.google.android.gms@241615009@24.16.15 (040300-627785391):76)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607)
at amnn.run(:com.google.android.gms@241615009@24.16.15 (040300-627785391):8)
at java.lang.Thread.run(Thread.java:761)
2024-07-11 12:42:23.616 1763-9663 NearbyConnections com.google.android.gms.persistent I PcpManager got CONNECTION_RESPONSE OfflineFrame from endpoint QO61 (with status 0, response ACCEPT).
2024-07-11 12:42:23.616 1763-9663 NearbyConnections com.google.android.gms.persistent I Endpoint QO61 has accepted the connection
2024-07-11 12:42:23.616 1763-9663 NearbyConnections com.google.android.gms.persistent I Endpoint QO61 has SafeToDisconnectVersion = 4
2024-07-11 12:42:23.617 1763-9663 NearbyConnections com.google.android.gms.persistent I Waiting for the client to decide whether or not to accept the connection to endpoint QO61
2024-07-11 12:42:23.617 1763-9663 NearbyConnections com.google.android.gms.persistent I Client 167916638 has accepted the connection with endpoint QO61
2024-07-11 12:42:23.618 1763-9710 NearbyConnections com.google.android.gms.persistent I EndpointManager received a KEEP_ALIVE frame (seqNum:0) and reply a KEEP_ALIVE frame with ack from endpoint QO61 on channel BLUETOOTH.
2024-07-11 12:42:23.618 1763-9621 Nearby com.google.android.gms.persistent W Method finished running after 33124 millis. [CONTEXT service_id=49 ]
bsmd: bsmd
at java.lang.Object.wait(Native Method)
at java.lang.Thread.parkFor$(Thread.java:2127)
at sun.misc.Unsafe.park(Unsafe.java:325)
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:161)
at java.util.concurrent.FutureTask.awaitDone(FutureTask.java:421)
at java.util.concurrent.FutureTask.get(FutureTask.java:163)
at bsni.a(:com.google.android.gms@241615009@24.16.15 (040300-627785391):1)
at bsqw.call(:com.google.android.gms@241615009@24.16.15 (040300-627785391):121)
at bsrc.run(:com.google.android.gms@241615009@24.16.15 (040300-627785391):5)
at bsmg.run(:com.google.android.gms@241615009@24.16.15 (040300-627785391):20)
at amhz.c(:com.google.android.gms@241615009@24.16.15 (040300-627785391):50)
at amhz.run(:com.google.android.gms@241615009@24.16.15 (040300-627785391):97)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607)
at amnn.run(:com.google.android.gms@241615009@24.16.15 (040300-627785391):8)
at java.lang.Thread.run(Thread.java:761)
Caused by: bsmd
at bsmi.a(:com.google.android.gms@241615009@24.16.15 (040300-627785391):3)
at bsmj.a(:com.google.android.gms@241615009@24.16.15 (040300-627785391):3)
at bsnl.execute(:com.google.android.gms@241615009@24.16.15 (040300-627785391):5)
at bsru.c(:com.google.android.gms@241615009@24.16.15 (040300-627785391):8)
at bsqt.p(:com.google.android.gms@241615009@24.16.15 (040300-627785391):639)
at bvpi.hd(:com.google.android.gms@241615009@24.16.15 (040300-627785391):489)
at nni.onTransact(:com.google.android.gms@241615009@24.16.15 (040300-627785391):96)
at android.os.Binder.transact(Binder.java:499)
at azmj.onTransact(:com.google.android.gms@241615009@24.16.15 (040300-627785391):147)
at android.os.Binder.execTransact(Binder.java:565)
2024-07-11 12:42:23.621 7389-7389 NCTAG com.companyname.appname.pos.debug I req connection failure 6GLI
com.google.android.gms.common.api.ApiException: 8007: STATUS_RADIO_ERROR
at com.google.android.gms.internal.nearby.zzig.setFailedResult(com.google.android.gms:play-services-nearby@@19.0.0:1)
at com.google.android.gms.internal.nearby.zzgw.zzb(com.google.android.gms:play-services-nearby@@19.0.0:4)
at com.google.android.gms.internal.nearby.zzkj.zza(com.google.android.gms:play-services-nearby@@19.0.0:3)
at com.google.android.gms.internal.nearby.zzb.onTransact(com.google.android.gms:play-services-nearby@@19.0.0:3)
at android.os.Binder.execTransact(Binder.java:565)


Подробнее здесь: https://stackoverflow.com/questions/787 ... onnections
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Android»