2017-07-04 7 views
0

私はアンドロイドシステムでsqliteデータベースを管理する方法を知りたい。 SQLiteDatabaseを使用してデータを保存すると、アンドロイドシステムにはどこに保存されますか?アンドロイドシステムでsqliteを管理しますか?

私はそれを知りたいのですが、私がsqlite経由でデータを保存すると、他の開発者はそれを開いて変更することができるのでしょうか?

ありがとうございました。

+0

:別のファイルにデータベースを作成する方法

。 – EpicPandaForce

答えて

2
それはあなたのデータベース名のファイルとして、あなたの携帯電話の内部ストレージに保存されて

ディレクトリは次のとおりです(内部ストレージ・パス)..../Android/data/packageName/database/

データベースファイルは表示されませんが、別のパスに書き込んでからsqliteブラウザで開くことができます。データフォルダー内のファイルのよう

private void write() throws IOException { 
      File sd = Environment.getExternalStorageDirectory(); 
      if (sd.canWrite()) 
      { 
       String currentDBPath = DBHelper.DATABASE_NAME; 
       String backupDBPath= "QSDevice.db"; 

       File currentDB = new File(getDBPath(), currentDBPath); 
       File backupDB = new File(sd, backupDBPath); 
       if (currentDB.exists()) { 
        FileChannel src = new FileInputStream(currentDB).getChannel(); 
        FileChannel dst = new FileOutputStream(backupDB).getChannel(); 
        dst.transferFrom(src, 0, src.size()); 
        src.close(); 
        dst.close(); 
       } 
      } 
     } 

private String getDBPath() { 
     if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR1) { 
      return getFilesDir().getAbsolutePath().replace("files", "databases") + 
        File.separator; 
     } else { 
      return getFilesDir().getPath() + getPackageName() + "/databases/"; 
     } 
    } 
0

アンドロイドでSQLite経由で保存したデータは、アンドロイドデバイスのデータ - >データ - (パッケージ名) - >データベース - >(データベース名)に保存されます。他のアプリや開発者は、PRIVATEモードを選択した場合はデータベースにアクセスできません。そして、あなたはツール - >アンドロイド - >アンドロイドデバイスマネージャから開くことができるアンドロイドデバイスマネージャを使用してこのデータベースにアクセスすることができます。あなたのアンドロイドスタジオでEclipse DDMSを開きます。あなたは、ファイルエクスプローラを開き、データベースのディレクトリに移動し、そこからそれを引き出すことができる

+0

データ - >データにアクセスする方法 - > ...アクセスできません。 – KDEV

+0

最初にAndroid Device Managerを開く必要があります(これにより、エミュレータ上のファイルにアクセスできるDDMSのEclipseのパースペクティブが開きます)。その視点が開いたら、ファイルエクスプローラをクリックして、Dataフォルダを選択してください – Chanchrik

+0

DDMSのファイルエクスプローラでこのファイルを見ると、同じことを言う右上のボタンを使ってこのファイルをプルする必要があります。必要な場所に保存します – Chanchrik

関連する問題