Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/230.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android为不同的用户提供不同的数据库_Android_Sqlite_Login - Fatal编程技术网

Android为不同的用户提供不同的数据库

Android为不同的用户提供不同的数据库,android,sqlite,login,Android,Sqlite,Login,我想看看是否有办法将不同的数据库名称分配给登录到应用程序的不同用户。我正在尝试编写一个小应用程序,根据用户的用户名/电子邮件为用户分配数据库 我尝试设置传入的数据库名称 public SQLiteHelper(Context context) { super(context, DATABASE_NAME, null, DATABASE_VERSION); } 发送到用户的电子邮件地址,但不起作用。它为所有用户加载相同的数据 在注销时,我关闭数据库并进行清理,在启动时,每次我使用已正确分

我想看看是否有办法将不同的数据库名称分配给登录到应用程序的不同用户。我正在尝试编写一个小应用程序,根据用户的用户名/电子邮件为用户分配数据库

我尝试设置传入的数据库名称

public SQLiteHelper(Context context) {
    super(context, DATABASE_NAME, null, DATABASE_VERSION);
}
发送到用户的电子邮件地址,但不起作用。它为所有用户加载相同的数据

在注销时,我关闭数据库并进行清理,在启动时,每次我使用已正确分配的名称启动新的数据库连接时


有人能帮我理解我遗漏了什么吗?

您可以将数据库的名称传递给您的
SQLiteOpenHelper
类构造函数(以及所需的上下文实例),而不是像
database\u name
那样对其进行硬编码:

public class DBOpenHelper extends SQLiteOpenHelper {

    public DBOpenHelper(Context context, String dbName, int dbVersion) {
        super(context, dbName, null, dbVersion);
    }
...
}

您只需将数据库的名称传递给
SQLiteOpenHelper
类构造函数(以及所需的上下文实例),而不是像
database\u name
那样对其进行硬编码:

public class DBOpenHelper extends SQLiteOpenHelper {

    public DBOpenHelper(Context context, String dbName, int dbVersion) {
        super(context, dbName, null, dbVersion);
    }
...
}