溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

10天學(xué)通Android開發(fā)(2-2)-核心組件Service創(chuàng)建

發(fā)布時間:2020-07-06 07:57:10 來源:網(wǎng)絡(luò) 閱讀:365 作者:wanxl 欄目:移動開發(fā)

有些程序不需要交互,在后臺運(yùn)行,并可長時間運(yùn)行,不被操作系統(tǒng)殺死,這就是組件Service

 

  1. 聲明Service,新建class,MyService,擴(kuò)展自Service

  2. AndroidManifest中配置, Application中添加Serivice,選擇MySerivice

    實(shí)際添加了一行:

    <serviceandroid:name="MyService"></service>

  3. 添加二個按鈕,啟動Service和停止Service

     

    <Button

           android:id="@+id/btnStartService"

            android:layout_width="wrap_content"

           android:layout_height="wrap_content"

            android:text="啟動Servive"/>

     

        <Button

           android:id="@+id/btnStopService"

           android:layout_width="wrap_content"

           android:layout_height="wrap_content"

           android:text="停止Service" />

    4)代碼中添加二按鈕的定義:

private Button btnStartService,btnStopService;

  

    @Override

    protectedvoid onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_main);

        btnStartService=(Button) findViewById(R.id.btnStartService);

        btnStopService=(Button) findViewById(R.id.btnStopService);

        

       

}

5)添加兩按鈕的監(jiān)聽事件,鼠標(biāo)放紅線處,可自動生成:

(1)btnStartService.setOnClickListener(this);

(2)public class MainActivity extendsActionBarActivity implements OnClickListener

(3)@Override

         publicvoid onClick(View v) {

                  //TODO Auto-generated method stub

                   

                  }

6) 具體onClick內(nèi)容:

@Override

         publicvoid onClick(View v) {

                  //TODO Auto-generated method stub

                   switch(v.getId()){

                   case R.id.btnStartService:

                   

                   break;

        case R.id.btnStopService:

                   

                   break;

        default:

                break;

                  }

7)啟動Service,需要定義Intent,:

private Intent serviceIntent;

并創(chuàng)建實(shí)例:

 serviceIntent=newIntent(this,MyService.class);

8) 在我們的Service重寫二方法,創(chuàng)建和銷毀:

@Override

         publicvoid onCreate(){

                  System.out.println("創(chuàng)建好了");

                  super.onCreate();

         }

        

         @Override

         publicvoid onDestroy(){

                  System.out.println("被銷毀了");

                  super.onDestroy();

         }      

9) 當(dāng)前Activity銷毀,Service還會再運(yùn)行,通過設(shè)置->應(yīng)用程序->運(yùn)行的程序或服務(wù),可看到。


向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI