iOS 신규 서명 관련

ddo_h·2021년 9월 21일
0

서론

iOS 15에는 업데이트된 코드 서명 형식이 필수적으로 적용되어야 함
코드 서명 형식이 적용되지 않을 경우 다음과 같은 알림과 함께 앱이 정상적으로 설치되지 않음
"YourAppName" Needs to be updated

본론

신규 서명 형식을 적용하려면 macOS 10.14 이상 환경에서 빌드해야 함
*필자는 BigSur, Xcode 12.0 환경에서 작업

테스트

앱에 새 서명이 필요한지 확인

% codesign -dv /path/to/MyApp.app

CodeDirectory v=20400 보다 작을 경우 다시 서명해야 함

iOS 15.0 호환 가능 기기 목록

  • iOS 14.0을 지원하는 기기
  • 아이폰 8, 8 플러스
  • 아이폰 7, 7 플러스
  • 아이폰 6s, 6s 플러스
  • 아이폰 SE, SE 2세대
    (6s 플러스는 실제로 설치가 불가능함)

iOS 15.0 beta 설치

betaprofiles.com
*데이터 백업 필수

Xcode 13.0 beta 설치

https://developer.apple.com/download/
Xcode 13.0 beta 버전에서 빌드할 경우 iOS 15.0 beta를 타겟으로 테스트할 수 있음
-- 21.09.20 기준 : Xcode 13.0 정식 업데이트됨
*beta버전은 테스트 용도로 사용, 앱 배포 시 정식 출시된 Xcode 사용 권장

관련 에러

failed to get the task for process <000>

Code Signing을 Distribution(배포)용으로 선택한 후 디버깅할 경우 발생하는 에러
배포용을 개발용 인증서로 변경할 경우 해당 오류는 해결됨
Developer(개발)용 : Simulator나 usb 디버깅
Distribution(배포)용 : ipa 생성

MacBook M1 사용할 경우 발생하는 빌드 오류

Xcode beta -> show info -> check Rosetta -> 종료 후 재실행

swift 코드 오류

beta버전에서는 object-c 프로젝트는 정상적으로 빌드되지만, swift 프로젝트는 정상적으로 빌드되지 않음

기타

Xcode12, 13 비교

같은 앱을 패키징 하더라도 DistributionSummary.plist의 구성 요소에 변화가 있었음
profile 항목에 dateExpires가 추가됨
Appversion, team Info 항목의 위치가 변경됨

Xcode format

Project Document -> project format에 있는 항목을 Xcode 13.0-compatible로 변경하게 되면?
Xcode 12.0에서 해당 프로젝트가 정상적으로 열리지 않음
해당 설정은 앱 환경이랑 상관없이 Xcode 프로그램과 관련된 설정으로 버전을 올리게 되면 하위 버전의 xcode와 호환이 안됨

참고 자료_invanti

profile
열심히!

0개의 댓글