finish()
메서드를 호출하지 않고 백그라운드에서 활동을 시작하고이 작업을 시작한 상위 활동으로 돌아갈 수 있습니까? 나는 너무 많이 노력했지만 해결책을 찾지 못했습니다. 그래서 너희들이 도울 수 있다면 나는 매우 감사 할 것이다.작업을 완료하지 않고 백그라운드로 보내기
답변
활동이 상위 작업과 다른 작업에서 실행되는 경우 다음이 작동합니다. 이를 위해 http://developer.android.com/guide/topics/manifest/activity-element.html#lmode을 참조하십시오.
public void onBackPressed() {
moveTaskToBack (true);
}
현재 작업
는 숨겨집니다 만, 그 상태가 그대로 유지되며,이 활성화 될 때 당신이 그것을 떠날 때 그것이 단지로 나타납니다.활동 상태가 변경되지 않는다고 보장 할 수는 없습니다. 모든 가능성 있음, 활동은 운영 체제에 의해 파괴된다. 생명주기 이벤트에 응답하고 그에 따라 상태를 저장/복원하지 않는 한, 활동은 생성되고 역으로 이동되었음을 알지 못할 것입니다. – Jonathan
Jonathan은 백그라운드 활동이 계속 실행된다는 _guarantee_가 없다는 사실이 맞습니다. 그러나 정상적인 상황에서 그들은 약간의 시간이 지날 때까지 운영 체제에 의해 파괴되지 않습니다. 파괴가 당신을 위해 문제를 일으키는 경우에, 다른 논평자가 말한대로 당신은 국가를 저장하고 복구해야한다. – mhsmith
그래서 onSaveInstanceState()를 사용하면 내 상태를 나중에 복구 할 수 있습니다. – JohnyTex
시도 :이 방법을 사용하는 경우
Intent toNextActivity = new Intent(CurrentActivity.this,
NextActivity.class);
CurrentActivity.startActivity(toNextActivity);
는, CurrentActivity의 방법 onPause()가 호출을 받고 CurrentActivity의 (a MediaPlayer를 객체처럼) 정적 변수가있는 경우는 (존재하는 것 또는 재생중인 경우 재생하십시오.)
저는 이것을 내 애플리케이션에서 사용하고 있지만 서비스를 사용하여이를 수행하는 더 좋은 방법을 발견했습니다.
희망이 도움이 될 것입니다!
내가 원하는 것은 이것을 시작한 부모 활동으로 돌아가는 것입니다. 새로운 활동이 아닙니다. – 1HaKr
의도를 사용하여 새 활동으로 전환하면 onPause와 같은 일반적인 수명주기 활동 만 실행됩니다()'와'onStop()'을 사용합니다. 새로운 활동이로드되고 실행되는 동안 프로세스가 계속 실행됩니다. 솔루션에 대한 내 대답을 참조하십시오. – stormin986
캐시/저장/처리하려는 데이터가있는 경우 AsyncTask 또는 Thread을 사용할 수 있습니다.
당신이 부모/전환을 캐시 할 준비가되면, 당신은 당신의 아이의 활동 방법 중 하나에서 다음과 같이 할 것이다 (당신이에 startActivityForResult와 아이를 시작 가정을())
스레드 접근 :
Thread t1 = new Thread(new Runnable() {
@Override
public void run() {
// PUT YOUR CACHING CODE HERE
}
});
t1.start();
setResult(whatever);
finish();
새 스레드에서 다시 통신해야하는 경우 Handler을 사용할 수도 있습니다.
AsyncTask를 접근하십시오 AsyncTask를 사용하면 새 스레드에서 뭔가를 처리하지만, UI 프로세스를 다시 의사 소통을 할 수 있어야하는 상황이다
new CacheDataTask().execute(data params);
set_result(whatever);
finish();
.
작업을 뒤로 이동하면 Activity
주기주기 이벤트에 응답하여 수동으로 수행하지 않는 한 상태를 유지할 수 없습니다.
당신은 당신이 startActivityForResult()
를 사용, 두 번째 Activity
에서 다시 결과를 수신해야하는 경우 Intent
를 통해 두 번째 Activity
이 startActivity()
를 사용하거나 시작해야합니다. 이렇게하면 사용자가 Activity
을 완료하고 처음 Activity
으로 돌아올 때 콜백을 수신 할 수 있습니다.
시작하는 Activity
및 얻는 결과 : http://developer.android.com/reference/android/app/Activity.html#StartingActivities
간단히
보호 무효 minimizeApp() { 의도 startMain = 새로운 의도 (Intent.ACTION_MAIN); startMain.addCategory (Intent.CATEGORY_HOME); startMain.setFlags (Intent.FLAG_ACTIVITY_NEW_TASK); startActivity (startMain); }
- 1. iPhone에서 백그라운드로 메일 보내기
- 2. cron없이 백그라운드로 메일 보내기
- 3. Parallel.Invoke가 모든 작업을 완료하지 못하는 이유는 무엇입니까?
- 4. 실행중인 응용 프로그램을 프로그래밍 방식으로 백그라운드로 보내기
- 5. 백그라운드로 작업 보내기 및 포 그라운드로 가져 오기
- 6. iPhone에서 백그라운드로 앱 시작
- 7. CRONTAB이 svndump를 완료하지 않음
- 8. NSTokenField 제안했지만 완료하지 않음
- 9. 액션에서 백그라운드로 Symfony 작업을 올바르게 실행하는 방법은 무엇입니까?
- 10. 페이지에서 벗어나지 않고 양식 보내기
- 11. 활동을 시작하지만 백그라운드로 시작합니다.
- 12. 플렉스 - 대기 애플리케이션을 백그라운드로 실행
- 13. 백그라운드를 변경하지 않고 작업을 시작합니다.
- 14. 파일을 만들지 않고 activity에 byte [] 데이터 보내기
- 15. 팝업에서 백그라운드로 함수 호출
- 16. 양식이 백그라운드로 들어갑니다.
- 17. dotnetnuke를 백그라운드로 메모리에로드합니다.
- 18. 일부 NSView가있는 백그라운드로 NSPanel을 이동
- 19. CGI에서 백그라운드로 파이썬 스크립트 실행하기
- 20. SMTP 서버를 설치하지 않고 메일 보내기
- 21. 메시지를 표시하지 않고 인터넷 요청 보내기
- 22. Sendmail을 설치하지 않고 Perl을 사용하여 이메일 보내기
- 23. iphone - 응용 프로그램을 종료하지 않고 SMS 보내기
- 24. 도우미를 사용하지 않고 작업을 지정하는 방법
- 25. SSIS는 개별 작업을 수행하지 않고 함께 실행합니다.
- 26. cron 작업이 프로세스를 완료하지 못하고 있습니까?
- 27. jQuery Ajax 함수가 호출을 완료하지 못했습니다.
- 28. SimpleTest PHP가 실패를 표시하는 검사기를 완료하지 않음
- 29. 인쇄 작업을 보내기 전에 실제 프린터 상태를 얻는 방법은 무엇입니까?
- 30. Java 프로세스를 완료하지 않고 배치 파일 실행을 순서대로 수행 할 수 있습니까?
활동을 백그라운드로 보내면 무엇을 달성 할 수 있습니까? –
실제로 나는 캐시 된 데이터가 필요합니다. 부모 작업은 동적으로 처음로드 된 다음 자식 작업으로 보냅니다. 자식 작업은 데이터를 수정하고 수정 된 데이터가 있어야합니다. 그러나 완료되면 있어야합니다. , 이전 데이터가 자식 활동에 전송됩니다 – 1HaKr