Android 이외의 방식으로 구현 된 대형 Android 앱을 상속 받았습니다. 이 앱에는 수십 개의 활동이 있으며 데이터 캐싱을 위해이 앱을 싱글 톤으로 사용합니다. 앱이 오랜 시간 동안 유휴 상태가 된 후에 충돌합니다. 기기가 하나의 활동에 있거나 앱 메뉴의 최근 기록에서 다시 시작될 때 발생할 수 있습니다 (보통 null 참조 문제).Android - 배경 앱이 메모리 및 기타 리소스를 모두 비우도록합니다.
내 질문에 - 기술이 있습니까? 또는 운영 체제가 메모리를 회수하기를 기다리지 않고 리소스 해제 동작을 충실하게 강제하기위한 도구입니까?
괜찮습니다. 앱의 모든 활동이 시작 프로그램 활동으로 설정된 경우 앱을 올바르게 시작할 수 있어야한다고 말하는 것이 맞습니까? 그 상태의 앱이 단순히 "필요한 리소스 중 일부가 null 인 경우 - 정상적인 런처 활동 (로그인)을 시작하는 것이 더 좋다"를 감지하더라도? 초기화되지 않은 앱 리소스를 다루는 활동의 능력을 테스트합니다. – jchristof
모든 활동은 주를 유지해야하며 요청시 시작할 수 있어야합니다. 리소스가 누락 된 경우 (즉, 대용량 데이터 구조) 활동은 리소스를 다시로드하거나 정상적으로 폴백 할 수 있어야합니다. 그 말이 당신이 말한 것과 정확히 같아요. 액티비티가 액세스 권한을 상실한 중요한 정보를 표시하는 경우이 정보를로드하는 방법, 즉 로그인 화면을 알고있는 활동으로 리디렉션해야합니다. 현명하게 사용되는 싱글 톤은 앱의 응답 성을 향상시키고 개발을 다소 덜 복잡하게 만들 수 있습니다. 그러나 추가 유지 관리 비용이 발생합니다. – 323go