문제

My App에는 사용자가 여러 페이지의 입력 페이지 (가입 프로세스)를 거 워야합니다. 사용자가 가입을 더 깊게하기 때문에 사용자가 "마침"을 클릭 할 때까지 데이터를 손상시키지 않아야합니다. 이 프로세스에는 활동 호출 서브 활동과 다른 하위 활동을 호출하는 해당 하위 활동이 포함됩니다.

유량은 다음과 같습니다 : Main -> Sub-activity (Signup of Signup) -> 하위 활동 (Part2) -> 하위 활동 (3 부).

여기서는 logcat에서 메모리가 낮은 메모리 경고가 낮고 사용자가 앱에 더 깊게가는 것처럼 다양한 프로세스가 사망 중입니다. 나는 이미 활동 중에 사용자 정의 객체를 전달하지 않고 필요할 때 그들을 mysqllite에 저장하고 그들을 검색하여 핸드 메모리를 저장하려고 노력했습니다. 하나의 추가 포인트는 다음과 같습니다. 이미지와 컨트롤을 다루지 않고 텍스트 뷰, 편집기 및 회 전자입니다.

내 질문은 여러 가지 하위 활동이 묶여있을 때 메모리가 낮은 문제가있는 것이 일반적입니까? 메모리를 확보하기 위해 어떻게해야합니까? 사용자 정의 컨트롤은 미리 설정된 컨트롤보다 훨씬 더 많은 메모리를 사용합니까? (내 헌치 중 하나)

* 편집 * 나는 낮은 메모리 문제의 이유를 발견했습니다. 그것은 하위 활동과 아무 관련이 없습니다. 범인은 내가 사용하고있는 맞춤 컨트롤입니다. 나는 대신 사전 설정된 컨트롤을 사용하여 시험을했고 앱의 전반적인 성능이 크게 향상되었습니다. 나는 더 이상 낮은 메모리 경고를 가지지 않고 모든 것이 부드럽게 작동합니다.

도움이 되었습니까?

해결책

I dont think it is common to have memory issues with subactivities.. i have used a tab host with 5 tabs and 3-4 activities in each plus complicated methods http calls and image adapters and there were no issues (this way the activites dont call the onDestroy method but just call onPause and then onResume). try having less global variables ex. just reference the views and get their data when you press the next button to pass to other activity or something like that so that the garbage collector collects the trash. remove some of the references when onPause is called and then if you need them again just reference them again (maybe on onResume)

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top