2011-12-11 2 views
1

코드에 탭이 4 개인 탭 막대 앱이 없습니다.iPhone에서 메모리 누수가 나타납니다

모든 시뮬레이터 테스트가 훌륭합니다. 앱과 충돌이 없으며 모든 것이 훌륭하게 작동합니다. Xcode에 경고 또는 오류가 표시되지 않습니다 (Xcode 4.2를 사용 중이며 스토리 보딩을 사용함).

'분석'을 실행하면 코드에 누수, 오류 또는 누출 가능성이 없습니다.

'누수'가 실행 중일 때 누출이 표시되지 않고로드, 다시로드, 탭 간 스왑 등 모든 작업을 수행 할 수 있습니다.

iPhone에서 실행하면 많은 누출이 표시됩니다!

일부 코드는 모두 릴리스 된 것으로 보이며 괜찮아 보입니다. 그리고 모두 Xcode에서 유효성을 검사합니다.

시뮬레이터에서 전화로 달리기가 왜 다른가요? 시뮬레이터에서 누출을 실행할 때 표시되지 않는 누출을 찾아서 디버그하려면 어떻게해야합니까?

+1

더 많은 정보를 제공해 줄수록 더 좋습니다. 프로젝트에서 ARC를 사용합니까? 탐지 된 누출 정보 또는 스크린 샷을 붙여 넣으십시오. – occulus

+0

스크린 샷을 첨부하는 방법을 잘 모르기 때문에 [link] (http://www.coulldesign.com/screen.png) 여기에 업로드했습니다. – Richard

답변

0

먼저, 누출이 발생하는 영역에 대한 검사 범위 (왼쪽 및 오른쪽 범위 버튼 포함)를 제한함으로써 더 작은 영역을 검사 할 수 있습니다. 그런 다음 Obj-C 만보기, 누락 된 기호 숨기기 등의 왼쪽에있는 통화 트리에서 유용한 검사를 선택하면 악기에서 더 많은 유용한 정보를 얻을 수 있습니다. 그런 다음 누수와 관련된 줄 중 하나를 클릭하고 확장보기를 연 다음 호출 스택을 검사하기 시작합니다. 또한, 내가 기억할 수있는 한, 누수 라인을 두 번 클릭하면 누출 된 객체가 할당 된 소스 코드로 이동할 수 있습니다. 누수가 발생한 위치를 표시하지 않기 때문에 여기에주의하십시오. 누설 된 개체가 할당 된 위치를 보여줍니다. 그래서, 여러분은이 객체들에 어떤 일이 일어나는지 따라야합니다.

그리고 시뮬레이터와 장치의 차이점에 대해서는 this SO 질문을 확인할 수 있습니다.

이러한 도움이 필요하십니까?

관련 문제