您好,登錄后才能下訂單哦!
這篇文章主要介紹了聚合數據Android SDK實現天氣查詢交的方法,具有一定借鑒價值,需要的朋友可以參考下。如下資料是關于聚合數據Android SDK實現天氣查詢的詳細步驟內容。
1.到libs聚合SDK是聚合數據平臺,為移動開發者提供的免費數據接口.使用前請先到聚合平臺(http://www.juhe.cn/)注冊,申請相關數據.
2.下載聚合數據SDK,將開發包里的juhe_sdk_v_1_1.jar拷貝到libs根目錄下,將libJuheSDK_v_1_0.so拷貝到libs\armeabi目錄下,如圖:
3.根據接口說明文檔找到以下方法:
Java代碼
/**
* 根據城市名查詢天氣
*
* @param cityname
* 城市名,如:"蘇州"
* @param format
* 未來6天預報(future)兩種返回格式,1或2,默認1
*
* @param jsonCallBack
*
*/
public void getByCitys(String cityname, int format, JsonCallBack jsonCallBack)
/**
* 天氣種類及標識列表
*
* @param jsonCallBack
*
*/
public void getUni(JsonCallBack jsonCallBack)
/**
*
* 根據IP查詢天氣
*
* @param ip
* ip地址,如:58.215.185.154
* @param format
* 未來6天預報(future)兩種返回格式,1或2,默認1
* @param jsonCallBack
*
*/
public void getByIP(String ip, int format, JsonCallBack jsonCallBack)
/**
*
* 根據GPS坐標查詢天氣
*
*
* @param lon
* 經度
* @param lat
* 緯度
* @param format
* 未來6天預報(future)兩種返回格式,1或2,默認1
* @param jsonCallBack
*
*/
public void getByGEO(double lat, double lon, int format, JsonCallBack jsonCallBack)
/**
* 城市天氣三小時預報
*
* @param cityname
* @param jsonCallBack
*
*/
public void getForecast3h(String cityname, JsonCallBack jsonCallBack)
/**
* 支持城市列表
*
* @param jsonCallBack
*/
public void getCities(JsonCallBack jsonCallBack)
4.程序中調用方法
首先,在AnroidManifest.xml中添加權限
Html代碼
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.READ_CONTACTS" />
在application標簽內部加入你申請的openid
Html代碼
<meta-data
android:name="com.thinkland.juheapi.openid"
android:value="申請的openid" />
在使用前需要調用一次初始化方法
Java代碼
CommonFun.initialize(getApplicationContext());
導入相關包
Java代碼
import com.thinkland.juheapi.common.CommonFun;
import com.thinkland.juheapi.common.JsonCallBack;
import com.thinkland.juheapi.data.weather.WeatherData;
調用方法
Java代碼
//根據城市名/id查詢天氣
WeatherData weatherData = WeatherData.getInstance();
weatherData.getByCitys("蘇州", 1, new JsonCallBack() {
@Override
public void jsonLoaded(JSONObject arg0) {
// TODO Auto-generated method stub
try {
int code = arg0.getInt("resultcode");
if (code == 200) {
JSONObject resultJson = arg0.getJSONObject("result");
}
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
});
5.返回字段及相關錯誤碼
根據城市名/id查詢天氣
返回字段:(注意:有些字段對應的屬性值為空,使用時需判斷)
返回字段:
返回字段
返回字段同juhe.apis.weather.index(根據城市名/id查詢天氣)。
public void getByGEO(doublelat,doublelon,JsonCallBack jsonCallBack)
返回字段同juhe.apis.weather.index(根據城市名/id查詢天氣)。
public voidgetForecast3h(String cityname, JsonCallBackjsonCallBack)
返回字段:
publicvoidgetCities(JsonCallBackjsonCallBack)
返回字段:
看完上訴內容,你們掌握聚合數據Android SDK實現天氣查詢的方法了嗎?如果想了解更多相關內容,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。