




下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
【移動(dòng)應(yīng)用開發(fā)技術(shù)】Android中怎么利用SharedPreferences實(shí)現(xiàn)自動(dòng)登錄記住用戶名和密碼功能
本篇文章為大家展示了Android中怎么利用SharedPreferences實(shí)現(xiàn)自動(dòng)登錄記住用戶名和密碼功能,內(nèi)容簡(jiǎn)明扼要并且容易理解,絕對(duì)能使你眼前一亮,通過這篇文章的詳細(xì)介紹希望你能有所收獲。SharedPreferences簡(jiǎn)介SharedPreferences也是一種輕型的數(shù)據(jù)存儲(chǔ)方式,它的本質(zhì)是基于XML文件存儲(chǔ)key-value鍵值對(duì)數(shù)據(jù),通常用來存儲(chǔ)一些簡(jiǎn)單的配置信息。其存儲(chǔ)位置在/data/data/<包名>/shared_prefs目錄下。SharedPreferences對(duì)象本身只能獲取數(shù)據(jù)而不支持存儲(chǔ)和修改,存儲(chǔ)修改是通過Editor對(duì)象實(shí)現(xiàn)。SharedPreferences使用實(shí)例:記住用戶名密碼自動(dòng)登錄大致了解了SharedPreference之后,接下來看個(gè)記住用戶名密碼自動(dòng)登錄的例子:package
com.dt5000.ischool.activity;
import
android.annotation.SuppressLint;
import
android.content.Context;
import
android.content.Intent;
import
android.content.SharedPreferences;
import
android.content.SharedPreferences.Editor;
import
android.os.Bundle;
import
android.util.Log;
import
android.view.KeyEvent;
import
android.view.View;
import
android.widget.CheckBox;
import
android.widget.EditText;
import
com.dt5000.ischool.util.DTUtil;
import
com.dt5000.ischool.util.MyApplication;
/**
*
@author:
duanyr
*
@創(chuàng)建時(shí)間:
2012-11-13
下午2:36:47
*
*
@類說明:登錄界面
*/
@SuppressLint("WorldReadableFiles")
public
class
LoginActivity
extends
DTUtil
{
private
static
final
String
TAG
=
"用戶登錄";
private
EditText
username;
private
EditText
password;
private
CheckBox
autoLogin;
private
SharedPreferences
sharedPreferences;
private
String
message;
@Override
public
void
onCreate(Bundle
savedInstanceState)
{
super.onCreate(savedInstanceState);
MyApplication.getInstance().addActivity(this);
sharedPreferences
=
this.getSharedPreferences("userInfo",Context.MODE_WORLD_READABLE);
if
(sharedPreferences.getBoolean("AUTO_ISCHECK",
false))
{
Intent
intent
=
new
Intent();
intent.setClass(LoginActivity.this,
MainActivity.class);
startActivity(intent);
}
else
{
setContentView(R.layout.activity_login);
initView();
}
}
/**
*
初始化視圖控件
*/
public
void
initView()
{
Log.i(TAG,
"初始化視圖控件");
username
=
(EditText)
findViewById(R.id.username);
password
=
(EditText)
findViewById(R.id.password);
autoLogin
=
(CheckBox)
findViewById(R.id.autoLogin);
//
默認(rèn)記住用戶名
username.setText(sharedPreferences.getString("userName",
""));
}
/**
*
點(diǎn)擊登錄按鈕時(shí)觸發(fā)的方法
*
@param
view
*/
public
void
userLogin(View
view)
{
String
usernameString
=
username.getText().toString();
String
passwordString
=
password.getText().toString();
if
(validateUser(usernameString,
passwordString))
{
Editor
editor
=
sharedPreferences.edit();
editor.putString("userName",
usernameString);
if
(autoLogin.isChecked())
{//
自動(dòng)登錄
editor.putString("password",
passwordString);
editor.putBoolean("AUTO_ISCHECK",
true).commit();
}
mit();
Intent
intent
=
new
Intent();
intent.setClass(LoginActivity.this,
MainActivity.class);
startActivity(intent);
}
else
{
alert(this,
message);
}
}
//游客登錄
public
void
visitorLogin(View
view)
{
Intent
intent
=
new
Intent();
intent.setClass(LoginActivity.this,
MainActivity.class);
startActivity(intent);
}
/**
*
驗(yàn)證用戶名密碼是否正確
*
*
@param
username
*
@param
password
*
@return
*/
public
boolean
validateUser(String
username,
String
password)
{
Boolean
flag
=
false;
try
{
//...此處為調(diào)用web服務(wù),驗(yàn)證用戶名密碼的服務(wù),特此省略
flag
=
true;
}
catch
(Exception
e)
{
//
TODO
Auto-generated
catch
block
Log.e(TAG,
e.getMessage());
message
=
"連接服務(wù)器失敗";
}
return
flag;
}
/**
*
點(diǎn)擊退出按鈕時(shí)觸發(fā)的方法
*/
public
void
logout_listener(View
view)
{
dialog_Exit(this);
}
/**
*
監(jiān)聽返回按鈕,此為登錄界面再返回的話給出退出提示
*/
public
boolean
onKeyDown(int
keyCode,
KeyEvent
event)
{
if
(keyCode
==
KeyEvent.KEYCODE_BACK
&&
event.getRepeatCount()
==
0)
{
dialog_Exit(this);
return
false;
}
return
false;
}
}頁面布局截圖:生成的配置文件位置和代碼userInfo.xm
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 農(nóng)產(chǎn)品網(wǎng)絡(luò)銷售質(zhì)量保障合同協(xié)議
- 數(shù)據(jù)傳輸優(yōu)化協(xié)議
- 產(chǎn)品研發(fā)合作協(xié)議條款及條件
- 物流配送服務(wù)項(xiàng)目合作協(xié)議書
- IT辦公設(shè)備維護(hù)及保養(yǎng)服務(wù)合同協(xié)議
- 普通民房租賃合同
- 海運(yùn)貨物運(yùn)輸協(xié)議
- 專業(yè)客戶介紹居間協(xié)議
- 土地抵押借款合同經(jīng)典
- 線上采購平臺(tái)服務(wù)協(xié)議
- 2025年食品供應(yīng)商合同范本
- 《網(wǎng)絡(luò)信息安全教學(xué)》課件
- 徐州2025年江蘇徐州市口腔醫(yī)院招聘非在編醫(yī)務(wù)人員53人筆試歷年參考題庫附帶答案詳解-1
- 2025年01月2025中國(guó)作家協(xié)會(huì)所屬單位公開招聘11人筆試歷年典型考題(歷年真題考點(diǎn))解題思路附帶答案詳解
- 用色彩情感引發(fā)共鳴社交媒體運(yùn)營(yíng)秘訣
- 2025年江西機(jī)電職業(yè)技術(shù)學(xué)院高職單招職業(yè)技能測(cè)試近5年??及鎱⒖碱}庫含答案解析
- 2025年江蘇旅游職業(yè)學(xué)院高職單招職業(yè)技能測(cè)試近5年??及鎱⒖碱}庫含答案解析
- 2025年上海市租房合同標(biāo)準(zhǔn)樣本(2篇)
- 四年級(jí) 人教版 數(shù)學(xué) 第三單元《乘法運(yùn)算律(四)(例8) -解決問題策略的多樣化》課件
- 《綠色低碳鋁評(píng)價(jià)導(dǎo)則及追溯指南》T CNIA 0245-2024
- (高清版)JTGT 3650-01-2022 公路橋梁施工監(jiān)控技術(shù)規(guī)程
評(píng)論
0/150
提交評(píng)論