我在Windows 10上使用Firebase C ++ SDK 6.15.1。我正在尝试使用SetValue将一些数据写入实时数据库。但是,由SetValue返回的将来永远不会完成,并且不会写入数据。 奇怪的是,这是断断续续的-它曾经可以可靠地工作,但是在切换了我的工作地点并将其从6.15.0升级到6.15.1后,它有时才起作用。查看Firebase控制台,我发现这与权限无关,因为未收到任何请求。 这是我的代码
database->set_log_level(firebase::kLogLevelDebug);
firebase::database::DatabaseReference myRef =
database->GetReference().Child("uids");
std::string key = myRef.PushChild().key();
auto future = myRef.Child(key).Child("uid").SetValue("waiting");
future.OnCompletion([](const firebase::Future< void >& completed_future,
void* user_data) {
if (completed_future.error() == 0) {
LogMessage("FUTURE COMPLETED");
}
else {
LogMessage("Error %d: %s",
completed_future.error(),
completed_future.error_message());
}
}, nullptr);
ProcessEvents(5000);
此代码不会打印任何内容,也不会写入任何值,这使得调试变得很困难。 最初我以为这可能是我的互联网连接,但看来未来根本无法完成。