2012-04-18 2 views
0

나는 버전 1.1 버전 1.0에서 내 응용 프로그램을 업데이트하고 내가 애플에서이 보고서를 가지고 .Few 분 전 전,아이폰 거부 된 앱

우리는 발견 일주일에 애플 아이폰 앱을 제출하는 앱 사용 하나 이상의 비공개 API (App Store Review Guidelines을 준수하지 않음). 비공개 API의 사용은 이러한 API가 변경 될 경우 사용자 환경이 좋지 않을 수 있으므로 허용되지 않습니다.

앱에 다음과 같은 비공개 API가 발견되었습니다 : setContentToHTMLString.

소스 코드에 위에서 언급 한 API와 동일한 이름을 가진 메소드를 정의한 경우 메소드 이름을 변경하여 이후의 제출시 플래그가 적용되지 않도록 Apple의 개인 API와 충돌하지 않도록하는 것이 좋습니다.

또한 위에서 언급 한 API 중 하나 이상이 응용 프로그램에 포함 된 정적 라이브러리에있을 수 있습니다. 라이브러리 소스에 액세스 할 수없는 경우 "문자열"또는 "otool"명령 줄 도구를 사용하여 컴파일 된 바이너리를 검색 할 수 있습니다. "strings"도구는 라이브러리가 호출하는 메소드 목록을 출력 할 수 있으며 "otool -ov"는 Objective-C 클래스 구조와 정의 된 메소드를 출력합니다.

이러한 기술을 통해 문제가있는 코드의 위치를 ​​좁힐 수 있습니다.

해결 방법은 무엇입니까?

+5

setContentToHTMLString을 사용하지 마십시오. – ssteinberg

답변

1

setContentToHTMLStringUITextView의 문서화되지 않은 방법입니다. 제거해야 할 수도 있습니다. 비공개 API에 액세스 할 수 없습니다.

+0

undocumented는 무엇을 의미합니까? 사실 HTML 형식의 문자열을 작성했습니다.이 문자열은 UITextview에 표시하려고합니다. 이 방법을 사용하지 않고 표시하려면 어떻게해야합니까? 이 일을하는 다른 방법을 알고 있습니까? –

+1

문서화되지 않음은 공개 문서가 없음을 의미합니다. 그것은 공개적인 방법이 아닙니다. 애플은 당신이 그것을 사용하기를 원하지 않는다. 당신은 그것을 사용해서는 안됩니다. 당신은 그것이 최초에 존재한다는 것을 알지 못했을 것입니다. – Jasarien

10

당신이 사용하는 경우

setContentToHTMLString 

더 이상 사용하지 마십시오, 경우의 개인 API 방법과 Apple은이 방법을 사용하는 경우 당신이 그것을

3

사용하지 않습니다 비공개 API를 사용하면 대체 기능을 찾아야합니다. 도서관이나 직접 쓰십시오.

setContentToHTMLString이라는 함수를 작성한 경우 함수의 이름을 바꾸고 (아마도 mySetContentToHTMLString 접두사를 붙이기를 원할 수도 있습니다) 모든 용도를 새 이름으로 변경하십시오.

그러면 다시 제출할 수 있습니다.

+0

사실 저는 HTML 형식의 문자열을 작성했습니다.이 문자열은 UITextview에 표시하려고합니다. 이 방법을 사용하지 않고 표시하려면 어떻게해야합니까? 이 일을하는 다른 방법을 알고 있습니까? –

+1

대신 UIWebView 사용 – ikuramedia

+0

HTML을 표시하려면 UIWebView를 사용해야합니다. UITextView는 텍스트를 표시하기위한 것입니다. – apchester