반응형

Apple Developer 계정 관련

https://developer.apple.com/ 에서 생성

Apple Developer 계정 기업으로 등록 하는 경우
D-U-N-S number 발급필요 (국제 사업자등록번호)

  1. 기존 발급 사항이 있으면, 해당 번호를 입력하여 사용
  2. 기존 발급 사항이 없으면, 신규 신청 발급 필요 (약 3~4일 소요) -> 애플 사이트에서 직접 신청
  3. 애플 개발자 계정 멤버십은 1년 이용 기간

Apple Developer 계정은 연 $99의 비용이 소요 (애플 기기로 인증이 되어야 함)

 

 

 

Apple Developer MemberShip 갱신

https://developer.apple.com/account

 

 

결제 승인이 나고, 개발자 승인이 완료되어야 애플 개발자 등록이 완료됐다고 할 수 있는데 처리 시간은 48시간 이내

 

 

 

 

 

 

 

 

 

 

 

- 권장사양 (5.1 기준) -

 

Mac OS Monterey https://support.apple.com/ko-kr/HT211683 - Mac OS 버전 선택
다운그레이드할 수 있는 버전의 한계(커트라인)가 존재합니다. 맥 제품을 처음 구입했을 때, 탑재되어 있던 OS(운영체제)까지만 버전을 내릴 수 있습니다
XCode https://tngusmiso.tistory.com/83

https://developer.apple.com/download/all/


Xcode 12.4가 지원되지만 iOS 15 디바이스의 로컬 테스트를 진행하려면 Xcode 13이 필요합니다.
iOS iOS 다운그레이드는 가능 하지만 다운그레이드 버전 자체를 인식 안할 수 도있다.

 

 

Apple Developer 인증서 관련

https://sujinnaljin.medium.com/ios-certificate-%EC%99%80-provisioning-profile-e1b9455e8a51 - 자세히 설명된 글

  • Xcode와 Developer 계정 연결
  • 앱에 대한 식별자(App ID) 생성
  • 앱 배포를 위한 프로비저닝 프로파일 생성
  • 앱의 크리에이터임을 보여주는 인증서 사이닝 생성
  • 계정에 iOS 디바이스 등록

https://docs.unrealengine.com/4.27/en-US/SharingAndReleasing/Mobile/iOS/Provisioning/ - iOS 프로비저닝

프로비저닝 프로파일은 iOS 디바이스를 Apple 인증서와 연결하는 역할을 담당

IOS 프로젝트 패키징에 필요한 앱의 코드 사이닝 (프로비저닝 프로파일, 인증서)

 

 

인증서 애플 대신 앱을 실행 할 수 있는 권한
프로비저닝 프로파일 IOS 디바이스들을 인증서와 연결하는 역활 담당
특정 기기 에서 특정 앱을 실행할 수 있는지 확인하는데 필요한 정보


 

이 결과로 만들어진 .mobileprovision (iOS) / .provisionprofile (MacOS) 파일은

앱을 컴파일하는 과정에서 사용되며, 앱을 테스트하려고 하는 디바이스에 설치가 되어야한다.

서명 인증서 생성 UE 프로젝트를 iOS 디브사으세 디플로이하고 사용 Certificates, Identifiers & Profiles - Certificates
iOS 장치 등록 개발 중에 UE 프로젝트를 설치할 수 있게 하려는 장치 추가
 
참고로 빌드하는 (XCode를 돌리는) Mac도 등록을 해야한다.
Certificates, Identifiers & Profiles - Devices

Select Devices 할 때, 기기 등록시 24~72 시간 걸릴 수 있으므로 미리 하는 것이 좋다.
App ID 만들기 앱 ID는 단일 개발 팀에서 하나 이상의 앱을 식별하는 데 사용되는 두 부분으로 된 문자열 Certificates, Identifiers & Profiles - Identifiers
프로비저닝 생성 및 가져오기 1. 개발 주기 동안 게임을 빌드하고 설치하는 데 사용되는 개발 프로비저닝 프로필

2. 게임을 App Store에 제출하는 데 사용되는 배포 프로비저닝 프로필 입니다.
Certificates, Identifiers & Profiles - Profiles

 

*순서 중요*

1. 키체인 - 인증서 지원 - 인증기관에서 인증서 요청

생성된 인증서 저장

이 csr파일은 인증서 발급을 위해 필요한 정보를 담고있는 데이터

→ 이 공개키가 포함된 인증서를 만들고싶다 하는 인증서를 위한 신청서

 

 

2. Apple Developer 사이트 - Certificates

Apple Development 인증서 - iOS, macOS, tvOS, watchOS 같은 앱들을 실행하고 앱 기능을 사용할 때

Apple Dirtribution 인증서 - App Store 제출용이나 Ad Hoc 등 배포 용도의 앱들을 서명하는데 사용.

 

주의

 

Run 을 하든 Archive 하든, 기본적으로 프로젝트를 빌드할 때 필요한 인증서는 Development 인증서입니다.

 

아까 다운로드한 csr파일 (Certificate Signing Request) 선택

생성된 인증서를 다운받고 더블클릭하여 로컬에 설치

이 cer파일이 서명 인증서(Signing Certificate)

애플 발급 인증서 (공개키 포함) + 개인키 = 서명 인증서(cer)

 

“서명 인증서”를 가지고 “코드 서명”을 함

 

배포용 이라 해서 언리얼 에서 따로 인증서를 배포 인증서로 설정할 필요는 없다.

(Shipping 버전만 배포 가능) 배포할 때 서명 한번 더 하는 알림 창 나온다.

 

 

Identifiers 생성

App IDs 선택 후, Bundle ID 지정

앱 실행에 필요한 App ID

 

Device 등록

이 앱을 설치할 수 있는 기기들 등록

 

Profile 등록

마지막으로 Profile 생성에서 각각 ios 하나 / mac 하나씩

 

 

XCode 설정이 언리얼 설정이랑 아예 별개로 동작하는것 같다.

XCode 말고 언리얼 에디터 프로젝트 세팅 안에서 직접 설정해주어야 한다.

-> CleanUp 하면 연결되어있는 Apple Developer 계정에서 자동으로 찾아준다. (CMD 로 하였을 시)

 

DefaultEngine.ini 에 저장되어있으면 된다.

다음과 같이  초록색이면 사용해도 되는 Profile임

해당 프로바이저닝 파일들은  /Library/MobileDevice/Provisioning Profiles 경로에서 찾음

 

 

Apple Developer 사이트에 등록되어있는 프로바이저닝 로컬에 갱신하려면 XCode - Preferences - Accounts 에서 Download Manual Profiles 를 누르면 /Library/MobileDevice/Provisioning Profiles 에 갱신된다.

 

왼쪽 - 빌드 / 오른쪽 -distribution (배포) 옵션

 

주의

 

Run 을 하든 Archive 하든, 기본적으로 프로젝트를 빌드할 때 필요한 인증서는 Development 인증서입니다.

때문에 해당 인증서는 Development 인증서로 설정해 주어야 한다.

 

 

DefaultEngine.ini 에 다음과 같이 쓰임

[/Script/IOSRuntimeSettings.IOSRuntimeSettings]
MobileProvision=[provisionname].mobileprovision
SigningCertificate=Apple Development: [username]
BundleIdentifier=[companyname]
BundleName=[projectname]

 

 

CleanUp 이나 Regenerate 해서 Signing Certificate 가 None이 뜰 때가 있는데

에디터에서 다시 패키징하면 서명주체가 다시 생기긴하지만 시간이 걸리므로

 

 

해결방안

Build Settings 에서 Code Signing Entitlements 싹 다 없애주면 빌드 됨 (인증서를 다시 찾는 듯?)

Code Signing Entitlements 항목들을 지워줘야함

 

 

 

만약 젠킨스 같이 원격에서 빌드하는데 CodeSign Failed 가 뜨면

Library/MobileDevice/Provisioning 모두 삭제하고 XCode 에서 다시 다운로드

 

혹은 Mac 내부에서 서명할 때 암호 입력하는 팝업에서 항상 허용을 하지않았을 경우도 발생한다.

 

반응형

+ Recent posts