2.Android四大組件依然堅挺,這是基礎(chǔ)并且沒有改變的跡象
Activity 服務(wù) 廣播接收器 內(nèi)容提供程序
2.1 Service ,Google也意識到存在的靈活性問題,但是由于使用廣泛,所以并不打算改變
目前使用服務(wù)的應(yīng)用類型:音樂、動態(tài)壁紙、通知偵聽器、屏幕保護程序、輸入方法、無障礙功能服務(wù)等
2.2 廣播接收器
廣播接收器更常見的用途只是作為通向其他組件的通道,旨在執(zhí)行極少量的工作。例如,它可能會根據(jù)帶 JobScheduler
的事件調(diào)度 JobService
來執(zhí)行某項工作
廣播接收器作為 BroadcastReceiver
的子類實現(xiàn),并且每條廣播都作為 Intent
對象進行傳遞
JobScheduler
Note: Beginning with API30 (Build.VERSION_CODES.R), JobScheduler will throttle runaway applications. Calling schedule(android.app.job.JobInfo) and other such methods with very high frequency is indicative of an app bug and so, to make sure the system doesn't get overwhelmed, JobScheduler will begin to throttle apps that show buggy behavior, regardless of target SDK version.
2.3 內(nèi)容提供者
對系統(tǒng)而言,內(nèi)容提供程序是應(yīng)用的入口點,用于發(fā)布由 URI 架構(gòu)識別的已命名數(shù)據(jù)項
3.對于組件的啟動方式
Service在 Android 5.0(API 級別 21)及更高版本中,可以使用JobScheduler 來調(diào)度,當(dāng)然低版本中依然使用startService或bingService的方式操作
注意:如果您使用 Intent 來啟動 Service,請使用顯式 Intent 來確保應(yīng)用的安全性。使用隱式 Intent 啟動服務(wù)存在安全隱患,因為您無法確定哪些服務(wù)將響應(yīng) Intent,且用戶無法看到哪些服務(wù)已啟動。從 Android 5.0(API 級別 21)開始,如果使用隱式 Intent 調(diào)用 bindService(),系統(tǒng)會拋出異常。請勿為您的服務(wù)聲明 Intent 過濾器。
4.版本兼容問題
如果應(yīng)用包含某個功能或者設(shè)備的調(diào)用,可以在清單中進行配置
<manifest ... > <uses-feature android:name="android.hardware.camera.any" android:required="true" /> <uses-sdk android:minSdkVersion="7" android:targetSdkVersion="19" /> ... </manifest>通過示例中所述的聲明,沒有相機且 Android 版本低于 2.1 的設(shè)備將無法從 Google Play 安裝您的應(yīng)用。不過,您可以聲明您的應(yīng)用使用相機,但并不要求必須使用。在此情況下,您的應(yīng)用必須將 required
屬性設(shè)置為 false
,并在運行時檢查設(shè)備是否擁有相機,然后根據(jù)需要停用任何相機功能
參考文章:官方文檔: https://developer.android.google.cn/guide/components/fundamentals
當(dāng)前題目:Android復(fù)習(xí)(一)基礎(chǔ)知識-創(chuàng)新互聯(lián)
當(dāng)前鏈接:http://www.chinadenli.net/article18/ccigdp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供小程序開發(fā)、微信小程序、動態(tài)網(wǎng)站、虛擬主機、網(wǎng)站設(shè)計公司、用戶體驗
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)