第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

安卓核心應用是什么

安卓核心應用是什么

幕布斯6054654 2019-03-13 09:09:43
安卓核心應用是什么 
查看完整描述

2 回答

?
拉風的咖菲貓

TA貢獻1995條經(jīng)驗 獲得超2個贊

核心應用是系統(tǒng)運行的支持軟件,如果意外停止,您可以重啟手機。
Android應用程序沒有唯一的啟動入口(如C語言中的main()函數(shù)入口),一個Android應用程序是由多個不同的組件組合而成,組件之間通過Intent來實現(xiàn)通信。
Android系統(tǒng)的基本組件包括Activity,Service, BroadcastReceiver和ContentProvider等,此外還包括專門負責在基本組件之間傳遞消息的Intent組件。所有組件都必須在AndroidManifest.xml文件中聲明。

一、Activity —— 應用表示層( 基類 Activity )
一個活動表示一個可視化的用戶界面,關注一個用戶從事的事件。例如,一個活動可能表示一個用戶可選擇的菜單項列表,或者可能顯示照片連同它的標題。一個文本短信應用程序可能有一個活動,顯示聯(lián)系人的名單發(fā)送信息;第二個活動,寫信息給選定的聯(lián)系人;其他活動,重新查看舊信息或更改設置。雖然他們一起工作形成一個整體的用戶界面,但是每個活動是獨立于其他活動的。每一個都是作為Activity基類的一個子類的實現(xiàn)。
應用程序中的每個屏幕都是通過繼承和擴展基類 Activity 來實現(xiàn)的。
同一應用中的每個 Activity 是相互獨立的。程序啟動后顯示的第一幅畫面是應用程序的第一個 Activity (默認窗口),而后可以根據(jù)需要從這個 Activity 啟動另一個新的 Activity 。
Activity 利用 View 來實現(xiàn)應用中的 GUI (用戶直接通過 GUI 和應用程序做交互)。 Activity 窗口內的可見內容通過基類 View 提供。使用 Activity.setContentView() 方法設置當前 Activity 中的 View 對象。
二、Service —— 沒有可見的用戶界面,但能夠長時間運行于后臺( 基類 Service )
一個服務沒有一個可視化用戶界面,而是在后臺無期限地運行。例如一個服務可能是播放背景音樂而用戶做其他一些事情,或者它可能從網(wǎng)絡擴取數(shù)據(jù),或計算一些東西并提供結果給需要的活動(activities)。每個服務都繼承自Service基類。
運行于應用程序進程的主線程中,因此 Service 不會阻塞其他組件和用戶界面。
Service 是不能自己啟動的,必須通過 Context 對象(如一個 Activity )調用 startService 或 bindService 方法來啟動(用這兩種方法啟動的 Service 的生命周期不同)。
三、Broadcast Receiver —— 用戶接收廣播通知的組件( 基類 BroadcastReceiver )

一個廣播接收者是這樣一個組件,它不做什么事,僅是接受廣播公告并作出相應的反應。許多廣播源自于系統(tǒng)代碼,例如公告時區(qū)的改變、電池電量低、已采取圖片、用戶改變了語言偏好。應用程序也可以發(fā)起廣播,例如為了他其他程序知道某些數(shù)據(jù)已經(jīng)下載到設備且他們可以使用這些數(shù)據(jù)。一個應用程序可以有任意數(shù)量的廣播接收者去反應任何它認為重要的公告。所有的接受者繼承自BroadcastReceiver基類。
Android 中的廣播要么來自于系統(tǒng),要么來自普通應用程序。
很多事件都可能導致系統(tǒng)廣播,如手機所在時區(qū)發(fā)生變化,電池電量低,用戶改變系統(tǒng)語言設置等。
四、Content Provider 為解決應用程序間數(shù)據(jù)通信、共享的問題(基類 ContentProvider )
內容提供者(content provider)使一個應用程序的指定數(shù)據(jù)集提供給其他應用程序。這些數(shù)據(jù)可以存儲在文件系統(tǒng)中、在一個SQLite數(shù)據(jù)庫、或以任何其他合理的方式。內容提供者繼承自ContentProvider 基類并實現(xiàn)了一個標準的方法集,使得其他應用程序可以檢索和存儲數(shù)據(jù)。然而,應用程序并不直接調用這些方法。相反,替代的是它們使用一個ContentResolver對象并調用它的方法。ContentResolver能與任何內容提供者通信,它與提供者合作來管理參與進來的進程間的通信。
在 Android 中,每個應用程序都是用自己的用戶 ID 并在自己的進程中運行。這樣的好處是,可以有效地保護系統(tǒng)及應用程序,避免被其他不正常德應用程序所影響,每個進程都擁有獨立的進程地址空間和虛擬空間。
一旦需要以上 4 種 Android 應用程序基本組件完成請求, Android 會首先確認該組件所在進程是否運行,如果沒有運行, Android 將先啟動進程,同時確認被請求組件的實例是否存在,否則將創(chuàng)建一個新的組件實例。
五、Intent —— 連接組件的紐帶
以上 4 種基本組件中,除了 Content Provider 是通過 Content Resolver 激活外,其他 3 種組件 Activity 、 Service 和 Broadcast Receiver 都是由 Intent 異步消息激活的。


 


查看完整回答
反對 回復 2019-03-17
  • 2 回答
  • 0 關注
  • 475 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號