티스토리 뷰

🍏/iOS

[iOS] Provisioning Profile 헷갈리는 것 정리

사용자 eungding 2021. 6. 1. 21:11
728x90
반응형

Provisioning Profile 관련 헷갈리는 것들을 기록 ✏️

 

[1] Provisioning Profile의 Capabilities 는 지원가능한 Capabilities를 말한다. 

 

MyApp이라는 예제 앱을 만들고 developer 사이트 > Identifiers 에 가서 App ID를 등록해줬습니다. 

이 때 Capabilities 중 Access WiFi Information을 체크해준 것을 주목해주세요! 

 

 

그리고 Profiles에서 Provisiong Profile을 만들고

 

 

다운로드 눌러줍니다. 

 

 

그리고 다운로드된 Provisiong Profile을 더블 탭하여 설치해주면

XCODE Provisiong Profile 목록에 뜨는 데 선택해줍니다. 

 

 

 

느낌표 눌러서 Provisiong Profile 정보를 보면 Capabilites가 이렇게 적혀있습니다. 

제가 아까 추가한 Access Wifi Information도 잘 들어가있습니다. 

 

 

 

근데 여기서 제가 헷갈렸던 점은 이런 Capabilites를 가진 프로비져닝 파일을 넣으면 

XCode의 Capabilites도 같이 업데이트 되어야하는거 아니냐!! 입니다. 

 

제가 XCode에서 Capability를 누르고 일부러 Access Wifi Informatio를 넣어준 사진인데요, 

아래처럼 알아서 Provisiong Profile 의 Capabilites가 Xcode의 Capabilites로 동기화 되야하지않나!! 하는 말입니다. 

 

 

 

⚠️ 하지만 헷갈리면 안됩니다 ⚠️

Provisiong Profile은 현재 내 플젝에서 사용하겠다고 선택한 Capability 목록을 담고 있는게 아니라

선택가능한 / 지원가능한 Capability 목록을 담고 있는 것입니다. 

 

제가 App ID 만드는 단계에서 Capabilites 목록에서 Access Wifi Information를 체크했지만

Xcode에서 Capability로 추가해야지 사용하겠다~~ 하는 것입니다.

 

 

또 다른 예로 Capabilites에서 체크 안한 것을 Siri를 Capability로 추가해보겠습니다. 

이 Provisiong profile은 Siri capability를 지원하지 않는 다고 나옵니다. 

 

 

 

developer 사이트 > App ID 에 들어가서 Sirikit을 Capabilites에 추가하고 Save해줍니다. 

 

 

Save하면 이런 경고가 나오면서 

 

 

Profile이 invalid하고 나오게 됩니다. 

 

 

해당 아이템을 선택한 후, Edit > Save 하면 갱신할 수 있고

갱신된 파일을 다운받아서 다시 더블탭해서 설치해줍니다. 

 

그럼 지원가능한 Capabilites 목록에 Siri가 포함된 Provisiong Profile 이 새로 import 된 것이니까 

아까 Siri를 Capability로 추가해서 발생했던 워닝이 사라진 것을 볼 수 있습니다. 

 

 

 

 

[2] Capabilites를 바꿔도 이미 배포되어있는 앱은 영향을 받지 않는다. 

 

아까 Capabilites에 siri를 새로 추가할 때,

다음과 같은 얼럿이 떴습니다. 

 

Capabilites를 추가 또는 삭제하면 해당 App ID를 포함하고 있는 provisiong profiles가 invalidate되고

그 provisiong profiles는 미래에 regenreated 되어야한다는 내용입니다. 

 

 

iOS 배포되어 있는 앱의 identifier Capabilities 변경하기 글에서 애플과 이야기 나누신 내용을 봤는데, 

현재 배포되어 있는 앱에는 영향이 없고 앞으로 배포할 때 프로비저닝 파일을 업데이트하여 배포하라고 하네요 

 

 

728x90
반응형
댓글
댓글쓰기 폼