學習筆記

一、[Android開發視頻教學]01_18_文件下載,這一集的示例代碼有問題。html

利用http協議下載任意內容的文件時,由於網絡、服務器等等不可知的因素,會形成每次從輸入流獲取的數據量不肯定。因此output.write(buffer)方法不能用了。視頻中演示時下載的是本機tomcat服務器上的文件,文件大小沒有出現問題。還有在http request的head中設置取消壓縮方式可能也是因素之一。java

http://www.myext.cn/android/a_819.htmlandroid

http://m.blog.csdn.net/blog/anyfive/45024221數組

       file = createSDFile(path + "/" + fileName);
            output = new FileOutputStream(file);
            byte[] buffer = new byte[4 * 1024];
            int count = 0;
            while((count = input.read(buffer))!= -1){
                /*
                 * output.write(buffer)方法會形成下載的文件大小異常,
                 * 由於不是每次都剛恰好讀滿4K的數據到字節數組buffer中
                 * 因此要用count存儲input.read(buffer)方法返回的實際讀取字節數,而後使用
* output.write(buffer, 0, count) 方法來向文件寫入剛恰好count個字節的數據
*/ output.write(buffer, 0, count); } output.flush();

 二、[Android開發視頻教學]01_22_廣播機制(二)tomcat

 這一集裏面講了BroadcastReceiver的兩種註冊方法,經過java代碼調用BroadcastActivity3.this.registerReceiver(receiver, filter)或者AndroidManifest.xml配置。視頻中實現了一個接收短信時處理相關Action的廣播接收器示例,要注意的是,Action應該設定爲「android.provider.Telephony.SMS_RECEIVED」服務器

相關文章
相關標籤/搜索