2011-06-14 3 views
2

먼저 내 질문에 대답하기에는 너무 애매하고 닫히거나 아래로 투표 할 수 있음을 알고 싶습니다. 가능한 해결책에 대한 두려운 뇌졸중을 희망합니다. 내 보편적 인 응용 프로그램은 여전히 ​​실행 -iPad에서 작동하는 범용 앱인 iPad 1은 아니지만 2

내 응용 프로그램이 있지만, 아이 패드 2에 충돌했다가하지 내가 충돌 언 아카이빙 펜촉에 관한 지금은 아주 이상한 문제가 해결 한 아이 패드 1에 : 여기

는 이야기 iOS 4.2.1 및 4.3.3을 사용하는 1 세대 iPad에서는 문제가 없지만 4.3.3에서는 (일부/전체?) iPads 2에서는 작동하지 않습니다. 불행히도 iOS < 4.3.3 iPad 2에 대한 액세스 권한이 없으므로 문제를 더욱 자세히 테스트하고 범위를 좁힐 수 있습니다.

내 응용 프로그램의 기본 화면은 presentModalViewController입니다. 내 모달 VC는 MGSplitViewController입니다 (기본 UISplitViewController을 모방하여 기능이 향상되었습니다). 내 VC가 표시되면 "루트보기"만 표시되고 "상세보기"화면의 나머지 부분은 검정색으로 비어 있지만 컨트롤러가로드되고 활성화됩니다 (디버그 로그가 인쇄되는 등).

iPad 2에서 액세스 할 수 있지만 세부적인보기가 제대로 표시되지 않지만 한 사용자가 iPad 2 (iOS 4.3.3)에서 정상적으로 작동한다고 들었습니다. 애플 리케이션은 아이폰/아이팟 버전 상관없이 iOS 버전에서 잘 작동하므로, 그것은 내 범용 애플 리케이션의 iPad 코드에만 관련이 있다고 가정합니다.

저는보기를 표시하는 것이 더 일반적인 문제 일 수 있다고 생각합니다. view 세부 정보보기의 속성을 읽으려고했는데보기를 강제로 표시해야하지만 도움이되지 않았습니다. 그것은 또한 IB 용품 (iPad 2에서만 초기 펜촉 보관 취소 사고와 관련이있을 수 있습니다.).하지만 모든 것이 IB에 유선이라고 생각합니다 ...

누구나이 문제를 조사하는 방법은 조금 있습니다?

편집 : 현재 : iPad 2는 Wi-Fi 연결이 자주 끊어지면서 힘들게합니다. 다른 사람들도 이러한 종류의 "기능"을보고합니다. 내 iPad 2에서 문제가 될 수 있습니까?

EDIT2 : iOS 3.2, 4.2 및 4.3.3 시뮬레이터 (XCode 4를 통해)에도 앱이 제대로 표시되지 않지만 Xcode 3을 통해 iOS 3.2, 4.2 시뮬레이터에서 제대로 표시됩니다. 이상합니다. 그것?

+0

이 문제를 해결할 수 있었습니까? 비슷한 문제가있어 테스트 할 iPad 2가 없습니다. 또한, 과부하 문제가 있다는 것을 어떻게 알았습니까? 어쩌면 iPad 2에서 디버거로 앱을 실행했을 수 있습니까? – bdmontz

+0

신청서에 동일한 문제가 있습니다! 그것은 iPad2에 충돌입니다 ... – SPatil

답변

0

처음에는 펜촉을 보관 취소하여 앱이 다운되었습니다. 나는 정확한 충돌 출력을 기억하지 못한다. 그러나 똑같은 펜촉은 iPad 1에서 동일한 OS 버전으로 제대로 보관되지 않았기 때문에 문제가 xib 파일에 있다고 의심된다. ​​xib를 다시 만들었다. 신중하게 모든 것을 라우팅하는 처음부터 - 그리고! - 그것은 iPad 1과 iPad 2 모두에서 작업을 시작했습니다! 어떻게 다른 펜티엄을 운영하는 동일한 OS에서 어떤 펜촉을 같은 방식으로 보관하지 않았습니까?

1

누구나이 문제를 조사하는 방법은 조금 있습니다.

다소 모호한 질문에 대한 다소 모호한 대답을 허용하려면 예, 생각해보십시오.

  • 당신은 일반적인 문제 영역을 식별 :

    는 일반적으로이 같은 문제에 접근하려면 문제 필드의 양분 앞으로 갈 수있는 좋은 방법입니다. 귀하의 경우 presentModalViewController 일 수 있습니까?
  • 그런 다음 코드의 중간 부분에서 중단 점을 설정하거나 로그 파일에 메시지 쓰기/소리 재생/메일/짹짹/코드가 크래시없이 멀리 왔는지 확인하는 데 필요한 사항을 보내십시오. .
  • 메시지를 실행하고 메시지가 생성되었는지 확인하십시오.
  • 생성 된 경우 문제는 전반부에 있지 않으므로 두 번째 절반에 있어야합니다 (식별 된 문제 영역의 끝 부분에있는 로그 메시지는 유용합니다. 실제로 그 전에 발생합니다).
  • 한편, 로그 메시지의 흔적이없는 경우 상반기에 충돌이 발생해야하며이 특정 문제에 대해 코드의 후반 부분을 배제 할 수 있습니다.

이제 방금 식별 한 범인 절반으로 중단 점/로그 메시지를 설정하여 알고리즘을 반복하십시오.

문제가 발생할 때까지 반복하십시오. 많은 반복을하지 않을 것입니다.

물론 충돌은 이전 단계 또는 다른 방법에서 저장 한 변수로 인해 발생할 수 있지만 지금은 어디에서 볼 것인지 알 수 있습니다.

+0

당신의 알고리즘을 따라하고 문제를 격리 - 내 대답을 참조하십시오. – matm

관련 문제