1

Delphi 10.1 Berlin로 내 앱용 Android 끈적 끈적한 서비스를 개발하기 시작했으나 튜토리얼이나 책을 찾지 못했기 때문에 다음과 같은 질문을하고 있습니다. OS/사용자에 의해 여전히 실행 중이거나 죽었습니까? 감사.내 앱이 Android 서비스에서 아직 실행 중인지 확인하는 방법은 무엇인가요?

+1

이 답변을 살펴보십시오 https://stackoverflow.com/a/12172218/3023833 –

+1

[서비스가 활동 중인지 확인] (https://stackoverflow.com/questions/12172092/check- if-activity-running-from-service) –

+1

Pawel Glowacki의 저서 Expert Delphi는 그 중 하나에서 많은 주제와 Android 서비스를 제공합니다! –

답변

2

패키지 ID로 프로세스 ID를 찾고 여전히 활성 상태인지 확인할 수 있습니다.

ActivityManager am = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE); 
List<ActivityManager.RunningAppProcessInfo> pids = am.getRunningAppProcesses(); 
int processid = 0; 
for (int i = 0; i < pids.size(); i++) { 
    ActivityManager.RunningAppProcessInfo info = pids.get(i); 
    if (info.processName.equalsIgnoreCase("packageNameSearchingFor")) { 
     processid = info.pid; //found it, we are running 
    } 
} 

은 또는 당신은 단순히 공공 공유 현 또는 전경 또는 배경에서 확인할 때 업데이트되는 컨텐트 프로를 통해 액세스 데이터베이스의 공유 값을 저장할 수 있습니다. 어쨌든 괜찮습니다.