Android四大組件易忘易錯點

來源:互聯網
上載者:User

標籤:

1. 廣播接收者的兩種類型:

(1)系統廣播接收者,就是繼承BroadcastReceiver這個類,然後還要在資訊清單檔中註冊,註冊之後給他一個action。當系統發生了這個action時,就會執行我們所寫的那個廣播接收者的onReceive()方法裡面的代碼。

(2)自訂的廣播接收者,也是繼承BroadcastReceiver這個類,也要在資訊清單檔中註冊,但是給他的action名字是我們自己寫的,我們寫好的action字串通過set給intent,然後使用sendBroadcast把這個intent發送出去。注意資訊清單檔中的action是我們自訂的action的名字。(這個很少用)

2. 廣播接收者,是可以重新整理UI的,就是可以彈多士放音樂。

3. 進程優先順序(從高到低):(4和5很容易被殺,殺了不會重啟)

(1)前台進程:與使用者互動的activity。

(2)可見進程:onPause()的activity,可見但失去焦點。

(3)服務進程:如果是系統殺死,在記憶體充足的情況也會重啟;如果使用者手動殺死,就不會重啟。3已經不容易殺了。故後台代碼一般寫在服務中。

(4)後台進程:例如一個不可見的activity。

(5)空進程:沒有任何活動組件。

4. 服務的小知識:服務是通過error來死亡的,也就是在logcat看到的這個error是正常的。startActivity()與activity無關,bindActivity()與activity綁定。

5. bindService的作用:在一個activity(平民)中,service(領導)對象是無法拿到的,因此service裡面的非靜態方法無法調用,於是引出了bindService(中間人)。

 

Android四大組件易忘易錯點

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.