安卓筆記2——安卓下的測試和資料存放區方式,安卓資料存放區
今天開始介紹安卓的另一個基礎知識,安卓下的測試和資料存放區的幾種方式。
以後後同步發出對應筆記。老規矩,用一張圖來介紹今天的內容。
圖片看不清的話可以右鍵新視窗開啟。
一.測試1,分類
黑箱測試: 是以使用者的角度,從輸入資料與輸出資料的對應關係出發進行測試的。
白盒測試: 又稱結構測試、透明盒測試、邏輯驅動測試或基於代碼的測試。
單元測試: 又稱模組測試,是開發人員編寫的一小段代碼,用於檢驗被測代碼的一個很小的、很明確的功能是否正確。
功能測試: 根據產品特性、操作描述和使用者方案,測試一個產品的特性和可操作行為以確定它們滿足設計需求。
壓力測試: 主體向被觀察者布置一定量任務和作業,藉以觀察個體完成任務的行為。
整合測試: 是單元測試的邏輯擴充。它的最簡單的形式是:兩個已經測試過的單元組合成一個組件,並且測試它們之間的介面
2.單元測試架構(Junit)
Android的代碼只能運行在手機中的Dalvik虛擬機器裡, 在PC機的JVM下會報錯異常. 寫測試案例, 通過將測試代碼上傳到Android手機或模擬器中運行.
3.Android下單元測試的流程
1,寫商務邏輯代碼
2,寫測試案例, 一個類繼承AndroidTestCase
3,寫測試方法public void testAdd() throws Exception
4.配置資訊清單檔
在mainfest節點下添加instrumention,
application節點下添加 uses-library
4,Android 下的logcat介紹
Log.v : verbose 提示 黑色
Log.d : debug 調試 藍色
Log.i : info 提醒 綠色
Log.w : warn 警告 橙色
Log.e : error 錯誤 紅色
二、 Android檔案儲存體1、儲存資料到SD卡1,擷取外置sd卡目錄:
Environment.getExternalStorageDirectory()
2,擷取掛載狀態:
Environment.getExternalStorageState()
3,擷取sd剩餘空間:
Environment.getExternalStorageDirectory().getUsableSpace();
2、儲存資料到內部存放裝置(/data/data/包名/)
應用私人檔案夾, 預設情況下, 其他應用無法訪問. 保證其資料安全
Context.getFilesDir() == /data/data/包名/files 使用者檔案目錄
Context.getCacheDir() == /data/data/包名/cache 緩衝目錄
三、Android許可權機制
MODE_PRIVATE 私人檔案
MODE_WORLD_READABLE 全域可讀檔案
MODE_WORLD_WRITEABLE 全域可寫檔案
MODE_WORLD_READABLE + MODE_WORLD_WRITEABLE 全域可讀可寫
四、安卓XML資料存取(pull解析器)1.xml資料解析
a. 建立xml解析器 XmlPullParser parser = Xml.newPullParser(); b. 初始化xml解析器, 指定解析哪個流, 以什麼編碼解析 parser.setInput(is, "utf-8"); c. 解析xml資料 while(type != XmlPullParser.END_DOCUMENT){ // 直到文檔的結束 // 讀取資料 ... type = parser.next(); // 到下一個 } d. 掃尾工作 關閉資料流
2、xml的建立 (序列化)
a. 建立Xml序列化器 XmlSerializer serializer = Xml.newSerializer(); b. 初始化xml序列化器, 設定輸出資料流, 指定編碼集 serializer.setOutput(fos, "utf-8"); c. 寫xml資料 // 文檔的開頭 serializer.startDocument("utf-8", true); serializer.startTag(null, "info"); serializer.startTag(null, "qq"); serializer.text(qq); serializer.endTag(null, "qq"); serializer.startTag(null, "pwd"); serializer.text(pwd); serializer.endTag(null, "pwd"); serializer.endTag(null, "info"); // 文檔的結束 serializer.endDocument(); d. fos.close();
五、SharedPreference
儲存位置: /data/data/包名/shared_prefs/xxx.xml
1、寫入資料
初始化SharedPreferences SharedPreferences sp = this.getSharedPreferences("config", MODE_PRIVATE); 通過SharedPreferences擷取編輯器 Editor editor = sp.edit(); 寫入資料 editor.putString("qq", qq); editor.putString("pwd", pwd); editor.putBoolean("isChecked", isChecked); 提交資料 editor.commit();
2.讀取資料
// 1. 初始化SharedPreferences SharedPreferences sp = this.getSharedPreferences("config", MODE_PRIVATE); // 2. 讀取資料, 設定資料 String qq = sp.getString("qq", ""); boolean isChecked = sp.getBoolean("isChecked", false);