日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Android >内容正文

Android

Android应用开发—Application

發(fā)布時間:2023/12/19 Android 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Android应用开发—Application 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

What is Application

Application和Activity,Service一樣是android框架的一個系統(tǒng)組件,當android程序啟動時系統(tǒng)會創(chuàng)建一個application對象,用來存儲系統(tǒng)的一些信息。通常我們是不需要指定一個Application的,這時系統(tǒng)會自動幫我們創(chuàng)建,如果需要創(chuàng)建自己的Application,也很簡單創(chuàng)建一個類繼承 Application并在manifest的application標簽中進行注冊(只需要給Application標簽增加個name屬性把自己的 Application的名字定入即可)。

android系統(tǒng)會為每個程序運行時創(chuàng)建一個Application類的對象且僅創(chuàng)建一個,所以Application可以說是單例 (singleton)模式的一個類。且application對象的生命周期是整個程序中最長的,它的生命周期就等于這個程序的生命周期。因為它是全局的單例的,所以在不同的Activity,Service中獲得的對象都是同一個對象。所以通過Application來進行一些數(shù)據(jù)傳遞,數(shù)據(jù)共享,數(shù)據(jù)緩存等操作。

Data passing between components using Application

假如有一個Activity A,跳轉(zhuǎn)到 Activity B,并需要推薦一些數(shù)據(jù),通常的作法是Intent.putExtra() 讓Intent攜帶,或者有一個Bundle把信息加入Bundle讓Intent推薦Bundle對象,實現(xiàn)傳遞。但這樣作有一個問題在于,Intent和Bundle所能攜帶的數(shù)據(jù)類型都是一些基本的數(shù)據(jù)類型,如果想實現(xiàn)復雜的數(shù)據(jù)傳遞就比較麻煩了,通常需要實現(xiàn) Serializable或者Parcellable接口。這其實是Android的一種IPC數(shù)據(jù)傳遞的方法。如果我們的兩個Activity在同一個進程當中為什么還要這么麻煩呢,只要把需要傳遞的對象的引用傳遞過去就可以了。

基本思路是這樣的。在Application中創(chuàng)建一個HashMap,以字符串為索引,Object為value這樣我們的HashMap就可以存儲任何類型的對象了。在Activity A中把需要傳遞的對象放入這個HashMap,然后通過Intent或者其它途經(jīng)再把這人索引的字符串傳遞給Activity B,Activity B就可以根據(jù)這個字符串在HashMap中取出這個對象了。只要再向下轉(zhuǎn)個型 ,就實現(xiàn)了對象的傳遞。

Data caching in Application

我一般會習慣在application中建立兩個HashMap一個用于數(shù)據(jù)的傳遞,一個用于緩 存一些數(shù)據(jù)。比如有一個Activity需要從網(wǎng)站獲取一些數(shù)據(jù),獲取完之后我們就可以把這個數(shù)據(jù)cache到Application 當中,當頁面設置到其它Activity再回來的時候,就可以直接使用緩存好的數(shù)據(jù)了。但如果需要cache一些大量的數(shù)據(jù),最好是cache一些 (軟引用)SoftReference ,并把這些數(shù)據(jù)cache到本地rom上或者sd卡上。如果在application中的緩存不存在,從本地緩存查找,如果本地緩存的數(shù)據(jù)也不存在再從網(wǎng) 絡上獲取。

Android Application的作用

總結(jié)

以上是生活随笔為你收集整理的Android应用开发—Application的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。