關鍵詞:Broadcast, 生命周期,繼承
本項目基本思路:
1.先建立一個ActivityCollector類用于管理所有的活動; 2.然後建立一個BaseActivity類作為所有活動的父類: 父類功能有二: 其一,用于輔助統籌管理本項目的所有活動。調用ActivityCollector類的方法,如類中的onCreate和onDestroy方法,所有從父類派生出去的子類,在建立時會被加入ActivityCollector的數組activities裡面,銷毀時則會從裡面被移除;用數組activities統籌本項目的活動,可以很容易實作銷毀所有活動的功能; 其二,随後我們将重寫本類的onResume和onPause方法,所有從父類派生出去的子類,在棧頂狀态(onResume()方法執行之後的處于準備互動的狀态)都會注冊一個接收器,接收廣播資訊,收到廣播資訊後執行onReceive方法,彈出對話框,随後銷毀所有活動,重新啟動LoginActivity,實作強制下線;在失去棧頂位置的時候,則将接收器銷毀;這樣強制下線的功能就不會依附于任何的界面,不管是在程式的任何地方,隻需要發出這樣一條廣播,就可以完成強制下線的操作了; 3.建立LoginActivity,作為登入界面,使用者輸入密碼和賬号,正确則通過跳轉到MainActivity,失敗則Toast提示; 4.MainActivity,簡單的一個按鈕,用于發送廣播;源碼位址(碼雲): Lwp/AndroidDemo - 碼雲 Gitee.com
參考文獻:《第一行代碼(第2版)》
主要步驟:
先建立一個ActivityCollector類用于管理所有的活動:
右鍵包->new->Java Class:
