2011-12-23 57 views
5

我想要綁定並連接服務,但不在android活動中。有沒有一個階級女巫可以擴展到綁定必要的上下文?在活動之外綁定和連接安卓服務

我想要做的是提供一個簡單的java庫使用android服務。我的圖書館不使用用戶界面。我只需要綁定並連接必要的一類巫婆在我的服務必須綁定

感謝必要的應用程序上下文

+0

「我想要綁定並連接服務,但不在android活動中」 - 爲什麼?沒有足夠的解釋你想要達到的目標,你最多隻會得到不完整的答案。 – CommonsWare

+0

我想要做的是提供一個簡單的Java庫使用Android服務。我的圖書館不需要用戶界面。我只需要綁定並將我的服務連接到需要綁定所需的應用程序上下文的類女巫中。 –

回答

0

只需創建無默認活動的應用程序。然後擴展基本的Service類。不要忘記在清單文件中描述它。

服務有它自己的上下文。

2

您可以從您的應用程序類獲取上下文。從應用程序派生自己的類,並給它一個靜態的getApplication方法。您可以使用它來創建服務。

請注意,如果沒有一個Activity,綁定到一個服務可能有點難 - 例如,如果你在一個BroadcastReceiver中,它將不會足夠長的時間讓你在服務之後收到回調被綁定。

+0

靜態數據成員是否會影響代碼可測試性? – sll

+0

如果你知道如何測試你的代碼,它不應該是一個問題。靜力無處不在。 – zmbq

+0

'靜態無處不在' - 是一種不好的做法,如果某些代碼引用靜態方法 - 您將無法通過任何模擬注入此引用的'static'邏輯。靜態方法適用於實用方法 – sll