真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Android中Service的理解與使用

Android四大大組件

成都創(chuàng)新互聯(lián)公司成都網(wǎng)站建設(shè)按需開發(fā)網(wǎng)站,是成都網(wǎng)站營銷推廣公司,為銅雕雕塑提供網(wǎng)站建設(shè)服務(wù),有成熟的網(wǎng)站定制合作流程,提供網(wǎng)站定制設(shè)計服務(wù):原型圖制作、網(wǎng)站創(chuàng)意設(shè)計、前端HTML5制作、后臺程序開發(fā)等。成都網(wǎng)站設(shè)計熱線:028-86922220

Activity:帶界面的。

BroadcastReceiver:廣播接收者,不帶界面,當(dāng)對應(yīng)的廣播事件發(fā)出來的時候,它就可以收到。

ContentProvider:內(nèi)容提供者,主要用于暴露數(shù)據(jù)給其他的應(yīng)用程序去使用。

Service:服務(wù)可以在后臺運(yùn)行的,不帶界面的。

1.Service服務(wù)

1.1.服務(wù)的寫法: 

第一步:寫個類去繼承服務(wù)Service

第二步:重寫服務(wù)的oncreate,ondestroy方法,OnCreate:服務(wù)對象創(chuàng)建的時候會執(zhí)行Ondestroy: 服務(wù)對象銷毀的時候會執(zhí)行。

第三步: 服務(wù)需要到清單文件中注冊. 

2.為什么需要服務(wù):需要去翻看文檔,Java的doc的文檔,一般都是程序自動生成的,在看的時候,一般都去到文檔的目錄下找一個叫做index.html的文檔。這個是一個常識。

Android系統(tǒng)會讓一個應(yīng)用程序的進(jìn)程活的盡可能的長,但是也會去回收老的進(jìn)程以便于新的或者更加重要的進(jìn)程可以順暢的跑起來。

為了能夠決定哪些進(jìn)程先被殺死,哪些后被殺死,android系統(tǒng)中將進(jìn)程按照優(yōu)先級做了劃分,優(yōu)先級最低最先被干掉.然后以此類推,從而去回收系統(tǒng)的資源。

進(jìn)程按照優(yōu)先級分為5種:

第一種:Android中Service的理解與使用前臺進(jìn)程,一個應(yīng)用程序有組件正在運(yùn)行著,獲得了焦點,可以響應(yīng)用戶的點擊觸摸事件。

第二種:Android中Service的理解與使用可視進(jìn)程,一個應(yīng)用程序有組件正在運(yùn)行著,但是失去了焦點,只是還看得見。

第三種:Android中Service的理解與使用服務(wù)進(jìn)程,如果一個應(yīng)用程序中一個service在后臺長期運(yùn)行著,那么就可以稱之為服務(wù)進(jìn)程。

第四種:Android中Service的理解與使用后臺進(jìn)程,一個應(yīng)用程序中沒有service在后臺運(yùn)行,只有activity其他的組件在切換到了后臺,那么就是屬于后臺進(jìn)程。

第五種:Android中Service的理解與使用空進(jìn)程,一個應(yīng)用程序中沒有任何組件在運(yùn)行著,那么就是屬于空進(jìn)程。

3.開啟服務(wù)的生命周期:服務(wù)創(chuàng)建的時候會調(diào)用oncreate的方法 然后服務(wù)就一直在后臺運(yùn)行著,開啟服務(wù)的時候會調(diào)用startService,那么服務(wù)的onstartCommand會執(zhí)行,多次開啟服務(wù),并不會多次創(chuàng)建服務(wù),服務(wù)只能被創(chuàng)建一次, 多次開啟只會重復(fù)調(diào)用onstartCommand,服務(wù)銷毀的之后會調(diào)用ondestroy方法。

開啟服務(wù),服務(wù)后會一直在后臺運(yùn)行著,與開啟服務(wù)的組件activity沒有關(guān)系了。

4.本地服務(wù)中的方法調(diào)用:本地服務(wù)的調(diào)用一般用的不多,大家可以將遠(yuǎn)程服務(wù)調(diào)用的代碼好好寫寫。

5.遠(yuǎn)程服務(wù)調(diào)用:

5.1.第一部分--支付寶:編寫支付寶的應(yīng)用程序.需要有個服務(wù).服務(wù)與早上寫的類似.A)publicclassAlipayServiceextendsServiceB)自動的會覆蓋onBind的方法C)編寫一個私有的內(nèi)部類,去繼承一個由aidl文件生成的接口的Stub內(nèi)部類。打開生成的.java類,發(fā)現(xiàn)里面有一個內(nèi)部類Stub,繼承了Binder,實現(xiàn)了IAlilpayNeixian的接口。AIDL)讓編寫的私有的內(nèi)部類(內(nèi)線)去繼承Stub類//內(nèi)線類去調(diào)用 pay的方法,從而完成支付

private class AlipayNeixianextends IAlipayNeixian.Stub{

@Override

public boolean callPay(Stringaccount, double money) {                         returnpay(account,money);                                             }  } )

在onBind方法中return內(nèi)線的實例對象

@Override

publicIBinder onBind(Intent intent){

System.out.println("onBind服務(wù)被綁定了...");

returnnewAlipayNeixian();

}

編寫服務(wù)中最終要被調(diào)用到的方法pay方法

publicbooleanpay(Stringaccount,doublemoney){

System.out.println( account +"帳號,支付了 "+money);

returntrue;  }

到清單文件中,配置AlipayService,由于一會需要讓美團(tuán)可以去激活這個服務(wù),所以需要配置隱式意圖。

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部