0

Environment.getDataDirectory()の呼び出しは、別のユーザーからアプリを実行すると、同じ情報 ( /data ) を返します。ただし、私のアプリケーションが実際に使用するデータベースは異なります。内部メモリにデータベースを作成してアクセスするためにSQLiteOpenHelperを使用しました。

次のパスを使用して、最初のユーザーから直接データベース ファイルにアクセスできます: /data/app_package_name/databases/database_file.db

2 番目のユーザーから、許可拒否エラーが発生しました。明らかに、他のユーザー環境で db にアクセスしようとしました。

では、2 番目のユーザーのデータベースの実際の場所はどこでしょうか? ありがとう!

4

1 に答える 1

1

以下を使用してみてください。

context.getFilesDir().getAbsolutePath().replace("files", "databases") + File.separator + DB_NAME
于 2013-05-31T17:53:56.630 に答える