2016-08-05 7 views
0

Xcode가 아닌 HockeyApp를 통해 응용 프로그램을 설치할 때만 충돌이 발생하는 문제가 있습니다.hockeyapp 빌드를 통해서만 충돌이 발생합니까?

응용 프로그램을 종료

*** 인해 캐치되지 않는 예외 'NSRangeException', 이유에 :

내가 HockeyApp에서 얻을 보고서입니다 '- [__ NSCFArray objectAtIndex :] : 지수 (-1970199490 (또는 가능성이 큰)) 경계 (15) ' MainViewController.m, 라인 이상이 줄을 의미 646

: 빌드를 통해 HockeyApp를 통해 아니라 설치할 때 내가 거기 충돌을 받고있을 이유

for (int i; i < [resultsArray count]; i++) { 
    if ([[resultsArray[i] valueForKey:@"uniqueId"] isEqualToString:[[NSUserDefaults standardUserDefaults] 
                  stringForKey:@"FbId"]]) { 
     resultsArray = resultsArray[i]; 
    } 
} 

어떤 아이디어 Xcode? 나도 개발 및 배포 certs를 사용하여 장치에 응용 프로그램을 구축하려했지만 HockeyApp를 통해 빌드가 설치되어 있지 않은 한 둘 다 잘 작동합니다.

+1

은 i 값을 초기화하지 않아야합니까? 마찬가지로, int i = 0! –

+0

와우, 고쳐 줬어! 좋은 캐치. 올바른 것으로 표시 할 수 있도록 정식 답변으로 추가하십시오. :) – arcade16

답변

2

나는 for 루프에서 i의 값을 초기화하지 않을 것이라고 생각한다.

그것이가 초기화되지 않으면, i 값을 예측할 것이다 그것은 널이 될 수 for (int i=0;....

이어야 또는 그것의 메모리 어드레스의 값이 될 수있다. 당신이 그것을 초기화하지 않은 경우 (어떤 충돌이없는 경우)

, 다음 i 값은 당신이 그것을 할 경우에도 또한

어떤 임의의 음수 -1970199490이 될 것입니다 여기에 무한 루프가있을 것입니다 xcode에서 동일한 동작이 발생합니다.

for 루프의