3
的最后一天开始,我创建在构建配置是一个很好的做法一些变量来发布和调试之间单独处理这些新的项目建立这样的:的Android BuildConfig场产生字符串错误
...
buildTypes {
release {
minifyEnabled false
buildConfigField("String", "PARSE_APP_ID", "xxxxxxxxxxxxxxxxxxxxxxxxxxx")
buildConfigField("String", "PARSE_CLIENT_ID", "xxxxxxxxxxxxxxxxxxxxxxxxxx")
buildConfigField("String", "FACEBOOK_APP_ID", "999999999999999")
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
debug{
minifyEnabled false
buildConfigField("String", "PARSE_APP_ID", "xxxxxxxxxxxxxxxxxxxxxxxxxxx")
buildConfigField("String", "PARSE_CLIENT_ID", "xxxxxxxxxxxxxxxxxxxxxxxxxx")
buildConfigField("String", "FACEBOOK_APP_ID", "999999999999999")
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
...
问题是,这是不正确创建的字符串它是直接打印字符串不喜欢这个引号:
public final class BuildConfig {
.....
// Fields from build type: debug
public static final String FACEBOOK_APP_ID = 99999999999999999;
public static final String PARSE_APP_ID = xxxxxxxxxxxxxxxxxxxxxxxx;
public static final String PARSE_CLIENT_ID = xxxxxxxxxxxxxxxxxxxxxxxxx;
}
显然,这会给你编译错误,我想在这里找到在计算器如何解决这个问题,因为这导致了错误在我的构建中,没有发现任何关于此的内容。如何使用引号将Gradle正确打印字符串?
或者,在Groovy代码使用单引号('“‘xxxxxxxxxxxxxxxxx’”')。 – CommonsWare
感谢您的建议:),将编辑。 – Eefret
谢谢!有用! –