2013-05-17 67 views
0

我在首次啓動時創建數據庫,並在按鈕上單擊我將在表中插入值。現在在該按鈕上單擊自身我將通過startService()方法啓動服務,該服務將不斷檢查特定列值表永遠,直到我明確地停止服務。我的問題是如何啓動並保持此服務在第一次插入點擊後運行,我做什麼?謝謝。Android-如何在第一次應用程序啓動後啓動並保持服務運行?

Button save=(Button)findViewById(R.id.save); 
    save.setOnClickListener(new View.OnClickListener() { 

     public void onClick(View v) { 
       //MainActivity ma=new MainActivity(); 
       event=spinner.getSelectedItem().toString(); 
       message=ed1.getText().toString(); 
       MainActivity.myDataBase.openDatabase("/data/data/package/databases/table", null,MainActivity.myDataBase.OPEN_READWRITE); 
       MainActivity.myDataBase.execSQL("INSERT INTO " + 
       MainActivity.tablename + 
         " Values ('"+ val1 +"','"+ val2 +"','"+ val3 +"','"+ val4 +"','"+ val5 +"');"); 

     } 

    }); 
} 

是「插入」我想入手的服務「選擇」從我剛插入記錄到表中特定列,讓該服務運行forever.Also它不應該再次重新啓動按我經過時那個按鈕來保存另一個recors。 PS:我可以製作另一個按鈕來啓動服務,但我希望一鍵完成所有活動,而不會損害用戶體驗。

+0

解釋更加深入,並表現出你已經嘗試了什麼。 –

+0

。我的問題是如何啓動並保持此服務在第一次插入點擊後運行?並點擊按鈕本身我將啓動一個服務startService() –

+0

@AnkitMakwana是的我知道這一點,但我懷疑服務是否會重新啓動,同時通過單擊該按鈕插入記錄第二次和以下時間? – mithil

回答

0

您需要繼承Service類的子類並使用startService調用此類。如果您已經成功完成此操作,則不需要額外的步驟。但是,Android可能會暫時關閉它以節省資源,因此如果您想降低發生這種情況的可能性,請在啓動後調用服務的startForeground方法。

+0

謝謝你的建議,我會試試看。 – mithil

相關問題