您好,登錄后才能下訂單哦!
有些程序不需要交互,在后臺運行,并可長時間運行,不被操作系統殺死,這就是組件Service
聲明Service,新建class,MyService,擴展自Service
AndroidManifest中配置, 在Application中添加Serivice,選擇MySerivice
實際添加了一行:
<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)添加兩按鈕的監聽事件,鼠標放紅線處,可自動生成:
(1)btnStartService.setOnClickListener(this);
(2)public class MainActivity extendsActionBarActivity implements OnClickListener
(3)@Override
publicvoid onClick(View v) {
//TODO Auto-generated method stub
}
6) 具體onClick內容:
@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;
并創建實例:
serviceIntent=newIntent(this,MyService.class);
8) 在我們的Service重寫二方法,創建和銷毀:
@Override
publicvoid onCreate(){
System.out.println("創建好了");
super.onCreate();
}
@Override
publicvoid onDestroy(){
System.out.println("被銷毀了");
super.onDestroy();
}
9) 當前Activity銷毀,Service還會再運行,通過設置->應用程序->運行的程序或服務,可看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。