동기화 알고리즘을 실행하는 앱이 있습니다.디버그와 릴리스의 차이점
디버그 모드에서 (내 iPhone 5에) 빌드하고 실행하면 모두 정상적으로 작동합니다.
그러나 내가 보관하고 TestFlight에 업로드 한 다음 동일한 iPhone 5에 다운로드하고 설치하면 동기화의 일부가 작동하지 않습니다.
충돌이 발생하지 않거나 아무 것도 없으며 동기화 부분 만 실행됩니다.
바보 같은 점은 실행되지 않는 단일 함수 안에 코드 줄이 있다는 것입니다. 그 함수의 다른 모든 함수가 실행됩니다.
어디서부터 시작해야할지 모르겠습니다. Mindaugas의 도움으로
편집
나는 이유를 정확하게 코드의 비트가 실행되고 있지 않은 것으로 나타났습니다.
기능은 ... 나는이 최적화 레벨을 설정
- (void)uploadData
{
NSLog(@"pushing photos");
for (StoredImage *storedImage in self.recordArray) {
NSURL *url = [self urlForImageUpload:storedImage];
if (url == nil) {
continue;
}
ImageUploadOperation *uploader = [[OJFImageUploadOperation alloc] init];
uploader.image = storedImage.image;
uploader.url = url;
[self.recordQueue addOperation:uploader];
}
}
에 "가장 빠른, 가장 작은은"그것은이 기능의 최대의 순서를 혼란에 보인다.
입력하면 배열에 단일 개체가 있음을 알 수 있으며 루프에 입력됩니다. 그런 다음 첫 번째 줄인 NSURL *url = [self urlForImageUpload:storedImage];
을 완전히 건너 뛰고 끝까지갑니다. 업로드가 실제로 시작되지 않고 다음 항목으로 이동합니다.
내 생각은 NSAssert 메서드 내부에 호출이 있으면 no-op로 변환됩니다. – borrrden
신청서에 그러한 작업을 수행 할 권한이 있습니까? –
현재 NSAssert를 사용하고 있지 않습니다. 나는 어떤 TestFlight 체크 포인트를 추가하여 정확하게 어떤 비트가 실행되고 있지 않은지 알아 내고있다. – Fogmeister