0

私はアンドロイド開発の初心者で、今のところ SQLite DB を使用するアプリを作成したいと考えています。DB の PATH について 1 つのことを理解するのに苦労しています。私が望むものを成功させるためのガイドでこれを見ました。見てください:

    public class DataBaseHelper extends SQLiteOpenHelper{

        //The Android's default system path of your application database.
        private static String DB_PATH = "/data/data/YOUR_PACKAGE/databases/";

            private static String DB_NAME = "myDBName";


         ...
}

そこにパスと表示されている場合、それはデスクトップ上の SQLite db ファイルのパスですか? それは私が AVD で走っている間に使われるつもりですか? そして.. dbをタブレットに変更するとき(この方法でdbの「localhost」)、タブレット内のパスを指定する必要がありますか?正しいですか?

4

1 に答える 1

1

いいえ、そのパスは、デバイス上でデータベースが配置される場所へのパスです。DBは通常、パッケージ名を含むパスに保持されます(これは安全であり、電話がルート化されていない限り、他のアプリはアクセスできません)。

パッケージ名が「com.test.victor」の場合、デバイス上のDBへのパスは次のようになります。

private static String DB_PATH = "/data/data/com.test.victor/databases/"; 

アプリを介してDBを最初から作成するのではなく、事前に作成されたDBを使用する場合は、そのDBをアセットフォルダーに配置し、起動時にAndroidで使用される適切なディレクトリにdbをコピーする必要があります。アプリ。

これは、アセットからデータベースファイルをコピーして使用することについて最近回答した別の質問へのリンクです。

于 2012-08-05T16:53:27.387 に答える