由于你的解决方案我已经完成了我的应用程序,我来到这里是关于我当前应用程序的最后一个问题,我创建的数据库我无法访问它,我读到这是在android系统内所以我该怎么办访问数据库并导出它?
public class DBAdapter {
private static final String DATABASE_NAME = "bd";
private static final int DATABASE_VERSION = 3;
private final Context context;
private static DatabaseHelper DBHelper;
private SQLiteDatabase db;
static String SqlCreate = "CREATE TABLE password(id INTEGER, name TEXT, password TEXT)";
public DBAdapter(Context ctx) {
this.context = ctx;
DBHelper = new DatabaseHelper(context);
}
public void onOpen(SQLiteDatabase db) {
db = DBHelper.getWritableDatabase();
// super.onOpen(db);
if (!db.isReadOnly()) {
// Enable foreign key constraints
db.execSQL("PRAGMA foreign_keys=ON;");
}
}
private static class DatabaseHelper extends SQLiteOpenHelper {
DatabaseHelper (Context context) {
super(context,DATABASE_NAME,null,DATABASE_VERSION);
}
public void onCreate(SQLiteDatabase db) {
try {
db.execSQL(DATABASE_CREATE1);
db.execSQL(DATABASE_CREATE3);
db.execSQL(SqlCreate);
// db.execSQL(DATABASE_CREATE2);
}
catch(SQLException e) {
e.printStackTrace();
}
}
答案 0 :(得分:2)
如果我的问题得到解决,您应该使用Android设备监视器。在Android Studio中转到:
工具 - > Android - > Android监视器。
运行模拟器后,您可以访问以下数据库:
data-> data-> com.your.application / databases / databasename
您可以从那里导出。
答案 1 :(得分:1)
它非常简单易用,Android调试数据库允许您以非常简单的方式直接在浏览器中查看数据库和共享首选项。
要使用该库,只需添加
debugImplementation 'com.amitshekhar.android:debug-db:1.0.3'
到您应用的build.gradle。 现在,您可以通过浏览提供的localhost链接来访问或导出数据库。如果你想要不同的端口添加这个
debug {
resValue("string", "PORT_NUMBER", "8081")
}
它看起来像这样,漂亮的用户界面!
您可以在下面的给定链接中找到更多详细信息。 https://github.com/amitshekhariitbhu/Android-Debug-Database#android-debug-database
答案 2 :(得分:0)
在eclipse中,您可以使用DDMS选项卡查看SQLite数据库。
转到文件资源管理器,然后单击您的设备 - >数据 - >数据 - >包名称 - >数据库名称
您现在可以推送或拉取数据库......您也可以使用adb ...
要在非root电话上访问您的数据库,您必须使用adb backup来实现数据库的备份。 例如:http://dbremes.wordpress.com/2013/02/11/how-to-get-a-backup-of-your-android-applications-database-in-windows/
您必须首先实现备份并获取.ab文件,然后从备份文件中提取数据库。