2016-10-25 24 views
1

私は現在、このコードでEnvironment.GetFolderPath(Environment.SpecialFolder.Personal)にローカルsqlite dbを保存しています。Xamarin Android - ローカルDBをどこに保存すればいいのですか?

今私は自分のPCにDbをコピーしようとしているので、その中身を見ることができます。しかし、私はこのフォルダが根っからない限り見ることができません。

DBを保存するのに最適な場所はどこにありますか?ここで

は私のアンドロイドDBコードです:

[assembly: Dependency(typeof(SQLite_Android))] 

namespace AppName.Droid 
{ 
    public class SQLite_Android : ILocalDb.Interfaces.ILocalDb 
    { 
     #region ISQLite implementation 
     public SQLite.SQLiteConnection GetConnection() 
     { 
      var sqliteFilename = "MyDb.db3"; 
      string documentsPath = Environment.GetFolderPath(Environment.SpecialFolder.Personal); 
      var path    = Path.Combine(documentsPath, sqliteFilename); 
      // Create the connection 
      var conn    = new SQLite.SQLiteConnection(path); 
      // Return the database connection 
      return conn; 
     } 
     #endregion 
    } 
} 

答えて

1

あなたは、外部ストレージオプションを使用することができます。

 var sqliteFilename = "MyDb.db3"; 
     var extStoragePath = Android.OS.Environment.ExternalStorageDirectory.AbsolutePath; 
     var path = Path.Combine(extStoragePath, "MyNewFolder"); 
     var filename = Path.Combine(path, sqliteFilename); 

     // Create the connection 
     var conn = new SQLite.SQLiteConnection(path); 
     // Return the database connection 
     return conn; 

この方法でファイルには、ファイルエクスプローラ

+0

経由で見ることができますご回答いただきありがとうございます。これは、アプリを公開しているときにこれを行う良い方法ですか?または私は一度私はアプリを公開することに戻って変更する必要がありますか? – Aytee

+1

アプリの公開 - アプリのユーザーがアプリのデータを表示、変更、削除できる場合はおすすめしません。 – Milen

関連する問題