我想實現一個Service
,其行爲像一個Singleton
。意向服務單例
我需要我的應用程序來檢查屏幕是否鎖定,然後啓動Listener
IntentService
。如果屏幕解鎖,它將終止Listener
服務。 我創建了一個ScreenLockService
,這是一個IntentService
,如果用戶選中了開/關框,則會被Home
活動調用,因爲即使應用程序未運行,我也要運行Listener
。
因此,Home
活動運行並停止ScreenLockService
服務,該服務將運行並停止Listener
服務。
我的問題是,Home
Activity
創建ScreenLockService
多個實例,它也創建Listener
的多個實例。
所以,我想這兩個IntentServices
作爲Singletons
運行,但我不知道如何這樣做。
我已經簽出了一堆教程,但他們要麼過時或不適合IntentServices如: http://www.devahead.com/blog/2011/06/extending-the-android-application-class-and-dealing-with-singleton/ Singleton in Android
我可以張貼的我有什麼必要時一些示例代碼,但我真正想要的只是一個方法。
一個'Service'是一個單例:你不能有兩個同一個'Service'的實例 – pskink
你是否在onPause,onResume的活動中停止和啓動服務? – Pablo
@Pablo不,我創建'ScreenLockService'意圖,並在'Home'活動的onCreate中啓動它。然後,如果屏幕被鎖定,我開始「偵聽器」服務。 – Ausche