Version: 2018.1
macOS Player: C++ IL2CPP용 소스 코드 플러그인
Apple TV

Mac 앱 스토어에 애플리케이션 배포

이 페이지에서는 애플리케이션을 Mac 앱 스토어에 배포하는 절차에 대해 설명합니다.

먼저 키체인에 올바른 프로비저닝 프로파일인 “3rd Party Mac Developer Application” 및 “3rd Party Mac Developer Installer” 프로파일이 설치되었는지 확인해야 합니다. 자세한 방법은 서명 ID 및 인증서 유지관리에 대한 Apple의 개발자 문서를 참조하십시오.

편집(Edit) > 프로젝트 설정(Project Settings) > 플레이어(Player) 를 선택합니다. 기타 설정(Other Settings) 탭을 열고 Mac 앱 스토어 옵션(Mac App Store Options) 으로 이동합니다. Unity 에디터는 여기의 설정을 앱의 info.plist 파일에 CF 키로 적용합니다. 자세한 내용은 CF(Core Foundation) 키에 대한 Apple의 개발자 문서를 참조하십시오.

Mac 앱 스토어 옵션
Mac 앱 스토어 옵션
프로퍼티 기능
Bundle Identifier iTunesConnect App의 번들 식별자를 입력합니다. 연결된 info.plist 파일에서는 CFBundleIdentifier로 표시됩니다.

자세한 내용은 CFBundleIdentifier에 대한 Apple 개발자 문서를 참조하십시오.
Version* 애플리케이션 번들 버전(예: 1.0, 2.0)을 입력합니다. 연결된 info.plist 파일에서는 CFBundleShortVersionString로 표시됩니다.

자세한 내용은 CFBundleShortVersionString에 대한 Apple 개발자 문서를 참조하십시오.
Build 앱 버전의 빌드 번호를 입력합니다. 연결된 info.plist 파일에서는 CFBundleVersion로 표시됩니다.

자세한 내용은 CFBundleVersion에 대한 Apple 개발자 문서를 참조하십시오.
Mac App Store Validation 활성화하면 앱에 Mac 앱 스토어의 유효한 영수증이 포함되어 있을 때에만 앱이 실행됩니다. 사용자가 게임을 구매하지 않은 기기에서 게임을 실행하는 것을 방지합니다. 자체 영수증 확인을 구현하였다면 이 설정을 비활성화하십시오.

Mac 앱 스토어 인증(Mac App Store Validation) 체크박스를 선택한 후 파일(File) > 빌드 설정…(Build Settings…) > 빌드(Build) 를 선택하여 앱을 빌드합니다.

그런 다음 GAMENAME.entitlements 파일을 생성하고 아무 위치에나 저장합니다. 이렇게 하는 가장 쉬운 방법은 빈 Mac 앱을 생성하는 것입니다. 이렇게 하려면 Xcode를 열고 macOS 템플릿을 사용하여 새 프로젝트를 생성한 후 성능 표시줄로 이동하여 앱 샌드박스를 활성화합니다. 그러면 기본 .entitlements 파일이 자동으로 생성됩니다.


 <?xml version="1.0" encoding="UTF-8"?>

  <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">

  <plist version="1.0">

  <dict>

  <key>com.apple.security.app-sandbox</key> <true/>

  </dict>

  </plist>

참고: Unity 5.5 이전 버전에서는 info.plist 파일이 자동으로 업데이트되지 않으므로 수동으로 업데이트해야 합니다. 아래의 수동 업데이트 섹션을 참조하십시오.

Xcode 또는 기타 텍스트 에디터에서 info.plist 파일을 열고 다음 키를 추가합니다.

<key>LSApplicationCategoryType</key>

<string>{VALID APP CATEGORY, e.g.: public.app-category.kids-games }</string>

<key>CFBundleSignature</key>

<string>{4 LETTER CREATOR CODE, e. g.:  GMAD }</string>

Xcode 8.0 이상 버전을 사용한다면 info.plist 파일에 다음 필드도 추가해야 합니다.

<key>CFBundleSupportedPlatforms</key>

    <array>
    
        <string>MacOSX</string>
        
    </array>

다음으로 .app의 모든 콘텐츠에 대한 읽기 권한을 수정합니다. 이렇게 하려면 macOS 터미널에 다음을 입력합니다.

 chmod -R a+xr "/path/to/GAMENAME.app"

이전에 생성한 .entitlements로 .App에 서명합니다. 이렇게 하려면 macOS 터미널에 다음을 입력합니다.

 codesign -f --deep -s '3rd Party Mac Developer Application: DEVELOPER NAME' --entitlements "GAMENAME.entitlements" "/AppPath/GAMENAME.app"

설치 프로그램/패키지를 빌드합니다. 이렇게 하려면 macOS 터미널에 다음을 입력합니다.

 productbuild --component GAMENAME.app /Applications --sign "3rd Party Mac Developer Installer: DEVELOPER NAME" GAMENAME.pkg

마지막으로 Xcode ApplicationLoader를 사용하여 앱을 제출합니다.

선택적인 추가 사항

info.plist 수동 업데이트

5.6 이전 버전의 Unity 에디터를 사용할 때에는 앱을 빌드한 후 번들 식별자와 버전 문자열을 수동으로 추가해야 합니다.

info.plist 파일의 다음 섹션을 앱에 적합하게 수정합니다.

<key>CFBundleDevelopmentRegion</key>

<string>{YOUR REGION}</string>

<key>CFBundleGetInfoString</key>

<string>{DESCRIPTIVE INFO}</string>

<key>CFBundleIdentifier</key>

<string>com.{YOUR COMANY}.{YOUR APP NAME}</string>

<key>CFBundleName</key>

<string>{YOUR APP NAME}</string>

<key>CFBundleShortVersionString</key>

<string>{VERSION NUMBER, e.g. 1.0.0}</string>

<key>CFBundleSignature</key>

<string>{4 LETTER CREATOR CODE, e. g.:  GMAD }</string>

<key>CFBundleVersion</key>

<string>{VERSION NUMBER, e.g. 100}</string>

커스텀 아이콘

Unity 에디터는 기본적으로 플레이어 설정(Player Settings) > 기본 아이콘(Default Icons) 에서 지정한 아이콘 이미지의 크기를 줄여서 .icns 파일을 생성합니다. 이에 따라 macOS 파인더와 OS 도크에 앱 아이콘이 표시되는 방법이 정의됩니다. 하지만 원한다면 아이콘을 커스텀 아이콘으로 바꿀 수 있습니다.

  • 폴더를 만들고 폴더 이름을 UnityPlayer.iconset(또는 info.plistCFBundleIconFile/Icon File 필드에 설정된 이름)로 지정하고 다음 이미지 이름을 삽입합니다. 이 폴더에는 .iconset 확장자로 된 파일이 포함되어 있어야 합니다.
    icon_16x16.png

        icon_16x16@2x.png

        icon_32x32.png

        icon_32x32@2x.png

        icon_128x128.png

        icon_128x128@2x.png

        icon_256x256.png

        icon_256x256@2x.png

        icon_512x512.png

        icon_512x512@2x.png

@2x.png 이미지는 파일 이름에 명시된 크기의 두 배여야 합니다. 예를 들어 512x512@2x.png 이미지는 실제 크기가 1024x1024인 이미지여야 합니다. macOS 터미널에서 .iconset 디렉토리가 있는 디렉토리로 이동한 후 다음 커맨드를 입력합니다.

    iconutil -c icns UnityPlayer.iconset

마지막으로 .app 파일을 마우스 오른쪽 버튼으로 클릭하고 Show Contents 를 선택한 후 iconset.icns를 만들어 둔 것으로 바꿉니다.


  • 2017–05–18 편집 리뷰를 거쳐 페이지 게시됨

  • Unity 5.6에서 업데이트된 기능

macOS Player: C++ IL2CPP용 소스 코드 플러그인
Apple TV