2012-12-21 21 views
8

내가 내 프로젝트에 ASIHTTPRequest을 사용 거짓이지만, 파일에 ASIDataCompressor.m 라인 190 :경고 : 형 XXXX의 발현과 일정 8의 비교는 항상

Warning

:

if ([inputStream streamStatus] == NSStreamEventErrorOccurred) { 
     if (err) { 
      *err = [NSError errorWithDomain:NetworkRequestErrorDomain code:ASICompressionError userInfo:[NSDictionary dictionaryWithObjectsAndKeys:[NSString stringWithFormat:@"Compression of %@ failed because we were unable to write to the destination data file at %@",sourcePath,destinationPath],NSLocalizedDescriptionKey,[outputStream streamError],NSUnderlyingErrorKey,nil]]; 
     } 
     [compressor closeStream]; 
     return NO; 
    } 

는 나에게이 경고

누구든지 문제를 해결하는 방법을 알고 있습니까? 들으

답변

17

(NSStreamStatus)NSStreamEventErrorOccurred

편집 아마

이 처리하는 올바른 방법은 NSStreamStatusError으로 NSStreamEventErrorOccurred을 교체하는 것입니다. 아마 ASIHTTP의 저자가 의도 한 것입니다.

+0

간단하고 강력한! – yellow

+0

실제로 이것은 ASIHTTP 부분의 API가 좋지 않을 수 있습니다. 또한 이것이 새로운 프로젝트 인 경우 ASIHTTP가 작성자에 의해 폐기되었으므로 AFNetwork와 같은 대안을 고려할 수도 있습니다. 그러나 ASIHTTP는 실제로 모든 기능을 갖추고 있습니다. – nielsbot

+0

감사합니다. AFNetwork.https를 사용하려고합니다 : //github.com/AFNetworking/AFNetworking – yellow

6

NSStreamEventErrorOccurred8의 상수 값인 NSStreamEvent입니다. streamStatus 메서드는 NSStreamEvent이 아니고 NSStreamStatus이 아니고 NSStreamStatus 값은 7 값을 초과하지 않으므로 오류가 발생했습니다. 운이 좋다면 8이 경계를 넘어 섰고 항상 오류가 발생하지 않으므로 리턴 유형에 항상주의해야합니다.

+0

감사합니다. 어떻게 작동하는지 알게되었습니다. – yellow

+0

*> 및 NSStreamStatus 값은 7 <* - Ah의 값을 초과하지 않습니다. 이것이 나에게 중요한 문제입니다. Xcode (현재 Swifty)는 열거 형이 완전한 것처럼 경고를 표시합니다. 그러나 Objective-C API는 선언 된 공개 열거 형 범위를 벗어나는 결과를 행복하게 반환합니다. 제 경우에는'NSEventSubtype'입니다. – pkamb

관련 문제