2011-05-04 38 views
1

嗨我傳遞一些數據的意圖來啓動一個服務,但我無法檢索我的字符串,因爲我的OnCreate()方法的服務首先被調用,我有它的所有工作,但我無法檢索意圖這種方法中的數據..Android:檢索服務中的Intent數據?

回答

2

意圖額外用於命令(onStartCommand()),或者可能與請求綁定(onBind())。沒有與簡單創建服務相關聯的Intent

重寫您的服務以執行由Intent臨時演員在onStartCommand()onBind()中定製的工作。或者,考慮是否使用Intent臨時演員是正確的使用方法 - 例如,我預計需要的所有時間都可以在數據庫或SharedPreferences中使用。

+0

我使用onStart方法,並把它放在它的所有代碼bt調用服務的按鈕,直到我的文件在服務器上uploded,即直到服務完成。 – Harinder 2011-05-04 10:41:14

+0

@Harinder:那麼你應該在某處使用後臺線程,可能在服務內部。也許考慮創建一個'IntentService'而不是一個常規的'Service'。 – CommonsWare 2011-05-04 10:43:21

3

對此方法的每次調用都將導致相應的對目標服務的onStartCommand(Intent,int,int)方法的調用,其意圖在此處給出。這提供了一種便捷的方式將作業提交給服務,而無需綁定並調用其接口。 Android: retrieving an extra from intent in service?

相關問題