安卓基礎學習(第二章)

網絡訪問

>網絡圖片查看器

定義圖片路徑 
    得到的圖片的url路徑
    URL url=new URL(path);

    `(HTTPURLConnecion)url.openconnection();`//通過url打開連接

     conn.getcontenttype();獲取內容的類型

    conn.getResponseCode()獲取相應的狀態碼 200表示OK 404表示資源找不到,503 服務器內部錯誤
     通過流獲取數據

 >ANR  application not Response應用程序無響應

安卓下的消息機制

子線程不可以修改UI線程(主線程)
只有主線程菜開修改ui
如果子線程想更新uI就必須利用消息機制處理
Handler消息處理器 可以發送給主線程的消息隊列
Message Queue 消息隊列 主線程裏面的一個消息隊列
looper 輪詢器 檢查消息隊列裏面是否有消息 HandMessage()

消息機制的流程:

首先 創建handler
1.創建消息 Message.obtain可以節約內存 
        原理:如果是舊消息,就使用原來的,如果新消息,就創建一個新的message對象   
    定義msg.what可以設置不同的消息
2.發送消息
3.處理消息
    在處理消息中寫入處理消息的邏輯

總結:

1首先開啓一個子線程在其中複寫run方法
2在run方法中

        第一,獲取url對象
        第二,從url打開一個http連接 conn
        第三.獲取conn的狀態碼 根據狀態碼判斷連接是否生效
        如果狀態碼等於200 表示連接成功
3 連接成功後 進行數據的獲取
 >首先從conn獲取輸入流
 >對其進行解析(圖片/文本)
 >通過Message.obtain()創建一個消息對象
 >設置消息的種類msg.what,作用可以區分不同的消息
    >設置消息的內容
 >然後由handler發送消息 handler.sendmessage
    >關閉流 
    >在MainActivity中創建出handler對象 複寫handlemessage方法 執行消息處理邏輯
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章