2013-06-02 116 views
0

我已經創建了一個從android.app.Service繼承的類。如何調試Android服務

我然後使用

Intent i=new Intent(getActivity(), SavedArticlesService.class); 
getActivity().startService(i); 

一切運行正常,沒有錯誤返回從我的活動之一調用它,但服務範圍內的工作是沒有得到完成(下載的文件)。我曾嘗試在服務中設置斷點,但他們從未達到過。我也嘗試使用Log來查看LogCat中的消息,但沒有顯示任何內容。

+0

我認爲你應該使用getApplicationContext()或本代替getActivity() –

+0

是服務啓動,且作業沒有完成?或事件'onCreate()'不被調用? (因爲你說過關於LogCat「沒有顯示」) – FabiF

回答

1

事實證明,問題在於我錯誤地將它包含在AndroidManifest.xml文件中。我的服務是在服務分包所以有必要

<service android:name=".services.MyService" android:label="My Service" > </service>

0

你也許導出服務? 如果您導出服務,它將在不同的進程上運行,並且斷點不起作用。

嘗試在您的Android清單服務中設置exported="false"然後重試。

您可以在完成調試後將其設置爲導出。

雖然Logcat消息仍然可以正常工作,但也可能在不同的進程下顯示。嘗試查看「所有消息」。