2013-05-18 3 views
0

나는 항상 백그라운드에서 활성화 상태를 유지해야하는 안드로이드 응용 프로그램을 실현했습니다. 이를 위해서는 사용자가 애플리케이션을 떠난 후에도 활성화 된 서비스를 사용하는 것만으로 충분합니다.Android 앱을 항상 실행 상태로 유지하는 방법 (서비스 및 BroadcastReceiver)?

그러나 사용자가 다시 부팅하면 응용 프로그램과 서비스가 더 이상 활성화되지 않습니다.

이 문제를 해결하는 방법은 무엇입니까?

나는 BroadcastReceiver으로 생각하는 데 생각하지만 난 그게 최선의 해결책인지에 아닙니다.

미리 감사드립니다.

+0

재부팅하셨습니까? – stinepike

+0

예 @StinePike, 제 영어를 유감스럽게 생각합니다 !! –

답변

2

전화가 다시 부팅되면 서비스를 다시 시작 하시겠습니까?

BOOT_COMPLETE을 수신하는 BroadcastReceiver를 만드십시오 (이에 대한 허가가 필요함). 서비스를 시작하십시오.

Android는 메모리가 부족하여 서비스를 중지 할 수 있습니다. onStartCommand를 반환하면 START_STICKY이 반환되고 서비스 요청의 onCreate가 자체적으로 startService에 저장되며 메모리를 사용할 수있게되면 다시 시작됩니다.

+0

답변 해 주셔서 감사합니다. –

+0

예제가있는 자세한 설명은 매우 유용합니다 [https://github.com/codepath/android_guides/wiki/Starting-Background-Services](https://github.com/codepath/android_guides/wiki/Starting-Background- 서비스) –

0

서비스가 실행되지 않는 경우 알람을 설정하고 부팅시 브로드 캐스트 수신기를 설정하면 장치가 부팅 될 때 서비스가 시작됩니다.

관련 문제