2012-05-07 2 views
1

지금은 다소 어색한 상황입니다.게임 플레이가 ipa 파일에서 충돌하지만 Xcode에서 제대로 실행됩니까?

내 프로젝트를 Xcode에서 내 장치로 직접 실행할 때 충돌없이 완벽하게 실행됩니다. 하지만 그 프로젝트의 ipa 파일을 만들고 iTunes를 사용하여 장치에 ipa를 설치하면 처음에는 게임 플레이 화면이 시작될 때만 충돌이 발생하고 나중에 게임 플레이를 시작하면 정상적으로 실행됩니다.

내 게임 플레이는 사용자가 두 가지 초기 상태에서 모두 잘 작동하는 초기 화면 2 개를 탐색 한 후에 시작됩니다. (즉, Xcode 또는 ipa 파일에서 실행).

내가 이해하지 못하는 것은 Xcode에서 직접 실행할 때 문제가 게임 플레이 클래스의 init 메소드에있는 경우 왜 충돌하지 않는지입니다. ipa 또는 Xcode에서 실행할 때 코드 압축 또는 다른 코드 컴파일 메커니즘이 있습니까?

도움을 주시면 감사하겠습니다.

감사합니다.

+3

기기의 오류 로그를 확인 했습니까? 당신은 아마 그것에서 몇 가지 포인터를 얻을 수 있습니다. – adig

+0

안녕하세요 .. 내 코드와 동일한 문제가 있습니다 ... 코드에서 실행하면 잘 작동합니다 ... ipa를 만든 후 실행하면 충돌이 발생합니다 ...이 문제를 해결하려면 무엇이 필요합니까? – Rajneesh071

답변

1

adig가 말한 것처럼, 장치에서 crashlog를 가져 와서 기호화하십시오. 호출 스택과 충돌을 일으킨 회선이 표시됩니다. 릴리스, 디버그, 임시 등의 모든 차이점은 프로젝트에서 설정할 수 있습니다.

+0

실제로 프로그램의 주 스레드에서 메모리 누수가 발생했습니다. 나는 화면들 사이에 지연이있는 CCTransition을 사용하고 있었고, 코드에서 그것을 제거했을 때 ipa는 정상적으로 작동했다. 하지만 .ipa 파일이 Xcode에서 직접 실행하는 파일과 다른 동작을하는 이유를 모르겠습니다. 어떤 조언은 높이 평가 될 것입니다. 모든 도움을 주셔서 감사합니다. –

4

동일한 시나리오에 직면했습니다. 두 개의 초기 화면 후에 ipa 파일이 충돌했습니다. crashlog는 코드에서 충돌 줄을 제공했습니다. 코드를 디버깅하는 것은 목적을 해결하지 못했습니다.

하지만 편집 스키마 섹션의 보관 설정을 확인하여 문제를 해결했습니다. 내 빌드가 디버그 모드이고 보관 설정이 릴리스였습니다. 보관 파일의 빌드 구성을 디버그로 변경하고 ipa를 만들었으며 충돌이 해결되었습니다.

누군가가 생산적인 시간을 절약하는 데 도움이되기를 바랍니다. 감사.

+0

앱 스토어에 출시 빌드를 업로드했는데 제 라이브 게임이 너무 충돌하기 시작했습니다. 그런 다음 프로젝트 설정에서 기존 _Release_ 구성을 삭제하고 _Debug_ 구성을 복제 한 다음 릴리스 및 필요한 필수 설정을 업데이트했습니다. 이것은이 prob에 대해 몇 달을 보냈다. 구성에 문제가있는 것으로 보입니다. –