gpt4 book ai didi

android - FlutterFire Firebase 实时数据库在 Android 上显示 'Client is offline' 错误,但在 iOS 上运行良好

转载 作者:行者123 更新时间:2023-12-05 00:02:40 25 4
gpt4 key购买 nike

在 Firebase 实时数据库上运行简单查询时,它在 iOS 上的模拟器和设备上都可以正常工作。但是在Android上它不起作用。下面的代码尝试获取用户“YYYY”,无论该用户是否已存在于数据库中。安全规则不是问题,因为这适用于 iOS。代码如下:

DatabaseReference _databaseRef = FirebaseDatabase(databaseURL:'https://XXXX.europe-west1.firebasedatabase.app/').reference();

DatabaseReference _userRef = _databaseRef.child('users/YYYY');
DataSnapshot userData = await _userRef.once();
DataSnapshot userData = await _userRef.get();
来电 等待_userRef.once() ,什么都没有发生,函数调用停止并且永远不会前进。模拟器将继续提供 app_time_stats 更新流:
D/EGL_emulation: app_time_stats: avg=67.81ms min=7.44ms max=980.53ms count=19
D/EGL_emulation: app_time_stats: avg=16.53ms min=9.48ms max=19.88ms count=61
D/EGL_emulation: app_time_stats: avg=16.64ms min=14.06ms max=19.05ms count=61
D/EGL_emulation: app_time_stats: avg=11.45ms min=2.64ms max=65.59ms count=58
来电 等待_userRef.get() ,我在 Android 模拟器和物理设备上都收到以下错误消息:
I/RepoOperation: get for query /users/YYYY falling back to disk cache after error: Client is offline
E/flutter: [ERROR:flutter/lib/ui/ui_dart_state.cc(199)] Unhandled Exception: PlatformException(get-failed, Client is offline, null, null)
如果我尝试通过创建新用户与数据库进行交互,则不会收到错误消息,但实时数据库中不会出现任何数据。如果我再次尝试检索用户,它会认为用户创建成功并返回给我数据。我想这是因为它认为数据库处于脱机状态,然后它只是脱机创建数据。
此外,所有其他与 Firebase 相关的框架都适用于 iOS 和 Android。这包括例如 Cloud Firestore。
最后,过了一会儿,最奇怪的是这个 有时 突然开始在 Android 上正常工作,就像在 iOS 上一样。但是,我没有做任何我可以确定为它突然起作用的原因的特别事情。

最佳答案

请确保您已更新 google-services.json/GoogleService-Info.plist 。在您启用它后,他们有关于您的数据库的信息,例如:
安卓:

"firebase_url": "https://mydatabase.europe-west1.firebasedatabase.app",
IOS:
<key>DATABASE_URL</key>
<string>https://mydatabase.europe-west1.firebasedatabase.app</string>

关于android - FlutterFire Firebase 实时数据库在 Android 上显示 'Client is offline' 错误,但在 iOS 上运行良好,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68701858/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com