成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Android保存數據幾種常用方法解析

移動開發 Android
Android保存數據總共有四種方法。我們可以通過這篇文章介紹的內容對此進行充分的掌握,以滿足我們在實際應用中的需求。

Android 手機操作系統是一款基于Linux平臺的開源操作系統。它應用于手機中能夠幫助我們實現許多需求。比如今天為大家介紹的Android保存數據,就是其中一個比較重要的操作技巧。#t#

對于我們所熟悉的大部分軟件都有一個比較典型的特點,應用現有的數據根據不同的需求來得到相應的結果。例如,我們最常用的Officeword、Excel、PowerPoint等辦公軟件,它們都是幫助我們完成某種特定的需求,同時由其所產生的數據或者文檔又可以被其它軟件所讀取和做進一步的優化等等,在這個層面上可以看成是這些軟件通過相同的文件標準來共享數據。但是對于Android***的不同點在于,其平臺上的應用軟件所存儲的數據或者文件是私有,僅僅可以通過它自身才可以訪問其所包含的數據資源。

那么基于這樣的限制,該如何在Android平臺上實現不同程序間的數據共享呢?答案非常簡單 – 應用ContentProviders,這是建立在Android平臺上用于定義統一的數據標準。Android提供了針對不同數據類型的ContentProviders來滿足各種需要。例如:Image、Audio、Video和通訊錄信息類等。閱讀下邊的文檔之前,***先熟悉Content Providers的概念。

有了上邊所提到Content Providers,接下來就要處理在共享文件過程中的存儲環節了,這里有四種方法分別適用于不同情況的需求。它們都各自有相應的優缺點,所以當開發者決定選擇應用哪種方法之前,先要考慮當前所操作的情況是否適合于所選擇的方法。

  1. Preferences  
  2. Files  
  3. Databases  
  4. Network 

接下來將依次介紹上訴四個Android保存數據方法:

Preferences從其保存數據的結構來分析,這是一個相對較輕量級的存儲數據的方法。類似于我們常用的ini文件保存軟件初始化設置,同樣在Android平臺常用于存儲較簡單的參數設置。例如,可以通過它保存上一次用戶所作的修改或者自定義參數設定,當再次啟動程序后依然保持原有的設置。

通過Context.getSharedPreferences()方法來讀寫數值,這個方法通過設置name來使得同一個程序內的其它模塊共享數據。如果不需要與其它模塊共享數據,可以使用Activity.getPreferences()方法保持數據私有。需要著重強調一點,無法直接在多個程序間共享Preferences數據(不包括使用Content Providers)。

通過一個實例來了解實際使用方法:

  1. import android.app.Activity;  
  2. import android.content.SharedPreferences;  
  3. public class Calc extends Activity {  
  4. public static final String PREFS_NAME = "MyPrefsFile";  
  5. . . . .   
  6. Override  
  7. protected void onCreate(Bundle state){  
  8. super.onCreate(state);  
  9. . . . .  
  10. // Restore preferences  
  11. SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);  
  12. boolean silent = settings.getBoolean("silentMode", false);  
  13. setSilent(silent);  
  14. }  
  15. @Override  
  16. protected void onStop(){  
  17. super.onStop();  
  18. // Save user preferences. We need an Editor object to  
  19. // make changes. All objects are from android.context.Context  
  20. SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);  
  21. SharedPreferences.Editor editor = settings.edit();  
  22. editor.putBoolean("silentMode", mSilentMode);  
  23. // Don't forget to commit your edits!!!  
  24. editor.commit();  
  25. }  

 

Files從這是第二種方法,可以在設備本身的存儲設備或者外接的存儲設備中創建用于保存數據的文件。同樣在默認的狀態下,文件是不能在不同的程序間共享。

寫文件:調用Context.openFileOutput()方法根據指定的路徑和文件名來創建文件,這個方法會返回一個FileOutputStream對象。

讀取文件:調用Context.openFileInput()方法通過制定的路徑和文件名來返回一個標準的Java FileInputStream對象。
(注意:在其它程序中將無法應用相同的路徑和文件名來操作文件)

另外編譯程序之前,在res/raw/tempFile中建立一個static文件,這樣可以在程序中通過Resources.openRawResource (R.raw.myDataFile)方法同樣返回一個InputStream對象,直接讀取文件內容。

Databases在Android API中包括了應用SQLite databases的接口,每個程序所創建的數據庫都是私有的,換句話說,程序間無法相互訪問對方的數據庫。

在程序中創建SQLiteDatabase對象,其中包含了大部分與database交互的方法,例如:讀取數據或者管理當前數據。可以應用SQLiteDatabase和其subClassSQLiteOpenHelper的create()方法來創建新的數據庫。

對于SQLitedatabase而言,其強大和方便的功能為Android提供了強有力的存儲功能。特別是存儲一些復雜的數據結構,例如:Android特別為通訊錄創建了特有的數據類型,其中包含了非常多的子集而且涵蓋了大部分的數據類型 “First Name” “Last Name” “PhoneNumber”和“Photo”等。

Android可以通過Sqlite3 database tool來查看指定數據庫中表的內容,直接運行SQL命令來快速便捷的直接操作SQLite database。
數據庫在設備中保存的地址是 /data/data/package_name/databases

Network通過網絡來獲取和保存數據資源,這個方法需要設備保持網絡連接狀態,所以相對存在一些限制。下面列出了兩個用于相關操作的類:

  1. java.net.*  
  2. android.net.* 

以上是四種Android保存數據的方法常用于針對Android平臺來存儲和讀取數據的方法。

責任編輯:曹凱 來源: 博客園
相關推薦

2010-05-17 15:17:06

MySQL常用操作

2009-06-11 13:49:30

2020-08-25 08:53:02

Linux端口轉發

2009-12-24 16:11:07

WPF圖像處理

2009-09-14 18:11:23

C#排序方法

2010-05-04 15:49:24

Oracle修改

2011-06-30 14:58:16

偽原創

2021-06-30 06:10:31

數組去重方法數組變量

2019-12-12 15:39:28

大數據IT互聯網

2018-04-11 06:31:24

大數據架構數據分析Hadoop

2019-08-23 15:55:27

架構大數據BI系統

2018-08-09 20:47:41

2009-06-09 10:05:41

jQuery

2010-05-10 14:46:54

Oracle 11g

2009-08-06 17:24:08

C#字符串

2016-09-06 22:16:42

JavaDOCXPDF

2010-07-30 09:16:24

Flex數據綁定

2022-06-13 08:30:01

數據庫管理系統

2009-06-23 14:23:00

名稱空間Java API

2010-01-25 17:28:18

Android類庫
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 日韩一级不卡 | h视频在线免费 | 欧美在线观看一区 | 欧美日韩免费一区二区三区 | 欧美激情国产精品 | 91资源在线 | 成人依人 | 成人高潮片免费视频欧美 | 日本三级日产三级国产三级 | 久草免费在线视频 | 麻豆视频在线免费观看 | 国产专区在线 | 久久久久久免费观看 | 免费成人高清在线视频 | 久久精品国产一区二区电影 | 亚洲精品电影 | 久久夜色精品国产 | 久久精品久久久 | 亚洲成在线观看 | 99精品一区二区 | 视频三区 | 成人毛片一区二区三区 | av在线免费观看网站 | 北条麻妃一区二区三区在线视频 | 欧美日韩在线精品 | 日韩中文字幕免费 | 黄色在线免费观看视频 | 观看av| 久久91精品国产一区二区三区 | 在线精品亚洲欧美日韩国产 | 日韩精品中文字幕一区二区三区 | 国产在线麻豆精品入口 | 国产精品一区二区三区久久久 | 日日操日日舔 | 久久精品色欧美aⅴ一区二区 | 欧美视频成人 | 日韩视频在线一区二区 | 亚洲精品视频免费 | 欧美日韩高清在线观看 | 精品一二三区在线观看 | 91精品国产综合久久久密闭 |