Android Application存取公共數(shù)據(jù)的實(shí)例詳解
Android Application存取公共數(shù)據(jù)的實(shí)例詳解
Android系統(tǒng)在運(yùn)行每一個(gè)程序應(yīng)用的時(shí)候,都會(huì)創(chuàng)建一個(gè)Application對(duì)象,用于存儲(chǔ)與整個(gè)應(yīng)用相關(guān)的公共變量。
一個(gè)Android應(yīng)用只會(huì)生成一個(gè)Application對(duì)象,在不同的Activity中獲取的Application對(duì)象是一樣的,所以Application對(duì)象是一個(gè)單例(SingleTon)。
Application對(duì)象非常適合用于存儲(chǔ)一些與整個(gè)應(yīng)用相關(guān)數(shù)據(jù),例如應(yīng)用版本,應(yīng)用登錄賬戶,數(shù)據(jù)緩存等。
利用Application對(duì)象存儲(chǔ)公共數(shù)據(jù)或數(shù)據(jù)傳遞
在android開發(fā)中,activity的切換是很頻繁的,差不多可以和一個(gè)網(wǎng)站中不同網(wǎng)頁(yè)之間的切換一樣。那么不同的activity之間需要存儲(chǔ)公共信息(如只有一個(gè)當(dāng)前登錄用戶)以及數(shù)據(jù)傳遞等。下面就是一種利用Application對(duì)象存儲(chǔ)登錄用戶信息的方法,可以發(fā)現(xiàn)這很方便不同的activity獲取登錄用戶信息
public class MyApplication extends Application {
public String appVersion = "v1.0";
//當(dāng)前登錄用戶
private User loginUser = new User();
public User getLoginUser(){
return loginUser;
}
public void userLogin(User user){
loginUser.setUserId(user.getUserId());
loginUser.setUserName(user.getUserName());
}
public void userLogout(){
loginUser = new User();
}
}
public class MainActivity extends Activity {
private MyApplication mApplication;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 獲取整個(gè)應(yīng)用的Application對(duì)象
// 在不同的Activity中獲取的對(duì)象是同一個(gè)
mApplication = (MyApplication) getApplication();
}
/**
* 一般只有在登錄界面中設(shè)置登錄用戶信息,在其他的Activity中
* 只要通過Application對(duì)象就可以獲取登錄用戶信息
*/
private void login(){
User user = new User();
user.setUserId(1);
user.setUserName("Raysmond");
// 將登錄用戶信息保存到Application對(duì)象中
mApplication.userLogin(user);
}
}
可以發(fā)現(xiàn)通過Application對(duì)象,在不同的Activity之間可以方便地實(shí)現(xiàn)數(shù)據(jù)共享。這比在每次切換activity時(shí)通過Bundle傳遞數(shù)據(jù)方便多了。
以上就是使用Android Application的開發(fā)文章,關(guān)于Android 開發(fā)的文章本站還很多,希望大家搜索參閱,感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!
相關(guān)文章
Android自定義ScrollView實(shí)現(xiàn)放大回彈效果實(shí)例代碼
本篇文章主要介紹了Android自定義ScrollView實(shí)現(xiàn)放大回彈效果實(shí)例代碼,具有一定的參考價(jià)值,有興趣的可以了解一下。2017-03-03
分享安裝Android Studio3.6的經(jīng)驗(yàn)教訓(xùn)
這篇文章主要介紹了Android Studio3.6的安裝錯(cuò)誤問題及解決方法,非常值得大家參考,現(xiàn)把整個(gè)過程分享到腳本之家平臺(tái),需要的朋友參考下吧2020-02-02
Android如何實(shí)現(xiàn)APP自動(dòng)更新
現(xiàn)在一般的android軟件都是需要不斷更新的,當(dāng)你打開某個(gè)app的時(shí)候,如果有新的版本,它會(huì)提示你有新版本需要更新。該小程序?qū)崿F(xiàn)的就是這個(gè)功能。有需要的朋友們可以參考借鑒。2016-08-08
Android彈出dialog后無法捕捉back鍵的解決方法
這篇文章主要為大家詳細(xì)介紹了Android彈出dialog后無法捕捉back鍵的解決方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-09-09
android仿即刻點(diǎn)贊文字部分的自定義View的示例代碼
本篇文章主要介紹了android仿即刻點(diǎn)贊文字部分的自定義View的示例代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-11-11
Android編程程序?qū)崿F(xiàn)一鍵鎖屏的方法講解
今天小編就為大家分享一篇關(guān)于Android編程程序?qū)崿F(xiàn)一鍵鎖屏的方法講解,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧2019-03-03

