2013-12-19 69 views
6

我有它自己的進程的服務返回null,我已經聲明它體現這樣的返回null,我可以忘記?getApplicationContext()在服務

public int onStartCommand(Intent intent, int flags, int startId) { 
    android.os.Debug.waitForDebugger(); 
    Context mContext = getApplicationContext(); 
    return Service.START_STICKY; 
} 

,我開始會這樣:

startService(new Intent(getApplicationContext(), PointService.class)); 

Myactivity OnCreate

什麼想法?

+0

我想你需要的是間通信 http://developer.android.com/guide/components/processes -and-threads.html#IPC –

+2

服務是上下文,爲什麼你需要應用程序上下文? – FunkTheMonk

+0

@FunkTheMonk我怎麼能得到像字符串,drawables等應用程序資源? – whizzzkey

回答

5

您運行的Service在不同的進程,因此與實際應用過程中沒有溝通..

嘗試從您的服務

android:process=":pointservice" 

刪除此行您的應用程序完成後的應用上下文變爲空。在大多數情況下,不需要在不同的流程中運行服務。也不推薦。

有關更多信息,請點擊這裏

  1. Service in another process
  2. service reference Example2
+0

請告訴我爲什麼我應該在另一個過程中啓動服務? – whizzzkey

+0

這兩個例子清楚地解釋了它..通過.. –

相關問題