我有以下远程config_default.xml文件
<?xml version="1.0" encoding="utf-8"?>
<defaultsMap>
<entry>
<key>LOCAL_JSON</key>
<value>[{"title":"TitleA","path":"pathA","image_url":" Some URL A"},{"title":"TitleB","path":"pathB","image_url":" Some URL B"}]</value>
</entry>
</defaultsMap>
现在,当我尝试使用 Firebase 远程配置getString()
方法访问它时,我总是得到不带引号的字符串
"[{title:TitleA,path:pathA,image_url: Some URL A},{title:TitleB,path:pathB,image_url: Some URL B}]"§
如下图所示
我在Firebase 远程配置控制台上放置了相同的字符串,一旦应用程序从那里获取它,它就会像我期望的那样将双引号放在字符串中。
我仔细检查了这一点,当我使用以下项目 gradle 文件时它似乎工作正常
apply plugin: 'com.github.ben-manes.versions'
buildscript {
repositories {
maven { url "http://dl.bintray.com/populov/maven" }
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:2.3.3'
classpath 'me.tatarka:gradle-retrolambda:3.6.1'
classpath 'com.github.ben-manes:gradle-versions-plugin:0.13.0'
classpath 'com.stanfy.spoon:spoon-gradle-plugin:1.2.1'
classpath 'com.google.gms:google-services:3.1.0'
classpath 'com.google.firebase:firebase-plugins:1.0.5'
}
}
allprojects {
repositories {
maven { url "http://dl.bintray.com/populov/maven" }
maven { url "http://oss.sonatype.org/content/repositories/snapshots" }
maven { url "https://jitpack.io" }
jcenter()
flatDir {
dirs 'libs'
}
}
}
但是当我更新 gradle 以对所有库使用新版本时,引号似乎才被忽略。我的新项目 gradle 文件
apply plugin: 'com.github.ben-manes.versions'
buildscript {
repositories {
maven { url "http://dl.bintray.com/populov/maven" }
jcenter()
google()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.0.1'
classpath 'com.github.ben-manes:gradle-versions-plugin:0.13.0'
classpath 'com.stanfy.spoon:spoon-gradle-plugin:1.2.1'
classpath 'com.google.gms:google-services:3.1.2'
classpath ('com.google.firebase:firebase-plugins:1.0.5')
}
}
allprojects {
repositories {
maven { url "http://dl.bintray.com/populov/maven" }
maven { url "http://oss.sonatype.org/content/repositories/snapshots" }
maven { url "https://jitpack.io" }
jcenter()
google()
flatDir {
dirs 'libs'
}
}
}
我不知道是哪个图书馆导致这种情况发生,但如果有人能指出这一点,那就太好了。