200字范文,内容丰富有趣,生活中的好帮手!
200字范文 > 和风天气API接口获取天气数据 android端

和风天气API接口获取天气数据 android端

时间:2024-05-09 16:55:39

相关推荐

和风天气API接口获取天气数据 android端

1. 在和风天气官网注册账号 , 然后申请一个key , 注意类型一定要是android sdk , 这个key只能在指定包名里面的SDK使用 , 用浏览器会返回错误 !!!

2. 下载和风天气的SDK/docs/sdk/android, 然后将SDK导入到你的项目工程里面

3. 使用方法 :

获得你的账号的username和key

因为要联网 , 所以要在AndroidManifest里面声明联网权限 , 不然会出错!!!!!

package com.example.myweather;import androidx.appcompat.app.AppCompatActivity;import android.os.Bundle;import android.util.Log;import com.google.gson.Gson;import .interfacesmodule.bean.Code;import .interfacesmodule.bean.Lang;import .interfacesmodule.bean.Unit;import .interfacesmodule.bean.weather.now.Now;import .interfacesmodule.bean.weather.now.NowBase;import .interfacesmodule.view.HeConfig;import .interfacesmodule.view.HeWeather;public class MainActivity extends AppCompatActivity {private final static String TAG = "MainActivity";@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);getWeatherFromHeAPI();}private void getWeatherFromHeAPI(){/* 在这里填入上面的username和key */HeConfig.init("Your username", "Your key");HeConfig.switchToFreeServerNode();HeWeather.getWeatherNow(MainActivity.this, "CN101010100", Lang.CHINESE_SIMPLIFIED , Unit.METRIC , new HeWeather.OnResultWeatherNowBeanListener() {@Overridepublic void onError(Throwable e) {Log.i(TAG, "Weather Now onError: ", e);}@Overridepublic void onSuccess(Now dataObject) {/* 下面打印出来获得的json数据 */Log.i(TAG, " Weather Now onSuccess: " + new Gson().toJson(dataObject));//先判断返回的status是否正确,当status正确时获取数据,若status不正确,可查看status对应的Code值找到原因if ( Code.OK.getCode().equalsIgnoreCase(dataObject.getStatus()) ){//此时返回数据Log.d(TAG, "get data successful");/* 此时now就是获得的数据类 , 这是和风SDK的自定义类 */NowBase now = dataObject.getNow(); } else {//在此查看返回数据失败的原因String status = dataObject.getStatus();Code code = Code.toEnum(status);Log.d(TAG, "failed code: " + code);}}});}}

结果

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。