Xcode 프로젝트 셋팅 자동화
mod_pbxproj.py 이용한 자동화 방법입니다.
Google Analytics 쪽을 보다가 알게되었네요. 매번 Create Build 할때마다 직접 framework 를 넣어주는건 고통입니다..
1. mod_pbxproj.py script 를 다운받습니다. (링크)
필요한 파일은 mod_pbxproj.py 입니다.
2. PostprocessBuildPlayer 라는 파일을 하나 만듭니다.
안의 내용은 아래를 복사해서 붙여주세요. 확장자는 없습니다.
귀찮으신분은 다운로드 하시면됩니다. 내용은 같습니다.
#!/bin/bash
#Runs post-process build scripts.
#Must follow naming convention PostprocessBuildPlayer_* and be kept in the Assets/Editor folder.
echo "Running post-process build scripts."
for script in `/bin/ls -1 Assets/Editor | grep -i ^postprocessbuildplayer_ | grep -v [.]meta$`; do
chmod +x "Assets/Editor/$script"
echo "[[[ $script ]]]"
"Assets/Editor/$script" "$@"
done
3. framework를 추가해주는 내용의 파일을 작성합니다.
Google Analytics 의 PostprocessBuildPlayer_GA 의 내용입니다만,
아래 내용과 복사붙여넣기하고 framework만 변경하시면 되겠습니다.
파일명은 PostProcessBuildPlayer_* (*는 상황에 맞게 적어주시고요. 확장자는 없습니다)
#!/usr/bin/python
#Add required libraries to Xcode project during build for Google Analytics
from mod_pbxproj import *
from os import path, listdir
from shutil import copytree
import sys
frameworks = [
'AdSupport.framework',
'CoreData.framework',
'SystemConfiguration.framework',
'libz.dylib',
'libsqlite3.dylib'
]
framework_dir = path.join(sys.argv[0],'..','..','Plugins','iOS')
pbx_file_path = sys.argv[1] + '/Unity-iPhone.xcodeproj/project.pbxproj'
pbx_object = XcodeProject.Load(pbx_file_path)
pbx_object.add_framework_search_paths([path.abspath(framework_dir)])
for framework in frameworks:
pbx_object.add_file('System/Library/' + framework, tree='SDKROOT')
pbx_object.save()
4. 파일은 Assets/Editor 안에 넣어줍니다.
저는 Google Analytics 를 붙이다보니 그대로 GA를 사용하였습니다.
5. 주의해야할 점
* 꼭 Assets/Editor 폴더에 넣어주셔야합니다.
* PostprocessBuildPlayer_* 이름으로 추가해주셔야합니다.
일반적으론 문제가 없을 것 같고, 만약 개별적으로 xcode 를 다루시는 분들은 환경에 맞게 설정을 해주셔야하는 부분이 있을 것 같네요
'iOS' 카테고리의 다른 글
업적 및 리더보드 작성하기 (0) | 2015.09.03 |
---|---|
iOS Native - InApp (0) | 2015.08.19 |
애플 개발자 문의 전화번호 (0) | 2015.07.24 |
IOS 홈 버튼 후 다시 어플 실행시 재실행 (0) | 2015.07.22 |
iOS Tester (0) | 2015.07.21 |