在我的SQLite数据库助手类的应用程序中,构造函数的代码如下:
public DataBaseHelper(Context context) {
super(context, DATABASE_NAME, null ,DATABASE_VERSION);
this.myContext = context;
//The Android's default system path of your application database.
DB_PATH = "/data/data/myPackage/databases/";
}
我收到警告的地方是:
不要硬编码" / data /&#34 ;;使用Context.getFilesDir()。getPath()代替
所以我试过了:
DB_PATH = "/data/data/" + context.getPackageName() + "/databases/";
但是我也得到同样的警告。我现在该怎么办。
答案 0 :(得分:3)
你可以做一件事。由于不硬核心。试试这个:
DB_PATH = myContext.getDatabasePath(DATABASE_NAME).getPath();
这将删除您的警告。
答案 1 :(得分:3)
另一种使用方式是。
File datbasefile=myContext.getDatabasePath("your database name");
String name = datbasefile.getPath() ;
答案 2 :(得分:2)
你真的不需要提供你的数据库的路径 让Android决定它想放在哪里 您只需要提供数据库名称:
private final static String DB_NAME = "your_db_name.db";
答案 3 :(得分:2)
试试这个:
private final static String DATABASE_NAME = "/databases/";
DB_PATH = context.getFilesDir().getPath() + context.getPackageName() + DATABASE_NAME;