iOS 앱에 대한 자동 프로비저닝

자동 프로비전은 디바이스에 .NET 다중 플랫폼 앱 UI(.NET MAUI) iOS 앱을 배포하는 데 권장되는 방법입니다. 이 방법을 사용하면 Visual Studio에서 서명 식별자, 앱 ID 및 프로비저닝 프로필을 자동으로 만들고 관리합니다. 자동 프로비저닝 프로세스를 시작하기 전에 Apple 개발자 계정을 Visual Studio에 추가했는지 확인해야 합니다. 자세한 내용은 Apple 계정 관리를 참조하세요.

Apple 개발자 계정을 Visual Studio에 추가한 후에는 연결된 모든 팀을 사용할 수 있습니다. 그런 다음 팀에 대해 인증서, 앱 ID 및 프로필을 만들 수 있습니다. 또한 팀 ID는 프로비저닝 프로필에 포함될 앱 ID에 대한 접두사를 만드는 데 사용되며, 이를 통해 Apple은 앱이 디바이스에 배포될 수 있는지 확인할 수 있습니다.

Important

시작하기 전에 Apple 개발자 계정App Store 커넥트 사용자 라이선스 계약을 수락했는지 확인합니다.

자동 프로비저닝 사용

Apple 개발자 계정을 Visual Studio에 추가한 후에는 .NET MAUI 앱 프로젝트에 대해 자동 프로비저닝을 사용하도록 설정해야 합니다.

  1. 솔루션 탐색기 .NET MAUI 앱 프로젝트를 마우스 오른쪽 단추로 클릭하고 속성을 선택합니다. 그런 다음, iOS > 번들 서명 탭으로 이동하여 구성표 드롭다운에서 자동 프로비저닝선택되어 있는지 확인합니다.

    Screenshot of bundle signing tab for iOS in Visual Studio.

  2. 번들 서명 설정에서 자동 프로비전 구성 하이퍼링크를 클릭합니다.

  3. 자동 프로비저닝 구성 대화 상자에서 팀을 선택합니다. Visual Studio는 프로젝트를 자동으로 프로비전하려고 시도하며 프로세스가 성공적으로 완료되었는지 여부를 나타냅니다.

    Screenshot of the automatic provisioning dialog when it's correctly configured.

    자동 프로비저닝이 실패 하면 자동 프로비저닝 구성 대화 상자에 오류 이유가 표시됩니다.

  4. 자동 프로비저닝 구성 대화 상자에서 확인 단추를 클릭하여 대화 상자를 해제합니다.

디바이스에 배포

.NET MAUI 앱 프로젝트에서 프로비저닝을 구성한 후 디바이스에 앱을 배포할 수 있습니다.

  1. Visual Studio에서 IDE가 Mac 빌드 호스트와 쌍을 이루는지 확인합니다. 자세한 내용은 iOS 개발을 위해 Mac에 페어링을 참조하세요.

  2. iOS 디바이스가 USB 또는 WiFi를 통해 Mac 빌드 호스트에 연결되어 있는지 확인합니다. 무선 배포에 대한 자세한 내용은 .NET MAUI iOS 앱용 무선 배포를 참조 하세요.

  3. Visual Studio 도구 모음에서 디버그 대상 드롭다운을 사용하여 iOS 원격 디바이스를 선택한 다음 Mac 빌드 호스트에 연결된 디바이스를 선택합니다.

    Select your remote device in Visual Studio.

  4. Visual Studio 도구 모음에서 녹색 시작 단추를 눌러 원격 디바이스에서 앱을 시작합니다.

    Visual Studio iOS device debug target choice.

참고 항목

디바이스에 .NET MAUI iOS 앱을 배포하는 다른 방법은 핫 다시 시작을 사용하는 것입니다. 핫 다시 시작을 사용하면 Mac 빌드 호스트 없이 Visual Studio에서 .NET MAUI 앱을 64비트 로컬 iOS 디바이스에 배포할 수 있습니다. 자세한 내용은 핫 다시 시작을 사용하여 iOS 앱 배포를 참조 하세요.

자동 프로비저닝 실행

자동 프로비저닝을 사용하도록 설정하면 다음과 같은 경우 필요한 경우 Visual Studio에서 자동 프로비저닝 프로세스를 다시 실행합니다.

  • iOS 디바이스가 Mac에 연결됩니다. 그러면 자동으로 검사 디바이스가 Apple 개발자 계정에 등록되어 있는지 확인합니다. 등록되지 않은 경우 디바이스를 추가하고 이를 포함하는 새 프로비저닝 프로필을 생성합니다.
  • 앱의 번들 ID가 변경되었습니다. 이렇게 하면 앱 ID가 업데이트되므로 이 앱 ID를 포함하는 새 프로비저닝 프로필이 만들어집니다.
  • Entitlements.plist 파일에서 지원되는 기능을 사용할 수 있습니다. 이 기능은 앱 ID에 추가되고 업데이트된 앱 ID가 있는 새 프로비저닝 프로필이 생성됩니다. 일부 기능은 현재 지원되지 않습니다. 기능에 대한 자세한 내용은 기능을 참조 하세요.

와일드카드 앱 ID

기본적으로 자동 프로비저닝은 앱의 번들 식별자를 기반으로 하는 명시적 앱 ID 대신 와일드카드 앱 ID 및 프로비저닝 프로필을 만들고 사용하려고 시도합니다. Wild카드 앱 ID는 Apple 개발자 계정에서 기본 얻을 프로필 및 ID 수를 줄입니다. wild카드 앱 ID에 대한 자세한 내용은 개발 프로비저닝 프로필 만들기를 참조하세요.

경우에 따라 앱의 자격에는 명시적인 앱 ID가 필요합니다. 다음 자격은 와일드카드 앱 ID를 지원하지 않습니다.

  • 앱 그룹
  • 연결된 도메인
  • Apple Pay
  • 게임 센터
  • HealthKit
  • HomeKit
  • 핫스폿
  • 앱에서 바로 구매
  • 다중 경로
  • NFC
  • 개인 VPN
  • 푸시 알림
  • 무선 액세서리 구성

앱에서 이러한 권한 중 하나를 사용하는 경우 Visual Studio는 명시적 앱 ID를 만들려고 시도합니다.

문제 해결

새 Apple 개발자 계정이 승인되려면 몇 시간이 걸릴 수 있습니다. 계정이 승인될 때까지 자동 프로비저닝을 사용하도록 설정할 수 없습니다.

오류 메시지Authentication Service Is Unavailable와 함께 자동 프로비저닝 프로세스가 실패하는 경우 App Store 커넥트 또는 Apple 개발자 계정에 로그인하여 최신 서비스 계약을 수락했음을 검사.

로컬 키체인 인증서를 찾을 수 없습니다.

개발에 여러 컴퓨터를 사용하는 경우 컴퓨터에서 자동 프로비저닝을 구성하려고 할 때 다음과 같은 오류 메시지가 표시될 수 있습니다. "프로젝트를 자동으로 프로비전하는 동안 오류가 발생했습니다. '인증서: Apple 개발: API를 통해 만들기(키 ID)'가 이미 있지만 로컬 키 집합에서 찾을 수 없습니다. 다른 개발 머신에서 생성되었을 수 있습니다. 해당 컴퓨터에서 인증서 및 프라이빗 키를 가져오거나 해지하고 다시 시도하여 자동으로 새 키를 만듭니다.'":

Screenshot of automatic provisioning failure when the certificate can't be found.

자동 프로비저닝은 개발을 위해 여러 컴퓨터를 사용하는 경우 컴퓨터 간에 인증서를 수동으로 복사할 필요가 없으므로 발생할 수 있습니다. 인증서를 만드는 프라이빗 키가 인증서를 만든 컴퓨터에만 존재하기 때문입니다.

개발 컴퓨터에서 필요한 인증서가 누락되었는지 검색하려면 Visual Studio에서 도구 > 옵션 > Xamarin > Apple 계정으로 이동합니다. 그런 다음 Apple 개발자 계정 대화 상자에서 팀을 선택하고 세부 정보 보기... 단추를 클릭합니다.

Screenshot of Details window when the certificate isn't in the keychain.

필요한 인증서가 컴퓨터에 설치되어 있지 않으면 세부 정보 창에 인증서에 대한 "키 집합에 없음" 상태 표시됩니다. 이 시나리오에서는 특정 인증서를 만든 컴퓨터에서 .p12 형식으로 내보낸 다음 인증서 가져오기 단추를 사용하여 Visual Studio로 가져와야 합니다.

참고 항목

  • Mac에서 다른 Mac으로 인증서를 복사하려면 인증서를 만든 Mac의 키 집합 액세스에서 인증서를 내보낸 다음 다른 Mac의 키 집합 액세스로 가져옵니다.
  • Mac에서 Windows 컴퓨터로 인증서를 복사하려면 Mac의 키 집합 액세스에서 인증서를 내보낸 다음 Windows 컴퓨터에서 인증서 가져오기 단추를 사용하여 Visual Studio로 가져옵니다.
  • 암호로 보호되므로 Windows 컴퓨터에서 Visual Studio에서 만든 인증서를 다른 컴퓨터에 복사할 수 없습니다.

인증서를 가져온 후 Visual Studio는 해당 상태 "Valid"로 표시합니다.

Screenshot of Details window when the certificate has been added to the keychain.

그런 다음 Visual Studio에서 프로젝트를 자동으로 프로비전할 수 있어야 합니다.