2013-11-15 2 views
1

Xcode 5에서 스파클 프레임 워크를 추가하는 데 문제가 있습니다. 본질적으로 in this post입니다. 문제는 스파클이 프레임 워크 폴더로 복사되지 않는다는 것입니다. 해결책은 소스 코드를 다운로드하고 일부 설정을 변경 한 다음 직접 빌드하는 것입니다. 그러나 : 건물 동안 오류가 발생합니다 :스파클 in Xcode 5

NSAlert *alert = [NSAlert alertWithMessageText:SULocalizedString(@"Update Error!", nil) defaultButton:SULocalizedString(@"Cancel Update", nil) alternateButton:nil otherButton:nil informativeTextWithFormat:[error localizedDescription]]; 

Format string is not a string literal (potentially insecure)

을 생산하고 나는이 문제를 해결하는 방법을 알아낼 수 없습니다. 누구든지 도와 줄 수 있습니까?

답변

4

오늘 같은 문제에 직면했습니다. 변화는 매우 간단합니다.

변경 :

NSAlert *alert = [NSAlert alertWithMessageText:SULocalizedString(@"Update Error!", nil) 
           defaultButton:SULocalizedString(@"Cancel Update", nil) 
           alternateButton:nil 
            otherButton:nil 
        informativeTextWithFormat:[error localizedDescription]]; 

사람 :

NSAlert *alert = [NSAlert alertWithMessageText:SULocalizedString(@"Update Error!", nil) 
           defaultButton:SULocalizedString(@"Cancel Update", nil) 
           alternateButton:nil 
            otherButton:nil 
        informativeTextWithFormat:@"%@", [error localizedDescription]]; 

설명, 경우에 당신은, 관심있는 informativeTextWithFormat 변수 인수 목록의 시작, 실제로는 것을되는 첫 번째 매개 변수의 형식 문자열이고 그 이후의 형식 문자열은 해당 형식에 대한 입력입니다. 오류는 형식이 런타임 문자열 (컴파일 타임 상수 문자열이 아닌)에 있기 때문에 컴파일 타임에 유효성을 검사 할 수 없으므로 악의적 인 사용자가 런타임시 형식 문자열을 (어쨌든) 변경할 수 있습니다. 이 앱에서 악성 코드를 실행하십시오.

NSLog([error localizatedDescription]); 

그리고 :이 도움이

NSLog(@"%@", [error localizatedDescription]); 

희망

그것은 차이와 동일합니다.

+0

이 문제는 Sparkle에서 수정되었습니다. –