Binary File 과 Provisioning Profile

ellyheetov·2025년 7월 7일
0
post-thumbnail

0️⃣ 바이너리 파일?

동료에게 리뷰를 요청하거나, 디버깅이 필요한 경우에는 소스코드를 제공하죠. 만약 개발자가 아니라 사용자에게 제공하려면 어떻게 해야 할까요?

사용자는 직접 코드를 들여다 보고, 직접 빌드해서 실행할 필요가 없어요. 그냥 앱을 설치해서 실행하기만 하면 되니까요. 이때 필요한 게 바이너리 파일이에요.

바이너리 파일은 실행파일 이에요. 프로비저닝 프로파일이 유효하다면 설치만 하면 바로 실행할 수 있죠. 주로 QA에게 전달할 때 바이너리 파일을 이용해요.

🥥 IPA 파일이란?

IPA는 IOS App Store Package Archive의 줄임말 이에요. iOS 앱의 배포 파일 형식인데요. 사실 zip 압축 파일 구조예요. zip 안에는 컴파일된 바이너리 실행 파일과, 앱의 리소스(assets, plist 등)가 들어있어요.

iOS 앱을 완성해서 QA에게 넘기려면 IPA 파일을 전달하는 거예요. Xcode 에서 앱을 Archive 하고 Export 해서 만든 ipa 파일을 QA 팀에 전달해 주고, QA 팀은 이 파일을 iPhone에 설치하면 실행할 수 있어요.

🪪 Provisioning Profile

바이너리 파일을 받았다고 해서 모두 다 실행할 수 있는건 아니예요. 프로비저닝 프로파일이 유효해야 실행할 수 있어요.
프로비저닝 프로파일은 앱을 실행 할 수 있는 권한 증명서인데요. 개발자가 Apple Developer Portal에서 누가, 어떤 앱을, 어떤 디바이스에, 어떤 용도로 실행 권한을 부여하는지에 대한 정보를 기록하죠. 개발자가 지정한 디바이스가 아니면 바이너리 파일이 있어도 실행할 수 없어요.

✅ Provisioning Profile 이 왜 필요해요?

iOS의 강력한 보안 정책 때문이에요. 사용자 디바이스에 아무 앱이나 설치되면 안 된다는 철학이 있어요. 모든 앱은 Apple 이 허가한 개발자가 만들었고, 해당 앱을 실행해도 안전함을 증명해 주는 역할을 해요.

✍🏻 정리

정리하자면, 바이너리 파일은 사용자가 바로 실행할 수 있는 완성된 실행파일이에요. 하지만 IOS는 보안을 위해 Provisioning Profile이라는 권한 증명서가 꼭 필요하죠. 프로비저닝 프로파일은 이 실행 파일이 누구의 것인지, 어떤 기기에서 실행 가능한지를 증명하는 역할을 해요.

profile
 iOS Developer 좋아하는 것만 해도 부족한 시간

0개의 댓글