Kev*_*jan 8 java android buildconfig weather-api openweathermap
我是一位探索Android世界的新开发者.我目前正在通过Udacity教程创建Sunshine应用程序.在片段活动类中,为了从openweathermap获取数据,我必须将从我的帐户获得的API密钥添加到生成的URL的末尾.在Fragment活动中调用BuildConfig.java (单击以查看对作为String apiKey的一部分在第6行的BuildConfig.java的调用).
build.gradle文件如下:
apply plugin: 'com.android.application'
android {
compileSdkVersion 23
buildToolsVersion "23.0.1"
defaultConfig {
applicationId "com.example.android.sunshine.app"
minSdkVersion 10
targetSdkVersion 21
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
buildTypes.each {
it.buildConfigField 'String', 'OPEN_WEATHER_MAP_API_KEY', 'c882c94be45fff9d16a1cf845fc16ec5'
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:23.1.0'
}
Run Code Online (Sandbox Code Playgroud)
在buildTypes.each it.buildConfigField中使用'String','OPEN_WEATHER_MAP_API_KEY','c882c94be45fff9d16a1cf845fc16ec5'调用
public static final String OPEN_WEATHER_MAP_API_KEY = c882c94be45fff9d16a1cf845fc16ec5;
Run Code Online (Sandbox Code Playgroud)
在BuildConfig.java中生成,但我不断收到此错误: 无法解析符号(单击以查看错误消息和BuildConfig.java文件)我不明白为什么字符串OPEN_WEATHER_MAP_API_KEY自动创建为一组字母和数字而没有引用它们,但如果我编辑代码阅读:
public static final String OPEN_WEATHER_MAP_API_KEY = "c882c94be45fff9d16a1cf845fc16ec5";
Run Code Online (Sandbox Code Playgroud)
要么
public static final String OPEN_WEATHER_MAP_API_KEY = 'c882c94be45fff9d16a1cf845fc16ec5';
Run Code Online (Sandbox Code Playgroud)
BuildConfig.java会自动更改.我不确定我做错了什么,我检查了许多没有任何关于这个问题的信息的Udacity视频.如果你知道如何解决这个问题,请告诉我.
问候.
Bla*_*elt 21
更改
buildTypes.each {
it.buildConfigField 'String', 'OPEN_WEATHER_MAP_API_KEY', 'c882c94be45fff9d16a1cf845fc16ec5'
}
Run Code Online (Sandbox Code Playgroud)
同
buildTypes.each {
it.buildConfigField 'String', 'OPEN_WEATHER_MAP_API_KEY', "\"c882c94be45fff9d16a1cf845fc16ec5\""
}
Run Code Online (Sandbox Code Playgroud)
这种方式OPEN_WEATHER_MAP_API_KEY应该正确转义
| 归档时间: |
|
| 查看次数: |
6040 次 |
| 最近记录: |