6
在1.6 API中,有沒有一種方法可以確保在服務因內存壓力而被終止後調用服務的onStart()方法?從日誌看來,服務所屬的「進程」似乎重新啓動,但服務本身不是。我在onStart()方法中放置了一個Log.d()調用,並且沒有達到。「調度崩潰服務的重新啓動」,但沒有調用onStart()如下
爲了在內存壓力下測試我的服務,我從一項活動中產生了它,然後啓動Web瀏覽器並訪問Slashdot等Javascript重量級網站,直到我的服務被殺死。在logcat中寫道:
03-07 16:44:13.778: INFO/ActivityManager(52): Process com.kostmo.charbuilder.full (pid 2909) has died.
03-07 16:44:13.778: WARN/ActivityManager(52): Scheduling restart of crashed service com.kostmo.charbuilder.full/com.kostmo.charbuilder.DownloadImagesService in 5000ms
03-07 16:44:13.778: INFO/ActivityManager(52): Low Memory: No more background processes.
03-07 16:44:13.778: ERROR/ActivityThread(52): Failed to find provider info for android.server.checkin
03-07 16:44:13.778: WARN/Checkin(52): Can't log event SYSTEM_SERVICE_LOOPING: java.lang.IllegalArgumentException: Unknown URL content://android.server.checkin/events
03-07 16:44:18.908: INFO/ActivityManager(52): Start proc com.kostmo.charbuilder.full for service com.kostmo.charbuilder.full/com.kostmo.charbuilder.DownloadImagesService: pid=3560 uid=10027 gids={3003, 1015}
03-07 16:44:19.868: DEBUG/ddm-heap(3560): Got feature list request
03-07 16:44:20.128: INFO/ActivityThread(3560): Publishing provider com.kostmo.charbuilder.full.provider.character: com.kostmo.charbuilder.provider.ImageFileContentProvider
'onCreate()'被調用,而不是'onStart()',因爲沒有人請求啓動或綁定。您需要關閉服務(或者在需要時啓動服務)。 – 2010-03-08 00:26:29