如何解决Flutter Firebase 远程配置获取 JSON 作为地图
在 Firebase 远程配置中,我有一个名为 test
的有效 json 字段:
{
"title": "Hello,World!"
}
在我调用的应用程序中
jsonDecode(config.getString('test'))
并且它不起作用,因为 config.getString('test')
吐出:
{title=Hello,World!}
我在配置上尝试了所有可能的方法:
jsonDecode(config.getAll()['test'].asString());
和
jsonDecode(config.getValue('test').asString())
应用崩溃,因为它不是有效的 JSON。
解决方法
所以远程配置值很好,但在应用程序中我为 test
设置了错误的默认值并且它被获取:
const defaultValue = {
"title": "Hello,World!",}
config.setDefaults({
'test': defaultValue,});
它应该是:
config.setDefaults({
'test': json.encode(defaultValue),});
我还以为是远程配置的问题
,说这是您的 RemoteConfig
地图:
dummy
{
"foo": true,"bar": 100
}
这是检索值的方法:
var rawData = remoteConfig.getAll()['dummy'];
var map = jsonDecode(rawData?.asString() ?? yourDefaultValues);
bool foo = map['foo']; // true
int bar = map['bar']; // 100
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。