您好,登錄后才能下訂單哦!
有些程序不需要交互,在后臺運(yùn)行,并可長時間運(yùn)行,不被操作系統(tǒng)殺死,這就是組件Service
聲明Service,新建class,MyService,擴(kuò)展自Service
AndroidManifest中配置, 在Application中添加Serivice,選擇MySerivice
實(shí)際添加了一行:
<serviceandroid:name="MyService"></service>
添加二個按鈕,啟動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ù),可看到。
免責(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)容。