2010-12-20 8 views
1

누구나 들어 본 적이 있습니까? 나는 당황스럽고 Google도 그렇습니다.Xcode의 앱이 잘 작동하지만 앱 스토어 버전이로드시 고정됩니다.

iOS 4.1을 사용하는 iPhone 4에서 디버깅 할 때 내 앱은 시작 화면을 표시 한 다음로드되어 GPS 위치를 가져 오는 동안 애니메이션을 표시하고 마침내 기본 메뉴로 이동합니다. App Store에서 다운로드 할 때로드가 중단되지 않습니다. 이상한 점은 영원히로드하는 앱을 숨긴 다음 복원하면로드 애니메이션이 멈추고 앱이 더 이상 응답하지 않는다는 것입니다.

나는 무엇이 잘못되었는지에 대해 모든 종류의 추측을 시도했지만 아무 것도 작동하지 않습니다. 이 실패에 대한 유용한 정보를 얻으려면 어떻게해야합니까?

EDIT : App은 iOS 4.0 및 iOS 4.2.1을 사용하는 iPhone 3, iOS 4.0.2 및 4.2.1이 적용된 iPhone 4에서도 테스트되었습니다.

EDIT EDIT : 앱 스토어에서 다운로드하지 않으면 문제가 발생하지 않습니다. 이것은 디버깅을 극도로 어렵게 만들지 만, 내가 가진 것보다 더 많은 경험으로 누군가를 위해 디버깅을 좁히기를 희망합니다.

답변

1

이 문제의 기원은 아이폰 OS 4.1의 버그 것 같다 : 위의 정보를 기반으로 https://devforums.apple.com/community/iphone/integration/location

Unable to Obtain Location Information on iOS 4.1

Michael Jurewitz at Oct 5, 2010 1:51 PM

There is a known issue in iOS 4.1 where calls to Core Location may not succeed if the app has been removed from a device and reinstalled. Location Services in Settings may also incorrectly show that the app has access to location information. This issue is addressed in iOS 4.2 beta 2.

To work around this issue, select Reset Location Warnings under Settings > General > Reset.

As always, ensure your Core Location delegate properly handles any errors returned from -locationManager:didFailWithError: and -locationManager:monitoringDidFailForRegion:withError:.

테스트는 미래의 실행이 이상 진행 할 수 있도록 위치 경고를 재설정하면 문제가 해결 것을 확인가 로딩 화면. 앱 스토어에서 앱을 다시 설치하면 문제가 다시 발생합니다. 일관된 결과로 반복적으로 테스트 할 수 있습니다.

제안 사항에 답변 한 사람들에게 시간과 노력에 감사드립니다.

1

먼저 한 기기에서 앱을 테스트 한 것 같습니다. 앱은 최소한 몇 가지 기기에서 테스트해야하므로 몇 가지 경우에 내부 플로우를 디버깅하고 이해할 수 있습니다.

하지만 다른 장치를 가져올 수없는 경우 제거를 시도하십시오. 의미 - 불필요한 코드를 주석에 넣고 필요한 코드 만로드하려고합니다. 단계별로 버그를 이해할 수 있습니다.

서버 문제 (서버에 요청하는 중입니까?)가 나에게 들리거나 GPS가 검색을 멈출 수없는 것 같습니다.

1

나는 Taxman에 동의합니다.

먼저 iOS가 다른 여러 기기에서 테스트를 거쳤는지 확인하십시오.

둘째, 앱이 서버에 연결해야하는지, 예상대로 응답하는지 확인하십시오. 내 경험을 바탕으로 세 번째

, 당신이 개발 .mobileprovision 파일 이외의 특별 .mobileprovision 파일을 사용하면 응용 프로그램을 테스트해야합니다. Xcode는 컴파일 할 때 바이너리를 다르게 취급합니다.