2014-02-21 15 views
8

我一直在尋找通過的文件,有時onStartCommand返回START_NOT_STICKY,有時它返回如下:如何在onStartCommand返回服務

@Override 
public int onStartCommand(Intent intent, int flags, int startId) { 
    // TODO Auto-generated method stub 
    return super.onStartCommand(intent, flags, startId); 
} 

我現在困惑,爲什麼一些服務與回報super.onStartCommand(intent,flags,startId);

回答

8

這一切都取決於你想要什麼。該documentation說:

爲了向後兼容,默認實現調用在onStart(意向,INT),再返回START_STICKY或 START_STICKY_COMPATIBILITY。

因此返回'super.onStartCommand'就等於返回START_STICKY。如果你不想要默認行爲,你只需返回另一個常量。

+2

謝謝你的回答..我有一個查詢..如果我沒有在我的服務中覆蓋'onStartCommand()',那麼默認情況下會返回什麼值?系統如何將我的服務重新啓動/停止? – Kushal