2017-04-26 47 views
-1

我有一个用户登录的Android应用程序,我需要在我的应用程序中存储登录详细信息。
我的应用程序也有他/她提出的某些请求的用户历史记录。
我的应用程序是一个软件服务应用程序,因此用户详细信息必须存储在从数据库中提取的应用程序中Sqlite或sharedpreference适合我的应用程序

Sqlite或sharedpreference是否适合我的应用程序?

+0

“这是从数据库中获取” ......那岂不是回答你的问题? –

+0

谷歌搜索这个主题会告诉你奇迹。 –

回答

2

要看,如果你只是想保存用户使用SharedPrefrence的,否则如果数据越多,你可以使用SQLite

/** 
    * method to set the login status for the application 
    * 
    * @param context 
    * @param status 
    */ 
    public static void setLoginStatus(Context context, int status) { 
     sharedPreferences = context.getSharedPreferences(PREFERENCE_NAME, Activity.MODE_PRIVATE); 
     Editor editor = sharedPreferences.edit(); 
     editor.putInt(KEY_LOGIN_STATUS, status); 
     editor.apply(); 
    } 

注意会议:

关于其完全在你的选择你用什么来保存当前的用户状态,我宁愿使用共享首选项。并注册 并登录使用SQLite数据库。通常使用共享偏好 来执行轻量级操作。你可以在SQLite中搜索数据为 ,你可能有很多用户。

因此,使用SQLite注册并登录,然后使用共享首选项 保存当前用户状态。

+0

我只有用户名和密码才能同时保存几个用户的详细信息,其中包括请求类型请求的详细信息日期等 –

+0

如果用户数据超过使用sqlite –

+0

我告诉过你如果你只是想管理'Sessions'使用SharedPrefs或使用sqlite –

0

Sqlite总是一个更好的选择,在那里存储数据,你可以管理正确的格式,你也可以加密。

+0

但我听说sqlite导致减少应用程序性能 –

0

我会建议,你应该使用sharedPreferences来保存登录信息,我想你要存储的任何请求都包含更多的数据,所以把你的请求保存在SQLite中。

+0

我的数据包含最多10到15个编辑文本字段 –

+0

在存储请求时使用SQLite –

+0

如果使用它,是否需要sharedpreference来存储共享首选项 –

0

这里是关于主题的一些好的细节:

Pros and Cons of SQLite and Shared Preferences

SQLite的

相同的结构化数据的大量应存放在一个SQLite 数据库作为数据库设计的这种数据。由于数据 由数据库构建和管理,因此可以使用查询 语言(如SQL)来查询获得匹配特定标准的 子数据集。这使得可以在数据中进行搜索。管理和搜索大量数据集的过程会影响性能,因此从数据库读取数据的速度可能比读取SharedPreferences中的 数据要慢。

SharedPreferences

SharedPreferences是键/值存储在那里你可以在 某些关键保存数据。要从商店中读取数据,您必须知道数据的关键 。这使得读取数据变得非常简单。但容易,因为它是存储少量的数据是困难的,它是存储和 读取大型结构化数据,因为您需要定义每个单一的 数据的关键,此外,你不能真正搜索除了你的数据以外的数据 有命名密钥的特定概念。

根据规模大小或数据的格式,你可以选择一个,登录信息,我建议使用SharedPreferences

+0

@RautDarpan我在报价中添加了链接和文字 –

相关问题