회사에서 iOS 오류 건 확인 중, 아래와 같은 알림이 뜬다는 요청이 들어왔다.
해당 알림을 보자마자 '이건 뭔 케이스지..?' 라는 생각이 들었다.
나는 저 알림이 뜬 이유가 Deprecated 된 메소드를 사용해서 그러나 싶었지만,
요청 내용을 보니 함께 첨부해준 Apple 문서 URL이 있어서 들어가봤다.
developer.apple.com/documentation/xcode/using_the_latest_code_signature_format
대충 해당 문서의 내용은 iOS 14.2 Beta 2 에서부터 새롭게 앱을 서명하는 방식이 추가 되었으니
이제부턴 새로운 앱 서명 방식을 이용해야 한다... 뭐 그런 얘기인 것 같다.
문서를 보면 터미널에서 codesign 커맨드를 이용하여
해당 앱이 재서명이 필요한지 여부를 확인할 수 있다고 해서 한번 확인 해봤다.
codesign 커맨드를 사용해서 확인하려면 .app 파일이 필요한데,
이 파일은 .ipa 파일을 압축해제 하면 나오는 Payload 디렉토리 내에 있으니 먼저 압축해제 부터 하자.
혹시 압축해제 하는 방법을 모른다면 위의 게시물 내에 있으니 참고하시길...
이후 나온 Payload 디렉토리 내에 있는 파일을 터미널 Codesign 명령으로 한번 봐보자.
codesign -dv /path/to/MyApp.app
커맨드를 입력하면 여러 내용들이 나타나는데 거기서 확인해야 하는 내용은
'v=20200' 이 부분만 확인하면 된다. 해당 값이 20400 보다 작다면 재서명이 필요한 앱이라고 문서에 나와있다.
나 같은 경우엔, 저 업데이트 해야 한다는 메세지가 뜬 이유는 재서명을 해야 되서 그런 것 같다.
그래서 재서명을 하려고 하는데, 솔직히 문서에 나온 내용이 잘 이해가 안간다 그래서 문서의 위쪽 내용을 보면
macOS 10.14 이상에서 앱 서명을 한 경우엔 새로운 서명 방식이 적용이 되어 있을거라고 하길래, 그냥 앱을 최신 mac에서 빌드해봤다.
역시... macOS 10.14 이상 mac에서 앱을 재빌드 하면 바로 해결된다.
끄읕