일모도원(日暮途遠) 개발자
[XCode] 유료/무료 버전 앱 따로 만들기 본문
지금 만들고 있는 앱은 무료버전인데, 아이콘을 바꾸고 광고를 제거한 유료버전을 만들려고 한다.
XCode 버전은 Version 13.3.1 (13E500a) 이다.
현재 무료앱의 타겟이름은 AraMultiPlayer이다.
AraMultiPlayer을 클릭하여 Duplicate를 선택한다.
새로 생성된 타겟(유료앱)의 이름을 정해준다.
Bundle Id도 바꾸어준다. 난 pro를 추가했다.
타겟의 이름은 AraMultiPlayer_Pro인데 스킴의 이름은 AraMultiPlayer copy로 나온다. 보기 싫다. 같은 이름으로 바꾸어 주자.
Manage Schemes를 선택하자.
스킴을 선택한후 다시 가볍게 한번 클릭하면 아래처럼 이름을 바꿀수 있다.
새로 타겟을 만들면 Plist파일 생기는데 이름에 copy-라는 문구가 있다. 역시 보기 싫다 바꾸어 주자.
필요하면 앱이름도 타겟을 선택한후에 Info로 가서 Bundle display name으로 바꾸어도 된다.
이제 Pro용으로 사용할 앱 아이콘을 이글을 참고해서 추가하자. 현재는 기존(무료)앱의 아이콘만 있다.
이제 소스코드에서 아래처럼 유료, 무료버전을 구분해서 코딩하자.
var navigationTitle: String {
#if FREE
return "NAV.ARAMULTIPLAYER.FREE".localized()
#else
return "NAV.ARAMULTIPLAYER".localized()
#endif
}
기존에는 Preprocessor Macros에서 플래그를 지정한걸로 기억하는데, Swift Flag에서 지정한다.
유료타켓을 선택한후에 Build Setting을 열고 검색에서 Swfit Flag를 선택하자.
여기서 -D 와 PAID(이름은 마음대로 정해도됨)을 추가하자. (참고로 -D를 추가안하니 안되더라. )
무료타겟은 같은 방법으로 FREE를 추가하면 위와 같은 소스코드를 적을수 있다.
이렇게 -D 없이 FREE만 추가하니 안되었음.
이제 스킴을 유료버전을 선택한후 Run을 해보면 아이폰에 유료버전 앱이 설치되는걸 볼수있다.
혹시 라이브러리를 Pod으로 관리하면, Podfile을 열어서 새로만든 타겟도 적용해야 한다. (이건 확실하게 모르겠다. 가끔 기존 타겟으로 라이브러리를 설치해서 잘될때도 있지만, 안될때도 있다)
또 Firebase를 사용하면, 잊지말고 Firebase에 새로운 앱을 등록하고 plist를 다운받아 추가해주자.
'iOS개발 > iOS개발' 카테고리의 다른 글
[iOS개발] 파일앱(Files App)에 내 앱 보이기 (0) | 2022.09.04 |
---|---|
[iOS개발] 앱 평가 요청하기 (0) | 2022.09.04 |
[iOS개발] 앱id (App id, Apple id) 찾기 (0) | 2022.09.04 |
[iOS개발] 버튼의 SF Symbol 사이즈 조절하기 (0) | 2022.07.24 |
[디자인] 앱용 싸이즈별 아이콘 생성하기 (0) | 2022.06.26 |