溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Android中如何實現(xiàn)數(shù)據(jù)存儲的訪問機制

發(fā)布時間:2022-04-16 16:13:12 來源:億速云 閱讀:153 作者:iii 欄目:開發(fā)技術(shù)

這篇文章主要介紹“Android中如何實現(xiàn)數(shù)據(jù)存儲的訪問機制”的相關(guān)知識,小編通過實際案例向大家展示操作過程,操作方法簡單快捷,實用性強,希望這篇“Android中如何實現(xiàn)數(shù)據(jù)存儲的訪問機制”文章能幫助大家解決問題。

1. 如何使得應(yīng)用程序的數(shù)據(jù)可以被外部訪問呢?

答案是使用android 的content provider 接口,content provider 可以使應(yīng)用程序的私有數(shù)據(jù)暴露給其它application.

有兩種選擇來暴露application data,一種是建立自己的content provider,另外一種是使用已有的content provider前提是數(shù)據(jù)類型一致。

2. Android數(shù)據(jù)存儲的數(shù)據(jù)類型

Android 提供了一系列的 content type. 包括image, audio, and video files and personal contact information 等等.

3. Android數(shù)據(jù)存儲機制

Android 提供了存儲和獲取數(shù)據(jù)的以下幾種機制

3.1. Preference

Preference 提供了一種輕量級的存取機制,主要是可以通過關(guān)鍵字讀取和存儲某個Preference value.

比如載系統(tǒng)啟動的時候得到上次系統(tǒng)退出時候保存的值。

view plaincopy to clipboardprint?  . . .   public static final String PREFS_NAME = "MyPrefsFile";   . . .   @Override   protected void onCreate(Bundle state){   super.onCreate(state);   . . .   // Restore preferences   SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);   boolean silent = settings.getBoolean("silentMode", false);   setSilent(silent);   }   @Override   protected void onStop(){   super.onStop();   // Save user preferences. We need an Editor object to   // make changes. All objects are from android.context.Context   SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);   SharedPreferences.Editor editor = settings.edit();   editor.putBoolean("silentMode", mSilentMode);   // Don't forget to commit your edits!!!   editor.commit();   }   . . .   public static final String PREFS_NAME = "MyPrefsFile";  . . .   @Override  protected void onCreate(Bundle state){   super.onCreate(state);  . . .  // Restore preferences  SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);  boolean silent = settings.getBoolean("silentMode", false);  setSilent(silent);  }  @Override  protected void onStop(){  super.onStop();  // Save user preferences. We need an Editor object to  // make changes. All objects are from android.context.Context  SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);  SharedPreferences.Editor editor = settings.edit();  editor.putBoolean("silentMode", mSilentMode);  // Don't forget to commit your edits!!!  editor.commit();  }

3.2. Files

通過Android數(shù)據(jù)存儲中的File機制你可以直接存儲一個文件到你手機文件系統(tǒng)路徑比如SD卡中。

需要注意的是 , 默認(rèn)情況下存儲的文件是不可以被其他application是訪問的 !!

Context.openFileInput() 返回java的標(biāo)準(zhǔn)文件輸入對象。

Context.openFileOutput() 返回java的標(biāo)準(zhǔn)文件輸出對象。

3.3. Databases.

Android 使用 SQLite 數(shù)據(jù)庫。

可以通過調(diào)用SQLiteDatabase.create() and 以及子類 SQLiteOpenHelper.

Android 還提供了sqlite3 database tool, 你可以通過這個工具像MySQL tool那樣來直接訪問,修改數(shù)據(jù)庫

3.4. Network.

***你也可以通過網(wǎng)絡(luò)來存儲數(shù)據(jù),使用下面兩個包的java class.

java.net.*   android.net.*

關(guān)于“Android中如何實現(xiàn)數(shù)據(jù)存儲的訪問機制”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識,可以關(guān)注億速云行業(yè)資訊頻道,小編每天都會為大家更新不同的知識點。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI