Android 數(shù)據(jù)庫SQLite 寫入SD卡的方法
如果手機沒有root,數(shù)據(jù)庫文件是無法查看到的,不方便調(diào)試。
最好的辦法是把數(shù)據(jù)庫寫進SD卡。
修改的地方有兩處:
1.在你的helper類中把數(shù)據(jù)庫文件名稱 DATABASE_NAME 由原來的一個文件名,修改成路徑的形式。
修改前:DATABASE_NAME = "demo.db"
public class MyDBHelper extends SQLiteOpenHelper { public static final int VERSION = 1; //數(shù)據(jù)庫版本號 public static final String DATABASE_NAME = "demo.db"; //數(shù)據(jù)庫名稱 public static final String TABLE_NAME = "mytag"; //數(shù)據(jù)表名稱,一個數(shù)據(jù)庫可以包含多張數(shù)據(jù)表,類似于excel中的sheet1,sheet2 //MyDBHelper 的構(gòu)造函數(shù),我們關(guān)心的是名稱DATABASE_NAME和版本VERSION public MyDBHelper(Context context) { super(context, DATABASE_NAME, null, VERSION); }
修改后:DATABASE_NAME = "/mnt/sdcard/demo.db"
public class MyDBHelper extends SQLiteOpenHelper { public static final int VERSION = 1; //數(shù)據(jù)庫版本號 public static final String DATABASE_NAME = "/mnt/sdcard/demo.db"; //數(shù)據(jù)庫名稱 public static final String TABLE_NAME = "mytag"; //數(shù)據(jù)表名稱,一個數(shù)據(jù)庫可以包含多張數(shù)據(jù)表,類似于excel中的sheet1,sheet2 //MyDBHelper 的構(gòu)造函數(shù),我們關(guān)心的是名稱DATABASE_NAME和版本VERSION public MyDBHelper(Context context) { super(context, DATABASE_NAME, null, VERSION); }
因為如果只是一個單獨的文件名,最后創(chuàng)建的數(shù)據(jù)庫文件就是保存在手機內(nèi)部存儲卡(不是運行內(nèi)存,也不是SD卡)的/data/data/包名稱/databases 目錄下,而沒有root的手機,這個/data根文件夾是進不去的,用adb shell方式也打不開。
2.最后,千萬別忘了修改權(quán)限!
Android手機是有著嚴格的安全管控的,SD卡屬于外部存儲器,訪問上面的文件需要添加權(quán)限。
在AndroidManifest.xml 中添加兩條SD卡讀寫權(quán)限即可:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
如果沒有添加權(quán)限,那么程序就會異常終止。
以上所述是針對Android 數(shù)據(jù)庫SQLite 寫入SD卡的方法,希望對大家有所幫助!
- Android SQLite數(shù)據(jù)庫增刪改查操作的使用詳解
- Android使用SQLite數(shù)據(jù)庫的簡單實例
- android創(chuàng)建數(shù)據(jù)庫(SQLite)保存圖片示例
- Android中操作SQLite數(shù)據(jù)庫快速入門教程
- Android創(chuàng)建和使用數(shù)據(jù)庫SQLIte
- Android SQLite數(shù)據(jù)庫增刪改查操作的案例分析
- android通過jxl讀excel存入sqlite3數(shù)據(jù)庫
- Android操作SQLite數(shù)據(jù)庫(增、刪、改、查、分頁等)及ListView顯示數(shù)據(jù)的方法詳解
- Android批量插入數(shù)據(jù)到SQLite數(shù)據(jù)庫的方法
- Android利用listview控件操作SQLite數(shù)據(jù)庫實例
- Android應(yīng)用中內(nèi)嵌SQLite數(shù)據(jù)庫的基本操作指南
- Android+SQLite數(shù)據(jù)庫實現(xiàn)的生詞記事本功能實例
相關(guān)文章
Android的Fragment的生命周期各狀態(tài)和回調(diào)函數(shù)使用
這篇文章主要介紹了Android的Fragments的生命周期各狀態(tài)和回調(diào)函數(shù)使用,Fragments的生命周期與Activity息息相關(guān),需要的朋友可以參考下2016-02-02logcat命令使用方法和查看android系統(tǒng)日志緩沖區(qū)內(nèi)容的方法
這篇文章主要介紹了logcat命令使用方法和查看android系統(tǒng)日志緩沖區(qū)內(nèi)容的方法,需要的朋友可以參考下2014-02-02Android實現(xiàn)觸發(fā)html頁面的Button控件點擊事件方式
這篇文章主要介紹了Android實現(xiàn)觸發(fā)html頁面的Button控件點擊事件方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-03-03Android 2.3.7.r1 camera錄像過程中按menu菜單鍵時會停止錄像
android GB版本的camera錄像過程中按“菜單”鍵會停止錄像,改成錄像時按menu鍵不做處理,具體修改方法如下,感興趣的朋友可以參考下哈2013-06-06