編輯:Android開發實例
新浪天氣預報地址:
http://php.weather.sina.com.cn/xml.php?city=武漢&password=DJOYnieT8234jlsK&day=0
其中,city後的城市可用java.net.URLEncoder.encode(“武漢”,” gb2312”);也可以直接寫”武漢”,但不能用”wuhan”。Password固定
Day為0表示當天天氣,1表示第二天的天氣,2表示第三天的天氣,以此類推,最大為4。
工具類:
1、定義成員
- /** 新浪天氣網址 */
- public final String SINA_URL = "http://php.weather.sina.com.cn/xml.php";
- /** 新浪天氣XML調用密碼 */
- public final String PASSWORD = "DJOYnieT8234jlsK";
- /** 城市 */
- public String city;
- /** 白天天氣 */
- public String status1;
- /** 夜晚天氣 */
- public String status2;
- /** 白天天氣 拼音 */
- public String figure1;
- /** 夜晚天氣拼音 */
- public String figure2;
- /** 白天風向 */
- public String direction1;
- /** 夜晚風向 */
- public String direction2;
- /** 白天風級 */
- public String power1;
- /** 夜晚風級 */
- public String power2;
- /** 白天溫度 */
- public String temperature1;
- /** 夜晚溫度 */
- public String temperature2;
- /** 體感溫度 */
- public String tgd;
- /** 紫外線指數 */
- public String zwx_l;
- /** 紫外線說明 */
- public String zwx_s;
- /** 體感度指數 */
- public String ssd_l;
- /** 體感度說明 */
- public String ssd_s;
- /** 空調指數 */
- public String ktk_l;
- /** 空調說明 */
- public String ktk_s;
- /** 洗車指數 */
- public String xcz_l;
- /** 洗車說明 */
- public String xcz_s;
- /** 穿衣指數 */
- public String chy_l;
- /** 穿衣說明 */
- public String chy_shuoming;
- /** 污染物擴散條件 */
- public String pollution_l;
- /** 污染物擴散條件說明 */
- public String pollution_s;
- /** 感冒指數 */
- public String gm_l;
- /** 感冒說明 */
- public String gm_s;
- /** 運動指數 */
- public String yd_l;
- /** 運動說明 */
- public String yd_s;
2、獲取天氣數據
- /**
- * 更新天氣
- *
- * @param city
- * 城市名
- * @param day
- * 0表示當天天氣,1表示第二天的天氣,2表示第三天的天氣,以此類推,最大為4
- */
- public void UpdateWeatherInfo(String city, String day) {
- if (city.equals("")) {
- isLoaded = false;
- return;
- }
- String html = null;
- try {
- html = doGet(SINA_URL + "?city="
- + java.net.URLEncoder.encode(city, "gb2312") + "&password="
- + PASSWORD + "&day=" + day);
- Document doc = Jsoup.parse(html);
- if (doc.body().getElementsByTag("Profiles").size() == 0) {
- isLoaded = false;
- return;
- }
- if (doc.body().getElementsByTag("Profiles").get(0).getElementsByTag("Weather").size() == 0) {
- isLoaded = false;
- return;
- }
- Element element = doc.body().getElementsByTag("Profiles").get(0)
- .getElementsByTag("Weather").get(0);
- this.city = element.getElementsByTag("city").text();
- status1 = element.getElementsByTag("status1").text();
- status2 = element.getElementsByTag("status2").text();
- figure1 = element.getElementsByTag("figure1").text();
- figure2 = element.getElementsByTag("figure2").text();
- direction1 = element.getElementsByTag("direction1").text();
- direction2 = element.getElementsByTag("direction2").text();
- power1 = element.getElementsByTag("power1").text();
- power2 = element.getElementsByTag("power2").text();
- temperature1 = element.getElementsByTag("temperature1").text();
- temperature2 = element.getElementsByTag("temperature2").text();
- tgd = element.getElementsByTag("tgd").text();
- zwx_l = element.getElementsByTag("zwx_l").text();
- zwx_s = element.getElementsByTag("zwx_s").text();
- ssd_l = element.getElementsByTag("ssd_l").text();
- ssd_s = element.getElementsByTag("ssd_s").text();
- ktk_l = element.getElementsByTag("ktk_l").text();
- ktk_s = element.getElementsByTag("ktk_s").text();
- xcz_l = element.getElementsByTag("xcz_l").text();
- xcz_s = element.getElementsByTag("xcz_s").text();
- chy_l = element.getElementsByTag("chy_l").text();
- chy_shuoming = element.getElementsByTag("chy_shuoming").text();
- pollution_l = element.getElementsByTag("pollution_l").text();
- pollution_s = element.getElementsByTag("pollution_s").text();
- gm_l = element.getElementsByTag("gm_l").text();
- gm_s = element.getElementsByTag("gm_s").text();
- yd_l = element.getElementsByTag("yd_l").text();
- yd_s = element.getElementsByTag("yd_s").text();
- isLoaded = true;
- } catch (UnsupportedEncodingException e) {
- isLoaded = false;
- }
- }
3、訪問網絡
- public static final String ENCODE = "utf-8";
- public static String doGet(String url) {
- try {
- HttpGet httpGet = new HttpGet(url);
- HttpClient hc = new DefaultHttpClient();
- HttpResponse ht = hc.execute(httpGet);
- if (ht.getStatusLine().getStatusCode() == HttpStatus.SC_OK) {
- HttpEntity he = ht.getEntity();
- InputStream is = he.getContent();
- BufferedReader br = new BufferedReader(
- new InputStreamReader(is));
- String response = "";
- String readLine = null;
- while ((readLine = br.readLine()) != null) {
- response = response + readLine;
- }
- is.close();
- br.close();
- return response;
- } else {
- return "error";
- }
- } catch (Exception e) {
- return "error";
- }
- }
4、關於jsoup
http://baike.baidu.com/view/4066913.htm
本文著重講解如何使用MaskFilter創建模糊陰影以及浮雕效果。 我們知道Canvas中的各種
作為Android應用開發者,不得不面對一個尴尬的局面,就是自己辛辛苦苦開發的應用可以被別人很輕易的就反編譯出來。Google似乎也發現了這個問題,從SDK2.3
1、下載 進入官網(http://opencv.org/)下載OpenCV4Android並解壓。目錄結構如下圖所示。 其中,sdk目錄即是我們開發openc
在軟件開發過程中,程序代碼的復用,是非常重要的概念。我們總是需要使用一些現有的模塊、包、框架,或開發自己的模塊、包、框架,來實現對程序代碼的復用。比如在JavaW