2012-03-04 2 views
3

Facebook에 메시지를 보내는 iPhone 앱이 있습니다. IOS SDK 4와 잘 작동하지만 IOS SDK 5에서 실행하려고하면 작동하지 않고 릴리스가 표시되고 오류로 유지됩니다.IOS SDK 5를 지원하는 Facebook API

"ARC 사용 안함"을 설정하고 FB 파일도 잘 컴파일되지만 다른 프로젝트 소스는 일반적인 iOS 5 프로젝트 인 "ARC 사용 안함"을 만들 필요가 없습니다. "ARC 사용 안 함"을 선택하면 모든 소스에 "release", "retain"등을 추가해야합니다. 것이 가능 여부. " 'ARC을 사용하지 않고 컴파일 FB 만들기위한 해결책은 무엇인가?

우리는이 문제를 해결? 또는 IOS SDK5에서 실행되는 페이스 북의 API를 다운로드 유용한 링크를 보낼 수있는 방법.

+0

만약 당신이 ARC를 끄면, 당신은 그 오류들을 제거 할 것입니다. (그리고 새로운 것들을 얻으실 수 있습니다 :-) –

+0

@kalyan Andra 당신의 솔루션을 가지고 있습니까? – Kamarshad

답변

8

이를 ARC를 사용하는 클래스가 아닌 ARC 파일 (Facebook 클래스)을 포함하고 있기 때문에 오류가 발생합니다. 오류()를 언급 한 것처럼 가정합니다.

간략히 설명 드리겠습니다. Automatic Reference Counting(ARC)을 사용하면 컴파일러가 retain, releaseautorelease을 프로그램의 올바른 위치에 자동으로 삽입하므로 더 이상 걱정할 필요가 없습니다. 이것에 대해 컴파일러가 당신을 위해 그것을하기 때문에.

내가 ios 5에서 사용 페이스 북 클래스 (SDK)가, 아니 그렇게 생각 .I 다른 ios 5 호환 Facebook SDK을 필요가 있다고 생각, 페이스 북은 ios 5 호환 facebook ios SDK을 만들지 않았습니다. ARC 사용 가능 코드 (ios 5) 내에서 이러한 Facebook 클래스를 사용하려면이 Facebook 클래스에 대해 ARC을 비활성화하면됩니다 (예 : 컴파일러가이 클래스의 메모리 관리에 신경을 씁니다.) (Facebook Classes)).

이렇게하면 오류가 발생하지 않습니다.

Facebook 클래스에 ARC을 사용하지 않도록 설정 한 후 쉽게 오류없이 Run (빌드) 응용 프로그램을 만들 수 있습니다.

ARC을 사용 중지하려면 "-fno-objc-arc" 플래그를 설정하기 만하면됩니다.

1) 응용 프로그램 대상으로 이동하십시오.

2) 빌드 단계를 선택하십시오.

3) 컴파일 소스 -> 설정 "-fno-objc-arc" 모든 Facebook 클래스의 플래그.

이제 응용 프로그램을 다시 실행하십시오.

희망, 도움이 될 것입니다.

0

자동 참조 계산 사용 안 함 이러한 클래스의 경우.

단계를 따르십시오. 타겟 -> 빌드 단계 -> 소스 컴파일에 컴파일러 플래그를 추가하십시오.

엑스 코드 Disabling ARC

사용되는 플래그는 -fno-objc-arc 눌러를 작성 후 입력합니다.! 컴파일러 플래그 아래 행의 오른쪽 열을 두 번 클릭해야합니다. 희망이 도움이 되길 바래요 :)