Android SDK配置
这篇文档将介绍如何配置和风天气开发服务中的Android SDK。
隐私声明:和风天气Android SDK不需要电话、位置、设备唯一标识符等任何特殊权限,我们不会也无法通过本SDK收集用户隐私信息。
适配版本
Android 8.0+, minSDK 26
第1步: 创建项目和凭据
请确保已经创建了项目和凭据,并已了解如何使用JWT身份认证。
第2步: 安装SDK
下载最新版本:QWeather Android SDK 5.0.1 (MD5:ab2c14983ab8a59c9ab4eed014faa952
)
将JAR文件复制到app/libs/
目录:
YOUR-PROJECT/
├── app/
│ ├── libs/
│ │ └── QWeather_Public_Android_V5.0.1.jar
│ ├── src/
│ └── build.gradle
修改Gradle配置app/build.gradle
文件:
dependencies {
// 添加以下配置
implementation files('libs/QWeather_Public_Android_V5.0.1.jar')
// 或者批量添加所有JAR
implementation fileTree(dir: 'libs', include: ['*.jar'])
}
引用库
implementation libs.gson
implementation libs.okhttp
请在混淆文件proguard-rules.pro
中加入如下代码
-keep public class com.qweather.sdk.QWeather {
public *;
}
-keep public class com.qweather.sdk.basic.**{ *; }
-keepclassmembers class com.qweather.sdk.basic** { *; }
-keep public class com.qweather.sdk.parameter.**{ *; }
-keepclassmembers class com.qweather.sdk.parameter** { *; }
-keep public class com.qweather.sdk.response.**{ *; }
-keepclassmembers class com.qweather.sdk.response** { *; }
-keep interface com.qweather.sdk.Callback{ *; }
-keep interface com.qweather.sdk.TokenGenerator{ *; }
第3步: 添加API Host和Token
提示:Android SDK仅支持JWT身份认证。
使用 SDK 时,需提前进行账户初始化(全局执行一次即可)
将代码中的YOUR_HOST
和YOUR_TOKEN
替换为您的API Host和JWT身份认证:
QWeather.getInstance(MainActivity.this, "{YOUR_HOST}") // 初始化服务地址
.setTokenGenerator(new TokenGenerator() { // 设置令牌生成器
@Override
public String generator() {
// 生产环境中应在此处实现令牌刷新逻辑,而非硬编码
return "{YOUR_TOKEN}"; // 返回用于 API 认证的 JWT 令牌
}
});
示例代码
请求北京实时天气。
WeatherParameter parameter = new WeatherParameter("101010100")
.lang(Lang.ZH_HANS)
.unit(Unit.METRIC);
QWeather.instance.weatherNow(parameter, new Callback<WeatherNowResponse>() {
@Override
public void onSuccess(WeatherNowResponse response) {
Log.i(TAG, response.toString());
}
@Override
public void onFailure(ErrorResponse errorResponse) {
Log.i(TAG,errorResponse.toString());
}
@Override
public void onException(Throwable e) {
e.printStackTrace();
}
});