Я использую базу данных Firebase в реальном времени в течение последних 6 месяцев. Это сработало хорошо. Но теперь я обновил зависимости gradle до последней, и она перестала работать. Я ничего не изменил в коде, но он не читает и не пишет.
Мой сервис уровня gdle версии сервисов Google.
classpath 'com.google.gms:google-services:4.0.1'
Зависимости уровня базы данных моего приложения
implementation 'com.google.firebase:firebase-crash:16.0.1'
implementation 'com.google.firebase:firebase-core:16.0.1'
implementation 'com.google.firebase:firebase-database:16.0.1'
implementation 'com.google.firebase:firebase-storage:16.0.1'
implementation 'com.google.firebase:firebase-auth:16.0.2'
implementation 'com.google.firebase:firebase-messaging:17.0.0'
Я не изменил правила базы данных Firebase сейчас.
{
"rules": {
".read": true,
".write": true
}
}
Я пытался протестировать простой код записи, но он не обновился в консоли веб-просмотра Firebase.
FirebaseDatabase database4 = FirebaseDatabase.getInstance();
DatabaseReference myRef4 = database4.getReference("BLB");
myRef4.setValue("Hello, World!");
Теперь, если я добавлю addValueEventListener к указанному выше объекту базы данных myRef4, он выдаст «Hello World» в методе OnDataChanged, но никаких данных в консоли веб-просмотра не будет. Есть ли какие-либо изменения в реализации вместе с новым Firebase SDK.
Примечание: Я использовал клиент Firebase в Android Studio для их интеграции.
Журнал Firebase в режиме отладки в Xiaomi mi note 4
06-24 11:41:18.311 9774-9943/com.package.subpackage D/WebSocket: ws_14 - WebSocket error.
bgg: error while creating secure socket to wss://d***-****.firebaseio.com/.ws?ns=***-1*****&v=5
at bgd.d(:com.google.android.gms.dynamite_dynamitemodulesc@12685025@12.6.85 (040408-197041431):104)
at bge.run(:com.google.android.gms.dynamite_dynamitemodulesc@12685025@12.6.85 (040408-197041431):4)
at java.lang.Thread.run(Thread.java:760)
Caused by: java.net.ConnectException: Connection timed out
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:334)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:196)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:178)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:356)
at java.net.Socket.connect(Socket.java:586)
at com.android.org.conscrypt.OpenSSLSocketImpl.connect(OpenSSLSocketImpl.java:265)
at com.android.org.conscrypt.OpenSSLSocketImpl.connect(OpenSSLSocketImpl.java:252)
at java.net.Socket.<init>(Socket.java:427)
at java.net.Socket.<init>(Socket.java:210)
at javax.net.ssl.SSLSocket.<init>(SSLSocket.java:906)
at com.android.org.conscrypt.OpenSSLSocketImpl.<init>(OpenSSLSocketImpl.java:192)
at com.android.org.conscrypt.OpenSSLSocketFactoryImpl.createSocket(OpenSSLSocketFactoryImpl.java:68)
at bgd.d(:com.google.android.gms.dynamite_dynamitemodulesc@12685025@12.6.85 (040408-197041431):94)
at bge.run(:com.google.android.gms.dynamite_dynamitemodulesc@12685025@12.6.85 (040408-197041431):4)
at java.lang.Thread.run(Thread.java:760)
Тот же код работает на устройствах других марок.