Android application類相關記錄
本篇文章記錄一些Android中application類的作用,內容介紹。
Android系統會為每個程式執行時建立一個Application類的物件且僅建立一個,所以Application可以說是單例 (Singleton)模式的一個類。且 == Application 物件的生命週期是整個程式中最長的,它的生命週期就等於這個程式的生命週期== 。因為它是全域性唯一的,所以在不同的Activity,Service中獲得的物件都是同一個物件。所以通過 Application 來進行一些:資料傳遞、資料共享、資料快取等操作
這裡面的重點就是:全域性唯一;可以進行資料傳遞,共享,快取等操作。
重寫application生命週期事件
-
public void onCreate()
在應用程式建立的時候被呼叫,可以實現這個這個方法來建立和例項化任何應用程式狀態變數或共享資源。還可以在這個方法裡面得到 Application 的單例。 -
public void onTerminate ()
當終止應用程式物件時呼叫,不保證一定被呼叫,當程式是被核心終止以便為其他應用程式釋放資源,那麼將不會提醒,並且不呼叫應用程式的物件的onTerminate方法而直接終止程式。 -
public void onLowMemory()
當系統資源匱乏的時候,我們可以在這裡可以釋放額外的記憶體, 這個方法一般只會在後臺程式已經結束,但前臺應用程式還是缺少記憶體時呼叫。可以重寫這個方法來清空快取或者釋放不必要的資源。 -
public void onTrimMemory(int level)
當執行時決定當前應用程式應該減少其記憶體開銷時(通常在進入後臺執行的時候)呼叫,包含一個 level 引數,用於提供請求的上下文。 -
public void onConfigurationChanged (Configuration newConfig)
與 Activity 不同,配置改變時,應用程式物件不會被終止和重啟。如果應用程式使用的值依賴於特定的配置,則重寫這個方法來載入這些值,或者在應用程式級處理配置值的改變。
自定義application
用自定義的application,這樣可以達到自己想要的效果。方法如下:
- 建立自定義application類,繼承application類即可:
- 在AndroidManifest.xml檔案中的application節點上,引用:
獲得包名:
在獲取application物件的時候,我們如果自己寫獲取物件的方法,是不需要單例的,因為application類全域性只有一個,它本身就是一個單例,所以我們不需要用單例去保護它。
相關文章
- Laravel 記錄相關Laravel
- ePWM相關記錄
- linux相關記錄Linux
- Android效能優化相關的學習記錄(1)Android優化
- Openwrt(LUCI相關記錄1)
- Spring相關問題記錄Spring
- QT/c++相關記錄QTC++
- mysql load 相關實驗記錄MySql
- git相關操作,個人記錄Git
- Medium裡面的react相關文章記錄React
- Laravel佇列相關問題記錄Laravel佇列
- Android Mk Application Mk make makefile筆記AndroidAPP筆記
- 記錄Java執行緒相關知識Java執行緒
- 【演算法】HashMap相關要點記錄演算法HashMap
- VSCode Lite Edit 主題的相關CSS記錄VSCodeCSS
- StringBuilder類相關操作UI
- linux伺服器使用docker部署ES相關記錄Linux伺服器Docker
- Android 手勢相關(一)Android
- Android 手勢相關(二)Android
- Android密碼學相關Android密碼學
- Android面試相關 - IntentServiceAndroid面試Intent
- win登錄檔相關
- ELK批量刪除索引及叢集相關操作記錄索引
- Android 二維碼相關(二)Android
- Android 二維碼相關(一)Android
- android 【儲存相關】preserveLegacyExternalStorage,requestLegacyExternalStorageAndroid
- Android聲音相關總結Android
- Android-Application詳解AndroidAPP
- 二維碼相關工具類
- 與數學相關的類
- 時間相關的工具類
- php相關筆記PHP筆記
- 路由相關筆記路由筆記
- GlusterFS分散式儲存叢集部署記錄-相關補充分散式
- 記錄資料相關的演算法整理(持續更新)演算法
- Android開發教程 - 使用Data Binding Android Studio不能正常生成相關類/方法的解決辦法Android
- Android Studio3.1.2及Android P相關問題Android
- Android進階知識:Handler相關Android