Unity

유니티, 맥, Xcode iOS빌드 실패 시 체크해야 할 사항들 정리 Summary of things to check when Unity, Mac, Xcode iOS build fails

정보처리마법사 2024. 1. 23. 22:56
반응형

 

 

유니티, 맥, Xcode iOS빌드 실패 시 체크해야 할 사항들 정리 Summary of things to check when Unity, Mac, Xcode iOS build fails

 

 

 

 

 

*경험에 의한 개인적인 추측도 포함되어 있음

 

 

일단 이 포스팅을 하는 이유는 아래의 에러때문이다.

 

Invalid Signature. A sealed resource is missing or invalid. The file at path “두더지게임 리마스터.app/두더지게임 리마스터” is not properly signed. Make sure you have signed your application with a distribution certificate, not an ad hoc certificate or a development certificate. Verify that the code signing settings in Xcode are correct at the target level (which override any values at the project level). Additionally, make sure the bundle you are uploading was built using a Release target in Xcode, not a Simulator target. If you are certain your code signing settings are correct, choose “Clean All” in Xcode, delete the “build” directory in the Finder, and rebuild your release target. For more information, please consult https://developer.apple.com/support/code-signing. 

 

번역하면 이렇다.

 

잘못된 서명입니다. 봉인된 리소스가 누락되었거나 유효하지 않습니다. "두더지게임 리마스터.app/두더지게임 리마스터" 경로의 파일이 제대로 서명되지 않았습니다. 임시 인증서나 개발 인증서가 아닌 배포 인증서를 사용하여 애플리케이션에 서명했는지 확인하세요. Xcode의 코드 서명 설정이 대상 수준에서 올바른지 확인하십시오(프로젝트 수준의 모든 값을 재정의함). 또한 업로드하는 번들이 시뮬레이터 대상이 아닌 Xcode의 릴리스 대상을 사용하여 빌드되었는지 확인하세요. 코드 서명 설정이 올바른 것이 확실하다면 Xcode에서 “Clean All”을 선택하고 Finder에서 “build” 디렉터리를 삭제한 다음 릴리스 대상을 다시 빌드하세요. 자세한 내용은 https://developer.apple.com/support/code-signing을 참조하세요.

 

즉, 배포인증서가 아닌 개발인증서로 서명했으니 확인해보라는 메시지

 

참고로 저 메시지 나오기 전에, 앱의 이름이 잘못되었다는 메시지도 같이 나왔다. 하나 하나 체크를 해보자

 

1. 유니티에서 iOS 빌드 할 때 예전엔 Product Name에 한글이 입력되었는데 바뀐 건지 뭔지 Xcode 최정 Upload 타이밍에 계속 에러가 나서 Xcode에서 변경을 할지언정 일단 유니티 빌드 할 땐 영어로 넣었다.

 

 

2. 맥북 키체인 접근>로그인>내 인증서와, Xcode Accounts에서 Signing certificates 가 Apple Development 및 Apple Distribution 둘 다 잘 계시는지 안부를 물어보자. 없다면

https://developer.apple.com/account/resources/certificates/list

여기에 가서 Certificates, Identifiers&Profiles 에서 생성을 한 후 다운로드를 하면 된다. 필자는 이것 저것 많이 중복으로 만들어서 지저분한데 필요한 것만 빼고 모두 삭제를 하였다.

 

 

 

 

 

3. 내 맥북이 이상한 건지 Xcode에서 프로젝트를 열었을 때 아래 보이는 Cocoa Pods가 보이지 않았다. 예전엔 그냥 보였는데 뭔가가 어색해졌다. 혹시라도 Xcode에서 프로젝트를 열었는데(Open > 폴더선택) 아래처럼 Pods 가 보이지 않는다면 아마도 그 아래 스샷처럼 Unity-iPhone.xcodeproj 파일만 있고, Unity-iPhone.xcworkspace 파일이 없을 것이다.

 

 

 

그럴 땐 당황하지말고, 유니티로 iOS 빌드한 폴더 (폴더명 예: ios2 )를 우클릭해서 '폴더에서 새로운 터미널 열기' 를 선택해 해당 경로에서 터미널을 실행 후 'pod install' 입력하면 Unity-iPhone.xcworkspace 파일이 생성된다. 그 생성된 파일을 더블클릭해서 Xcode를 실행하면 된다.

 

 

 

반응형

 

3. 아까 에러메시지에서 권고한 것 처럼 Xcode 에서 Product>Clean Build Folder... 를 한 번 해준다. 에러메시지에서는 "Clean All" 이라고 했는데 찾아봐도 없는 것 같아서 그냥 이건가 추측해서 한 번 해줬다.

 

 

4. 유니티 빌드할 땐 영어로 했지만 Xcode에선 한글로 입력했다. 그리고 예전엔 Version, Build 를 비워둬도 됐던 걸로 기억을 하는데, 그냥 에러메시지 그만 만나고 싶어서 혹시나 해서 모두 입력해줬다. 

 

 

 

 

 

5. Signing & Capabilities > All 을 선택하면 Signing (Release)와, Signing (ReleaseForProfiling, ReleaseForRunning, and Debug) 이 두개를 볼 수 있는데, 좀 의아한 점은, 아래 부분은 Signing Certificate Apple Development 가 맞는 것 같은데, 왜 위에 부분 조차도 Distribution 이 아닌 Apple Development 를 요구한다는 것이다. 일단 추측사항은, 내가 둘다 준비를 잘 해뒀고, Xcode 설정에서도 둘 다 있다는 걸 확인 했기 때문에 뒤에 실제로 빌드 후 아카이빙할 때 알아서 Distribution 인증서를 사용할 거라는 것이다.

 

 

아래 부분도 Team을 연결해주면 이런식으로 Display 된다.

 

 

6. Info.plist 파일에 App Uses Non-Exempt Encryption 추가해서 빌드하기. 왜 이걸 수동으로 해야하는 지는 이해가 가지는 않지만. 흠. 번거롭다.

 

 

 

 

 

세월이 흘러서 유니티, Xcode, OSX 들이 업데이트 되면 또 되던게 안되고 그러겠지만

 

어쨌든 지금은 잘 된다.

끗.

 

 

 

두더지게임: 리마스터 무료 게임쿠폰

두더지게임: 리마스터 무료 게임쿠폰 "여러분 공짜 쿠폰입니두더지!!" 구글플레이스토어에서만 됩니두더지! 애플 앱스토어는 정책상 안됩니두더지! 10만골드 2024 20만골드 새해복 30만골드 가족 4

ssscool.tistory.com

 

 

[무료게임쿠폰] 두더지게임: 리그 오브 두더지

[무료게임쿠폰] 두더지게임: 리그 오브 두더지 구글플레이스토어 쿠폰사용 O, 앱스토어 쿠폰사용 X (앱스토어 정책상) 10만골드 가족 20만골드 건강 30만골드 자유 40만골드 행복하자 50만골드 아프

ssscool.tistory.com

 

 

[무료게임쿠폰] 방구키우기: 리그 오브 방구 타이밍 배틀

[무료게임쿠폰] 방구키우기: 리그 오브 방구 타이밍 배틀 구글플레이스토어 쿠폰사용 O, 앱스토어 쿠폰사용 X (앱스토어 정책상) 2022년 07월 29일 이후 업데이트버전 v.1.200.78 이후 버전으로 업데이

ssscool.tistory.com

 

 

[무료게임쿠폰] 뽑기 키우기: 리그 오브 뽑기

[무료게임쿠폰] 뽑기 키우기: 리그 오브 뽑기 다이아 100개 쿠폰 테슬라 다이아 200개 쿠폰 건강 다이아 300개 쿠폰 부자 다이아 400개 쿠폰 행복 다이아 600개 쿠폰 자유 다이아 700개 쿠폰 휴식 다이

ssscool.tistory.com

 

 

똥 피하기: 리그 오브 똥 - Google Play 앱

이 재미있는 가족 친화적인 게임에서 똥을 피하세요! 깨끗하게 유지하며 즐기세요!

play.google.com

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

반응형