我申請了Service
。此服務啓動工作人員Thread
,並且此線程需要一個指向Service實例的指針(它調用此服務的某些方法)。Android:如何獲得指向服務的指針?
現在我只是通過從Service
的onCreate()
方法this
指針我自己Runnable
的構造,但它工作正常,直到我關閉我的應用程序。當應用程序重新啓動時,指針變得非常錯誤。我仍然無法弄清楚什麼是特別錯誤,但它似乎像指向我的服務實例的指針是一個奇怪的另一個服務實例的指針,並且指向我的Runnable
也是錯誤的。
如果我殺我的應用程序,然後下次它工作正常,但重啓後,同樣的問題正在發生。
我懷疑我不能從服務的onCreate()
方法傳遞this
指針,但後來,我怎樣才能指針設置爲來自從onCreate()
方法啓動線程我服務的實例嗎?
UPDATE:我剛纔發現我有完全一樣的singleton issue。 Runnable
是一個單身人士。但我仍然無法找到任何好的解決方案,除非不在Android中使用單例。也許,有什麼建議?
謝謝。對不起,錯誤的術語,但關於一個「應用程序」:在系統設置我可以去完全「應用程序管理」,我可以停止(不關閉,是的,但停止)我安裝的「應用程序」。我認爲合適的期限是活動?而且,我想回顧一下:一般來說,是否可以將'this'引用傳遞給'Service.onCreate()'中的某個東西? – 2011-12-28 21:26:43
@dimonomid:「在系統設置中,我可以準確地進行」應用程序管理「,並且我可以停止(不關閉,是,但是停止)我安裝的」應用程序「。」 - 用戶通常不會這樣做。 「是否可以將此引用傳遞給Service.onCreate()中的某些內容?」 - 一般來說,是的。 – CommonsWare 2011-12-28 21:37:53
我沒有說用戶應該這樣做,我只是試圖解釋爲什麼我使用「應用」術語。那麼,我發現了一個bug,再次感謝:有一個單例問題。我更新了我的問題,可否請您查看此更新並提出建議? – 2011-12-28 21:43:38