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

歡迎訪問 生活随笔!

生活随笔

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

Android

Android Lifecycle组件使用

發布時間:2024/9/30 Android 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Android Lifecycle组件使用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Android Lifecycle組件使用

Android中很多組件都具備生命周期功能,系統框架會在適合時機調用相應的生命周期方法,作為開發者在開發業務時可能需要爭對組件的生命周期需要作出相應的處理;比如onDestroy需要釋放資源,防止內存泄漏甚至引發應用崩潰;

Android的生命周期Lifecycle就是用來解決該問題,同時可以將業務處理代碼從Fragment或Activity相關的生命周期方法中分離,這樣寫出的代碼更有條理性便于代碼后期維護

1. 集成

添加Lifecycle輕量級庫

implementation "android.arch.lifecycle:runtime:1.1.1" implementation 'com.android.support:appcompat-v7:28.0.0'

2. 使用

public class HomeActivity extends AppCompatActivity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);getLifecycle().addObserver(new HomeObserver());} }public class HomeObserver implements LifecycleObserver {@OnLifecycleEvent(Lifecycle.Event.ON_CREATE)void onCreate() {Log.d("dbs", "===onCreate===");}@OnLifecycleEvent(Lifecycle.Event.ON_RESUME)void onResume() {Log.d("dbs", "===onResume===");}@OnLifecycleEvent(Lifecycle.Event.ON_DESTROY)void onDestroy() {Log.d("dbs", "===onDestory===");} }

啟動APP,查看控制臺輸出日志

2020-03-21 21:17:23.850 D/dbs: ===onCreate=== 2020-03-21 21:17:23.859 D/dbs: ===onResume===

點擊返回

2020-03-21 21:17:27.860 D/dbs: ===onDestory===

大家可以看到使用非常簡單,如果需要觀察HomeActivity生命周期,只需要將觀察者(HomeObserver)添加到Lifecycle中即可;一旦HomeActivity生命周期發生變化,HomeObserver就能被感知到,自動觸發相關方法

3. 疑問

HomeObserver是如何感知到HomeActivity生命周期呢?

下篇我將從源碼角度進行剖析HomeActivity的生命周期事件是如何轉發到HomeObserver中
Android Lifecycle源碼解析(一)

總結

以上是生活随笔為你收集整理的Android Lifecycle组件使用的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。