2011-01-06 3 views
8

MacOSX로 포팅하려는 iPhone/iPad 앱이 있습니다. 객관적인 C 클래스의 대부분은 UIKit을 포함하지 않는 한 잘 작동합니다. 분명히 인터페이스가 다를 것입니다.iPhone/데스크톱 앱용 동일 코드 기반

Xcode에서 이것을 수행하는 가장 좋은 방법은 무엇입니까? 완전히 새로운 프로젝트를 시작 하시겠습니까? 새 대상을 추가 하시겠습니까? 다른 플랫폼을 어떻게 동기화 할 수 있습니까? 여러 개의 브랜치를 가진 git을 사용해야할까요?

답변

9

두 개의 OS 유형에 대해 서로 다른 목표를 가진 통합 프로젝트를 설정하는 데 어려움이 있었기 때문에 일반적으로이를 소스 파일을 공유하는 두 개의 프로젝트로 분할했습니다.

Mac 및 iOS를 대상으로하는 응용 프로그램의 경우 애플리케이션 용으로 하나의 디렉토리를 만드는 경향이 있습니다. 이 두 프로젝트를이 디렉토리에두고 공유 소스 파일 용으로 하나의 디렉토리를 설정합니다. 하나는 iOS 용 파일이고 다른 하나는 Mac 용입니다. 이 방법을 사용하면 프로젝트가 다를 수 있지만 변경된 공유 파일은 업데이트됩니다. 수동으로 두 파일을 동기화해야하는 경우는 새 공유 파일이 응용 프로그램에 추가되고 두 ​​프로젝트에 개별적으로 추가되어야하는 경우입니다.

많은 문제없이이 기능을 지원하기 위해 기존 프로젝트를 재구성 할 수 있어야합니다.

+0

Mac OS 응용 프로그램을 iOS 응용 프로그램에서 사용하는 방법을 알려줄 수 있습니다. IOS 응용 프로그램에 대한 라이브러리로 사용할 수 있습니다. – siva

0

한 프로젝트의 파일을 다른 프로젝트의 참조로 추가하기 만하면됩니다. 원본 프로젝트 (실제 파일이있는 곳)에서 다른 프로젝트로 끌어서 놓기 만하면됩니다. 대화 상자에서 파일을 복사 할 것인지 묻습니다. 아니오를 선택하십시오. 이렇게하면 두 번째 프로젝트가 첫 번째 프로젝트의 파일을 가리 킵니다. 편집은 두 프로젝트 모두에 적용됩니다.

iOS와 MacOS의 API가 서로 다르더라도이 두 가지 사항이 있으므로주의해야합니다.