2011-02-15 5 views
1

MonoTouch 앱의 릴리스 빌드에서 사용할 수있는 크래시 로그를 생성하지만 장치에서 크래시 로그를 가져올 수 없는지 확인하려고합니다. 다음은 제가 취하는 조치입니다.MonoTouch 충돌 로그

  1. 내 앱에 사용자가 화면을 터치 할 때 충돌을 일으킬 수있는 코드가 일부 있습니다.

  2. 릴리스 빌드를 수행하고 .dSYM 폴더가 .app 폴더 옆에 있는지 확인했습니다.

  3. 나는 iPad에서 응용 프로그램을 실행하고 충돌하도록 화면을 건드렸다. 앱이 즉시 종료되었습니다.

  4. iTunes에서 동기화했습니다.

  5. Library \ Logs \ CrashReporter \ MobileDevice [devicename] 및 [devicename] .symbolicated 아래를 살펴 보았지만 아무 것도 없습니다.

나는 앱 충돌을 만드는 두 가지 방법을 시도했다. 첫 번째 방법 :

SomeObject x = null; 
x.SomeFunction(); 

두 번째 방법 :

unsafe { 
    short *p = (short*)0; 
    for (int i=0; i < 1000000; i++) 
     p[i] = 0; 
} 

두 가지 방법이 응용 프로그램은 즉시 종료 원인이 있지만, 어느 쪽도 아니는 충돌 로그를 생산하지 않습니다.

무엇이 여기에 있습니까?

+0

iTunes 동기화에 의존하는 대신 Xcode Organizer에서 충돌 로그 인터페이스를 살펴 보셨습니까? –

+0

그래,이 충돌은 Xcode Organizer에도 나타나지 않습니다. – Mike

답변

1

처리되지 않은 관리되는 예외는 오류 로그를 생성하지 않는 것으로 보입니다. 이 문제를 추적하여 수정할 수 있도록 http://monotouch.net/Support에 버그를 제출해주십시오.

그 동안 당신은

try { 
} catch {} 

에 자신의 메인 전화를 포장하고 어딘가를 기록하고 당신이 가진 웹 서버 또는 일부 등에 업로드 할 수 있습니다.

+0

나는 이렇게 오래 머물렀던 메인을 가지고 있었는데, 나는 이것을 끝내고 그것이 모노 터치의 특징이라고 생각한다는 것을 잊어 버렸다! :) – Luke

+0

예외를 잡을 때 충돌 로그를 생성하는 방법이 있습니까? 또한, 예외를 덤프 수 있습니다 .ToString() 출력 어떻게 든 충돌 로그에? – Mike

+0

BTW 방금 버그 673658로 제출했습니다. – Mike