2011-03-29 1 views
3

가능한 중복 : 나는 아이폰/아이 패드 응용 프로그램을 가지고
decompile an app binary to get back to source code디 컴파일 아이폰 OS 오브젝티브 C 바이너리

은 좀 재미있는 것입니다. 그것은 물건을 위해 특별한 내부 XML 포맷을 사용하지만, 디바이스가 없으면 어떻게 작동하는지 알 수가 없습니다. 안드로이드 폰 (프리웨어와 오픈 소스)을위한이 기능을 다시 만들고 싶습니다.하지만 독서 부분이 어떻게 작동하는지 알고 싶습니다. 실제로 XML 형식을 알고 싶습니다. 주석이 없으며 이름이 기능에 대해 특별한 것을 말하지 않기 때문에 (XML 파일 만 사용하여) 처음부터 다시 작성하는 것은 매우 어렵습니다.

내가보고 싶은 것은 파일을 읽는 방법, 특정 태그가하는 일 등입니다. 그래서 같은 목적의 Android 앱에 대해 iOS 출력 파일을 변환하는 변환기를 작성할 수 있습니다. 그리고 예, Market을 확인했습니다. 다시 만들고 싶은 응용 프로그램이 없습니다. 실제로는 거의 완전히 재 작성되었습니다.이 iOS 특정 파일에 대해서는 변환기 나 파서 만 필요합니다.

답변

15

iOS 앱 스토어의 모든 앱과 재고 OS 기기의 파일 시스템의 이진 파일이 암호화되어 있습니다.

앱의 작성자를 매우 정중하게 작성하고 관심있는 파서에 대한 소스 코드를 제공하거나 제공할지 확인하십시오.

+12

이 질문은 계속 올라오고 여기서 두 번째 문장은 내가 계속 사람들에게 말하고있는 것입니다. 얼마나 많은 관대 한 개발자가 있는지 놀라게 될 것입니다. 그들이 정확한 코드를 제공 할 수 없다면, 보통 어떻게 작동하는지 알려줄 수 있습니다. –

1

noted here으로 어셈블리 코드를 얻을 수 있지만 어셈블리를 나타내는 방법이 다양하지 않으므로 소스 코드를 얻을 수 없습니다.

+0

.IPA 패키지를 탐색하지 않고 이진수를 DECOMPILE로 지정하고 싶습니다. 이미 그렇게 했으므로, 공부할 내장 XML을 얻었지만 여전히 형식 자체를 얻을 수는 없습니다. – fonix232

+1

@ fonix232 : 디 컴파일이 도움이 될 거라고 생각합니까? 네이티브 코드를 디 컴파일하는 것은 (관리되는 것과는 대조적으로) 까다로운 사업으로, 순수 어셈블리를 읽는 것과 크게 다르지 않습니다. –

+1

XML 태그가 어떤 기능과 관련되어 있는지 쉽게 이해할 수 있습니다. 그러나 어셈블리에서 함수 이름을 실제로 볼 수는 없으며 함수의 본문 만 리디렉션합니다. – fonix232