저는 앱이 실행되는 동안 백그라운드에서 몇 가지를 추적하는 Android 앱을 개발 중입니다. 나는 안드로이드에서 초보자 다. 그래서 나는 내가하고 싶은 것을 설명하려고 노력할 것이다.Android 서비스가 10 초 후에 닫힙니다.
셋업 : MainActivity, TrackerActivity, TrackerService (서비스가 가동 잠금을 포함) 및 TrackerServiceWakeupReciever
TrackerService이 닫히고있을 때이 실행됩니다.
public class TrackerServiceWakeupReciever extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
Intent serviceIntent = new Intent();
serviceIntent.setAction("com.example.android.TrackerService");
serviceIntent.putExtra("action", "checkSound");
context.startService(serviceIntent);
}
}
TrackerActivity에서 서비스를 시작하는 코드 : 앱을 입력 할 때 MainActivity가 시작
Intent serviceIntent = new Intent();
serviceIntent.setAction("com.example.android.TrackerService");
startService(serviceIntent);
TrackerActivity는 MainActivity에서 시작됩니다 때, 다음 TrackerService이 TrackerActivity의에서 onCreate에서 시작됩니다 . 이 서비스는 10 초 동안 닫히고 실행됩니다. 그런 다음 TrackerServiceWakeupReciever가 서비스를 다시 시작하고 10 초를 다시 실행하고 반복합니다.
왜 10 초만에 실행됩니까? 나는 MainActivity로 다시 돌아가서 sleep 버튼을 누르면 서비스가 계속 실행된다는 것을 알아 차렸다. 장치가 절전 모드에서 꺼져 있더라도 서비스가 실행 중입니다.
이 문제를 해결하는 방법은 무엇입니까? 그것을 파악하기 위해 1 주일을 사용했습니다. 나는 그것이 simpel 같아요 :)
미리 감사드립니다. Martin
서비스를 오래 머물거나 원하는 시간을 말하고 싶습니까? – Rohit