freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

[計(jì)算機(jī)軟件及應(yīng)用]android應(yīng)用與游戲開發(fā)第8章數(shù)據(jù)存儲與訪問(已修改)

2024-12-20 02:20 本頁面
 

【正文】 第 8章 數(shù)據(jù)存儲和訪問 本章學(xué)習(xí)目標(biāo): ? 掌握 SharedPreferences的使用方法 ? 掌握各種文件存儲的區(qū)別與適用情況 ? 了解 SQLite數(shù)據(jù)庫的特點(diǎn)和體系結(jié)構(gòu) ? 掌握 SQLite數(shù)據(jù)庫的建立和操作方法 ? 理解 ContentProvider的用途和原理 ? 掌握 ContentProvider的創(chuàng)建與使用方法 簡單存儲 ? SharedPreferences ? SharedPreferences是一種輕量級的數(shù)據(jù)保存方式 ? 通過 SharedPreferences可以將 NVP( Name/Value Pair,名稱 /值對)保存在 Android的文件系統(tǒng)中,而且SharedPreferences完全屏蔽的對文件系統(tǒng)的操作過程 ? 開發(fā)人員僅是通過調(diào)用 SharedPreferences對 NVP進(jìn)行保存和讀取 簡單存儲 ? SharedPreferences ? SharedPreferences不僅能夠保存數(shù)據(jù),還能夠?qū)崿F(xiàn)不同應(yīng)用程序間的數(shù)據(jù)共享 ? SharedPreferences支持三種訪問模式 ? 私有( MODE_PRIVATE):僅有創(chuàng)建程序有權(quán)限對其進(jìn)行讀取或?qū)懭? ? 全局讀( MODE_WORLD_READABLE):不僅創(chuàng)建程序可以對其進(jìn)行讀取或?qū)懭?,其他?yīng)用程序也讀取操作的權(quán)限,但沒有寫入操作的權(quán)限 ? 全局寫( MODE_WORLD_WRITEABLE):創(chuàng)建程序和其他程序都可以對其進(jìn)行寫入操作,但沒有讀取的權(quán)限 簡單存儲 ? SharedPreferences ? 在使用 SharedPreferences前,先定義SharedPreferences的訪問模式 ? 下面的代碼將訪問模式定義為私有模式 ? 有的時候需要將 SharedPreferences的訪問模式設(shè)定為即可以全局讀,也可以全局寫,這樣就需要將兩種模式寫成下面的方式 public static int MODE = MODE_PRIVATE。 public static int MODE = + 。 簡單存儲 ? SharedPreferences ? 定義 SharedPreferences的名稱,這個名稱與在 Android文件系統(tǒng)中保存的文件同名。因此,只要具有相同的SharedPreferences名稱的 NVP內(nèi)容,都會保存在同一個文件中 ? 為了可以使用 SharedPreferences,需要將訪問模式和SharedPreferences名稱作為參數(shù),傳遞到getSharedPreferences()函數(shù),并獲取到SharedPreferences對象 public static final String PREFERENCE_NAME = SaveSetting。 SharedPreferences sharedPreferences = getSharedPreferences(PREFERENCE_NAME, MODE)。 簡單存儲 ? SharedPreferences ? 在獲取到 SharedPreferences對象后,則可以通過 SharedPreferences進(jìn)行修改,最后調(diào)用 mit()函數(shù)保存修改內(nèi)容 ? SharedPreferences廣泛支持各種基本數(shù)據(jù)類型,包括整型、布爾型、浮點(diǎn)型和長型等等 1. editor = ()。 2. (Name, Tom)。 3. (Age, 20)。 4. (Height, )。 5. ()。 簡單存儲 ? SharedPreferences ? 如果需要從已經(jīng)保存的 SharedPreferences中讀取數(shù)據(jù),同樣是調(diào)用 getSharedPreferences()函數(shù),并在函數(shù)的第 1個參數(shù)中指明需要訪問的 SharedPreferences名稱,最后通過 getType()函數(shù)獲取保存在SharedPreferences中的 NVP ? getType()函數(shù)的第 1個參數(shù)是 NVP的名稱 ? 第 2個參數(shù)是在無法獲取到數(shù)值的時候使用的缺省值 1. SharedPreferences sharedPreferences = getSharedPreferences(PREFERENCE_NAME, MODE)。 2. String name = (Name,Default Name)。 3. int age = (Age, 20)。 4. float height = (Height,)。 簡單存儲 ? 示例 ? 通過 SimplePreferenceDemo示例介紹具體說明SharedPreferences的文件保存位置和保存格式 ? 下圖是 SimplePreferenceDemo示例的用戶界面 ? 用戶在界面上的輸入的信息,將通過 SharedPreferences在 Activity關(guān)閉時進(jìn)行保存。當(dāng)應(yīng)用程序重新開啟時,保存在 SharedPreferences的信息將被讀取出來,并重新呈現(xiàn)在用戶界面上 簡單存儲 ? 示例 ? SimplePreferenceDemo示例運(yùn)行后,通過 FileExplorer查看 /data/data下的數(shù)據(jù), Android為每個應(yīng)用程序建立了與包同名的目錄,用來保存應(yīng)用程序產(chǎn)生的數(shù)據(jù),這些數(shù)據(jù)包括文件、 SharedPreferences文件和數(shù)據(jù)庫等 ? SharedPreferences文件就保存在 /data/data/package name/shared_prefs目錄下 簡單存儲 ? 示例 ? 在本示例中, shared_prefs目錄下生成了一個名為 ? 這個文件就是保存 SharedPreferences的文件,文件大小為 170字節(jié),在 Linux下的權(quán)限為“ rwrwrw” 簡單存儲 ? 示例 ? 在 Linux系統(tǒng)中,文件權(quán)限分別描述了創(chuàng)建者、同組用戶和其他用戶對文件的操作限制。 x表示可執(zhí)行, r表示可讀, w表示可寫, d表示目錄, 表示普通文件。因此,“ rwrwrw” 表示 、同組用戶和其他用戶進(jìn)行讀取和寫入操作,但不可執(zhí)行 ? 產(chǎn)生這樣的文件權(quán)限與程序人員設(shè)定的SharedPreferences的訪問模式有關(guān),“ rwrwrw” 的權(quán)限是“全局讀 +全局寫”的結(jié)果 ? 如果將 SharedPreferences的訪問模式設(shè)置為私有,則文件權(quán)限將成為“ rwrw ” ,表示僅有創(chuàng)建者和同組用戶具有讀寫文件的權(quán)限 簡單存儲 ? 示例 ? XML格式保存的信息,內(nèi)容如圖如下 1. ?xml version=39。39。 encoding=39。utf839。 standalone=39。yes39。 ? 2. map 3. float name=Height value= / 4. string name=NameTom/string 5. int name=Age value=20 / 6. /map 簡單存儲 ? 示例 ? SimplePreferenceDemo示例在 onStart()函數(shù)中調(diào)用loadSharedPreferences()函數(shù),讀取保存在SharedPreferences中的姓名、年齡和身高信息,并顯示在用戶界面上 ? 當(dāng) Activity關(guān)閉時,在 onStop()函數(shù)調(diào)用saveSharedPreferences(),保存界面上的信息 ? 1. package 。 2. 3. import 。 4. import 。 5. import 。 6. import 。 7. import 。 簡單存儲 ? 示例 8. 9. public class SimplePreferenceDemo extends Activity { 10. 11. private EditText nameText。 12. private EditText ageText。 13. private EditText heightText。 14. public static final String PREFERENCE_NAME = SaveSetting。 15. public static int MODE = + 。 16. 17. @Override 18. public void onCreate(Bundle savedInstanceState) { 19. (savedInstanceState)。 20. setContentView()。 21. nameText = (EditText)findViewById()。 22. ageText = (EditText)findViewById()。 23. heightText = (EditText)findViewById()。 24. } 簡單存儲 ? 示例 25. 26. @Override 27. public void onStart(){ 28. ()。 29. loadSharedPreferences()。 30. } 31. @Override 32. public void onStop(){ 33. ()。 34. saveSharedPreferences()。 35. } 36. 37. private void loadSharedPreferences(){ 38. SharedPreferences sharedPreferences = getSharedPreferences(PREFERENCE_NAME, MODE)。 39. String name = (Name,Tom)。 40. int age = (Age, 20)。 41. float height = (Height,)。 簡單存儲 ? 示例 42. 43. (name)。 44. ((age))。 45. ((height))。 46. } 47. 48. private void saveSharedPreferences(){ 49. SharedPreferences sharedPreferences = getSharedPreferences(PREFERENCE_NAME, MODE)。 50. editor = ()。 51. 52. (Name, ().toString())。 53. (Age, (().toString()))。 54. (Height, (().toString()))。 55. ()。 56. } 57. } 簡單存儲 ? 示例 ? 示例 SharePreferenceDemo將說明如何讀取其他應(yīng)用程序保存的 SharedPreferences數(shù)據(jù) ? 下圖是 SharePreferenceDemo示例的用戶界面 ? 示例將讀取 SimplePreferenceDemo示例保存的信息,并在程序啟動時顯示在用戶界面上 簡單存儲 ? 示例 ? 下面給出 SharePreferenceDemo示例的核心代碼 1. public static final String PREFERENCE_PACKAGE = 。 2. public static final String PREFERENCE_NAME = SaveSetting。 3. public static int MODE = + 。 4. 5. public void onCreate(Bundle savedInstanceState) { 6. Context c = null。 7. try { 8. c = (PREFERENCE_PACKAGE, )。 9. } catch (NameNotFoundException e) { 10. ()。 11. } 12. SharedPreferences sharedPreferences = (PREFERENCE_NAME, MODE)。 簡單存儲 ? 示例 ? 第 8行代碼調(diào)用了 createPackageContext()獲取到了SimplePreferenceDemo示例的 Context ? 第 8行代碼第 1個參數(shù)是 SimplePreferenceDemo的包名稱,在代碼第 1行進(jìn)行了定義 ? 第 2個參
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
公安備案圖鄂ICP備17016276號-1