여기 내 과정과 문제 :이 응용 프로그램에서활동이 손실 된 후 비동기 작업을 종료하는
당신은 시작이 토글 버튼을 누르면이 메뉴에서 Menu (메뉴) 버튼을
을 클릭 비동기 작업 (30 초마다 소리를냅니다). 이 작업은 토글이 선택 될 때 지속적으로 실행하고 선택하지 않으면 취소합니다. 이 작업은 메뉴 창에 남아있는 한 프로세스를 시작하고 중지하는 데는 도움이됩니다.
토글 박스를 확인하십시오!
창이 다시 벗겨지고 메뉴가 다시 열리면 내 토글 저장 상태가 선택되어 프로세스가 아직 실행 중입니다. 그러나 나는 비동기 작업의 해당 인스턴스에 대한 액세스 권한을 잃어 버렸다고 생각합니다. 그러면 토글을 선택 취소하면 프로그램이 중단됩니다.
myTask.cancle (true); 잃어버린 참조와 같을 수 있습니다. 이제는 더 이상 전화를 걸거나 제어 할 수없는 곳에서 Asynch-Task가 무효화됩니다!
비동기 작업을 잡고이 상황에서 취소하려면 어떻게해야합니까?
TL, DR; 하나의 활동 (mTask = new ...)에서 비동기 작업을 시작한 다음 해당 활동을 종료하면 어떻게 mTask에 계속 액세스 할 수 있습니까?
특정 이유로 인해 무기한 실행됩니다. 비동기 작업이 "의미"가 아니라는 것을 알고 있지만 평가 후에는 최상의 솔루션으로 보입니다. – iForgotMyLogin
당신은 그러한 작업을 위해 서비스를 사용해야합니다. –