編輯:關於Android編程
講到http就必需要了解URI和URL
URI (uniform resource identifier)統一資源標志符;
URL(uniform resource location )統一資源定位符(或統一資源定位器);
可以理解成URL是URI的子集,URI是一抽象的標識符,URL可以理解成具體的標識符;只要是網絡上的資源就能找到唯一的URL。
目錄結構

效果圖<喎?/kf/ware/vc/" target="_blank" class="keylink">vcD4KPHA+PGltZyBzcmM9"/uploadfile/Collfiles/20140511/2014051109214770.jpg" alt="\">
關鍵代碼
HttpUtils.java類
package com.dzt.downloadimage.utils;
import java.io.IOException;
import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
/**
* http工具類 http可以使用HttpURLConnection或HttpClient
*
* @author Administrator
* @date 2014.05.10
* @version V1.0
*/
public class HttpUtils {
/**
* 獲取網絡圖片
*
* @param urlString
* 如:http://f.hiphotos.baidu.com/image/w%3D2048/sign=3
* b06d28fc91349547e1eef6462769358
* /d000baa1cd11728b22c9e62ccafcc3cec2fd2cd3.jpg
* @return
* @date 2014.05.10
*/
public static Bitmap getNetWorkBitmap(String urlString) {
URL imgUrl = null;
Bitmap bitmap = null;
try {
imgUrl = new URL(urlString);
// 使用HttpURLConnection打開連接
HttpURLConnection urlConn = (HttpURLConnection) imgUrl
.openConnection();
urlConn.setDoInput(true);
urlConn.connect();
// 將得到的數據轉化成InputStream
InputStream is = urlConn.getInputStream();
// 將InputStream轉換成Bitmap
bitmap = BitmapFactory.decodeStream(is);
is.close();
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
System.out.println("[getNetWorkBitmap->]MalformedURLException");
e.printStackTrace();
} catch (IOException e) {
System.out.println("[getNetWorkBitmap->]IOException");
e.printStackTrace();
}
return bitmap;
}
}
使用到網絡必需要添加權限和要有網絡,否則下載失敗
下載屬於耗時的操作,如果放在UI線程出容易出現ANR;所以Android4.0之後對網絡的操作不能放在UI線程,在這裡我把下載放在AsyncTask處理。
class downloadImageTask extends AsyncTask在onPostExecute和onProgressUpdate可以方便我們更新UI,當然也可以開一個線程處理,使用AsyncTask就更方便。{ @Override protected Boolean doInBackground(String... params) { // TODO Auto-generated method stub System.out.println("[downloadImageTask->]doInBackground " + params[0]); mDownloadImage = HttpUtils.getNetWorkBitmap(params[0]); return true; } // 下載完成回調 @Override protected void onPostExecute(Boolean result) { // TODO Auto-generated method stub image.setImageBitmap(mDownloadImage); System.out.println("result = " + result); super.onPostExecute(result); } // 更新進度回調 @Override protected void onProgressUpdate(Integer... values) { // TODO Auto-generated method stub super.onProgressUpdate(values); } }
android 引導頁 紅點 歲頁面滑動兒滑動
做了一個簡單的 引導頁 重點其實 是 引導頁下面的點隨著頁面滑動,上圖 就是 三個點 固定 一個點 滑動 算出來 每個點間隔距離 然後通過 公式算出 滑動多少
android launchmode 使用場景
菜鳥起飛記android launchmode 使用場景Activity一共有以下四種launchMode:1.standard2.singleTop3.singleTa
android學習---Gallery畫廊視圖
Gallery與Spinner有共同父類:AbsPinner,說明Gallery與Spinner都是一個列表框。它們之間的區別在於Spinner顯示的是一個垂直的列表選擇
淺談Android應用的內存優化及Handler的內存洩漏問題
一、Android內存基礎物理內存與進程內存物理內存即移動設備上的RAM,當啟動一個Android程序時,會啟動一個Dalvik VM進程,系統會給它分配固定的內存空間(