모바일 앱을 사용자 지정하고 빌드합니다

이전에 래핑의 기능, 작동 방식 및 이점에 대해 배웠습니다. 이 기사에서는 래핑 기능을 사용하여 하나 이상의 캔버스 앱을 단일 기본 모바일 앱 패키지로 패키징하는 방법을 배웁니다.

전제 조건

  • 앱을 등록하고 Microsoft Identity 플랫폼에서 API 권한을 구성하려면 Azure Portal에 대한 액세스 권한이 필요합니다.
  • 새 조직과 앱을 추가하려면 Visual Studio App Center에 대한 액세스 권한이 필요합니다.
  • 모바일 사용자 배포를 위해 패키징할 수 있는 하나 이상의 (솔루션에 저장된) 캔버스 앱이 필요합니다.
  • Android 플랫폼을 사용하려면 앱을 등록하기 전에 키를 생성한 다음 서명 해시를 생성해야 합니다. 리디렉션 URI를 구성하려면 생성된 서명 해시가 필요합니다.

환경에 Power Apps용 래핑 설치

래핑 기능은 Microsoft Intune, Microsoft App Center, Google Play 스토어Apple Business Manager와 같은 배포 채널을 통해 사용자 지정 브랜드 Android 및 iOS 기본 모바일 앱으로 배포할 수 있는 캔버스 앱의 모바일 버전을 생성합니다.

Power Apps용 래핑을 사용하려면 환경에 설치해야 합니다. Power Platform 관리 센터Dynamics 365 앱 섹션으로 이동하여 Power Apps용 래핑을 선택하고 설치 옵션을 클릭합니다.

Power Apps에 대한 래핑을 설치합니다.

목록에서 환경을 선택하고 설치 버튼을 클릭합니다.

환경을 선택하고 설치를 시작합니다.

참고

Power Apps용 래핑을 설치하려면 환경에 대한 관리자 권한이 있어야 합니다.

솔루션에 캔버스 앱 추가

Power Apps용 래핑에는 앱이 솔루션의 일부가 되어야 합니다. 캔버스 앱이 이미 솔루션의 일부가 아닌 경우 기존 솔루션이나 새 솔루션에 추가합니다. 솔루션 섹션으로 이동하여 솔루션을 선택하고 편집 버튼을 누릅니다.

솔루션을 선택합니다.

상단 메뉴에서 + 기존 추가 옵션을 선택하고 드롭다운 목록에서 앱 > 캔버스 앱을 선택합니다.

메뉴에서 기존 항목 추가를 선택합니다.

Dataverse 외부 탭을 선택하고 목록에서 앱을 선택합니다. 이 앱을 솔루션에 추가하려면 추가 버튼을 누릅니다.

솔루션에 앱 추가를 선택합니다.

추가 정보: 솔루션에 앱 추가

앱 등록

Azure Portal을 사용하여 조직 디렉터리에서 앱을 새로 등록합니다. 자세한 단계는 빠른 시작: Microsoft ID 플랫폼에 애플리케이션 등록을 참조하세요.

참고

단일 테넌트 및 다중 테넌트 고객 모두 래핑을 사용하여 Power Apps 캔버스 앱을 기반으로 기본 모바일 앱을 만들 수 있습니다.

단일 또는 다중 테넌트 제조업체인지 여부에 관계없이 앱에 대해 지원되는 계정 유형을 선택할 때 임의의 Azure AD 디렉터리 - 다중 테넌트를 포함하는 옵션 중 하나를 선택하여 래핑을 활성화해야 합니다. 다음 계정 유형 중 하나를 선택하세요.

  • 모든 조직 디렉터리의 계정(모든 Azure AD 디렉터리 - 다중 테넌트)
  • 모든 조직 디렉터리의 계정(모든 Azure AD 디렉터리 - 다중 테넌트) 및 개인 Microsoft 계정(예: Skype, Xbox)입니다.

앱 등록 - 래핑을 지원하는 계정 유형입니다.

중요

  • 래핑은 현재 다중 테넌트 계정 유형을 지원합니다. 단일 테넌트 계정 유형은 아직 지원되지 않습니다. 계정 유형에 대한 추가 정보: Microsoft ID 플랫폼의 계정 유형
  • 리디렉션 URI필수 형식과 일치하도록 하려면 앱 등록을 만드는 동안 리디렉션 URI를 만들지 마세요. 앱 등록이 완료되면 앱으로 이동한 다음 인증 > + 플랫폼 추가를 선택하여 플랫폼을 대신 추가합니다.
  • 대상으로 지정하려는 각 플랫폼(iOS, Android)에 대해 별도의 리디렉션 URI를 만들어야 합니다.

앱을 등록한 후 나중에 Power Apps 내에서 래핑 프로젝트를 구성할 때 필요한 애플리케이션(클라이언트) ID리디렉션 URI를 복사합니다. 추가 정보: 애플리케이션 등록

리디렉션 URI 형식

iOS의 경우 리디렉션 URI에는 번들 ID만 필요합니다.

예를 들어 iOS의 경우:

  • 번들 ID: com.contoso.myapp
  • 리디렉션 URI: msauth.com.contoso.myapp://auth

Android의 경우 리디렉션 URI에는 패키지 이름서명 해시가 필요합니다. 서명 해시를 생성하려면 키를 생성한 다음 서명 해시를 생성합니다.

예를 들어 Android의 경우:

  • 패키지 이름: com.contoso.myapp
  • 리디렉션 URI: msauth://com.contoso.myapp/<generated signature hash>

환경에 등록된 앱 허용

Power Platform 환경에서 Azure Portal을 사용하여 등록된 앱을 허용해야 합니다. 이 단계를 수행하려면 관리자Power Apps PowerShell 모듈의 최신 버전을 사용하고 앱 등록 단계의 애플리케이션(클라이언트) ID를 사용하여 다음 cmdlet을 실행합니다.

Add-AdminAllowedThirdPartyApps -ApplicationId <App ID>

참고

  • cmdlet은 관리자Power Apps PowerShell 모듈의 2.0.144 이상 버전에서 사용할 수 있습니다.
  • 이 cmdlet을 실행하려면 전역 테넌트 관리자 권한이 필요합니다. 이 cmdlet을 사용하면 관리자가 Azure AD에 등록된 어떤 타사 애플리케이션이 Power Platform 연결을 호출할 수 있는지 지정할 수 있습니다.

API 권한 구성

Azure Portal을 사용하여 이전에 등록한 앱에 대한 다음 API 권한을 추가 및 구성합니다.

  • Microsoft API
    • Dynamics CRM
  • 조직에서 사용하는 API
    • Azure API 연결
    • PowerApps 서비스
    • Power BI(캔버스 앱이 Power BI 데이터를 사용하는 경우에만 필요)
    • Microsoft 모바일 애플리케이션 관리(모바일 앱 배포에 Microsoft Intune을 사용하려는 경우에만 필요)

참고

내 조직에서 사용하는 API에서 권한을 찾을 수 없으면 다음 PowerShell 명령을 적절하게 실행하고 다시 시도하세요.

  • 누락된 Azure API 연결 권한:
    Connect-AzureAD -TenantId <your tenant ID>
    New-AzureADServicePrincipal -AppId fe053c5f-3692-4f14-aef2-ee34fc081cae -DisplayName "Azure API Connections"
    
  • PowerApps 서비스 권한 누락:
    Connect-AzureAD -TenantId <your tenant ID>
    New-AzureADServicePrincipal -AppId 475226c6-020e-4fb2-8a90-7a972cbfc1d4 -DisplayName "PowerApps Service"
    

자세한 단계는 앱 등록 포털에서 권한 요청을 참조하세요.

모바일 앱용 App Center 컨테이너 만들기

이 단계에서는 App Center를 사용하여 모바일 앱용 앱 컨테이너를 만듭니다. 추가 정보: App Center 컨테이너

App Center에 대한 자세한 내용은 Visual Studio App Center 설명서를 참조하세요.

  1. App Center로 이동합니다.

  2. 회사 또는 학교 계정으로 로그인합니다.

  3. 기존 조직이 없는 경우 새로 추가 > 새 조직 추가를 선택하여 새 조직을 만듭니다.

  4. 왼쪽 창의 목록에서 조직을 선택합니다.

  5. > 앱 추가를 선택합니다.

  6. 앱 이름을 입력합니다.

  7. 앱 릴리스 유형을 선택합니다.

  8. iOS 앱에는 맞춤형 OS를 선택하고 Android 앱에는 Android OS를 선택합니다.

    참고

    플랫폼별로 별도의 App Center 컨테이너를 만들어야 합니다.

  9. Android OS의 경우 플랫폼React Native로 선택합니다.

    참고

    App Center에서 모든 앱의 플랫폼React Native여야 합니다.

    App Center 앱 구성.

  10. 새 앱 추가를 선택합니다.

  11. 나중에 Power Apps 내에서 래핑 프로젝트를 구성할 때 필요한 앱의 App Center URL을 복사합니다.

    https://appcenter.ms/orgs/Contoso-sales/apps/Sample-canvas-app-for-Android-OS/를 예로 들 수 있습니다.

    App Center URL.

    추가 정보: App Center URL

  12. 앱 액세스를 위한 새 API 토큰을 만들고 나중에 캔버스 앱 프로젝트 구성을 위해 복사합니다. 추가 정보: App Center API 토큰

    1. 왼쪽에서 설정을 선택합니다.
    2. 앱 API 토큰을 선택합니다.
    3. 새 API 토큰을 선택합니다.
    4. 설명을 입력합니다.
    5. 전체 액세스를 선택합니다.
    6. 새 API 토큰 추가를 선택합니다.

      참고

      대화 상자를 닫기 전에 토큰을 복사했는지 확인합니다.

    7. 토큰을 복사하고 나중에 캔버스 앱 래핑 구성에 사용하기 위해 저장합니다. App Center 토큰.

추가 OS 유형에 대한 앱을 만들려면 위의 단계를 반복합니다.

래핑 프로젝트 만들기

기본 캔버스 앱을 사용하여 이전 단계에서 구성한 Microsoft ID 플랫폼 및 App Center의 앱 정보로 래핑 프로젝트를 만듭니다. 추가 정보: 래핑 프로젝트 구축

래핑 프로젝트를 만들려면 Power Apps에서 으로 이동하고 기본 캔버스 앱 > 래핑을 선택한 다음 이 섹션에서 설명하는 래핑 프로젝트 세부 정보를 입력합니다. 모든 세부 정보를 입력한 후 저장 > 빌드를 선택하여 프로젝트를 구축합니다.

선택한 플랫폼에 따라 구축 프로세스는 Android, iOS 또는 Google 플랫폼용 패키지를 만들기 위한 요청을 대기열에 추가합니다.

참고

워크로드에 따라 구축 프로세스를 완료하는 데 몇 시간이 걸릴 수 있습니다.

구축이 성공하면 App Center에 모바일 앱이 표시됩니다.

표시 이름

모바일 디바이스 홈 화면에 표시될 모바일 앱의 표시 이름입니다.

보조 앱

선택 사항. 동일한 모바일 앱 패키지 내에서 번들할 추가 앱. 추가 정보: 보조 앱, 기본 앱

앱 플랫폼

선택한 플랫폼에 따라 래핑 구축 프로세스의 출력 유형이 결정됩니다. 추가 정보: 앱 플랫폼

내 앱 로그인(프리뷰)

선택 사항 Azure Key Vault URI를 사용하면 필요한 인증서가 포함된 Key Vault를 구성하여 배포용 앱 서명을 자동화할 수 있습니다. 추가 정보: 자동 서명을 위한 Key Vault 설정

중요

  • 이는 프리뷰 기능입니다.
  • 프리뷰 기능은 생산용으로 만들어진 것이 아니므로 기능이 제한될 수 있습니다. 이런 기능은 공식 릴리스 전에 사용할 수 있으므로 고객이 조기에 액세스하고 피드백을 제공할 수 있습니다.

번들 ID

모바일 앱을 고유하게 식별하는 번들 ID. com.contoso.myapp을 예로 들 수 있습니다. 추가 정보: 번들 ID

애플리케이션(클라이언트) ID

이전에 Microsoft ID 플랫폼에 등록한 앱의 클라이언트 ID. 추가 정보: 애플리케이션(클라이언트) ID

리디렉션 URI

Microsoft ID 플랫폼에 등록한 앱에 로그인한 후 리디렉션하기 위해 이전에 만든 URL. 추가 정보: 리디렉션 URI

App Center URL

이전에 복사한 iOS, Android 또는 Google Play 스토어 App Center URL. 추가 정보: App Center URL

App Center API 토큰

이전에 만든 항목. 추가 정보: App Center API 토큰

화면 표시

앱 아이콘, 화면 이미지, 색상 및 테마를 구성합니다.

강조 표시되고 번호가 매겨진 앱의 모양 - 1 - 앱 아이콘, 2 - 시작 화면 이미지, 3 - 환영 화면 이미지, 4 - 배경 채우기 색상, 5 - 버튼 채우기 색상, 6 - 상태 표시줄 텍스트 테마, 7 - 설정 옵션.

iOS 앱 아이콘/ Android 앱 아이콘

iOS, Android 또는 Google Play 스토어 플랫폼 전용 앱의 아이콘 이미지. 아이콘 이미지 파일 크기는 필요한 픽셀 수와 일치해야 합니다. [1]

화면 이미지

  • 시작 화면 이미지

    모바일 앱이 로드되는 동안 시작 화면에 사용될 이미지. 제공되지 않을 때 사용되는 기본 이미지. [2]

  • 환영 화면 이미지

    모바일 앱이 로드되는 동안 환영(로그인) 화면에 사용될 이미지. 제공되지 않을 때 사용되는 기본 이미지. [3]

색상

  • 백그라운드 채우기 색

    시작 화면의 배경에 사용되는 16진수 색 코드. [4]

  • 버튼 채우기 색

    버튼 색을 채우는 데 사용되는 16진수 색 코드. [5]

상태 표시줄 텍스트 테마

앱 상단의 상태 표시줄 텍스트 색. [6]

설정

앱 설정으로 이동합니다. 흔들기 제스처로 사용할 수도 있습니다. 사용자 지정할 수 습니다. [7]

  • 앱 이름 - 앱 이름이며 뒤에 앱 번들 ID가 옵니다.
  • 앱 버전 - 앱의 버전 번호이며 자동으로 생성됩니다.
  • 플랫폼 버전 - Power Apps Mobile 플랫폼의 버전.
  • 세션 ID - 현재 열려 있는 세션의 ID.
  • 캐시 지우기 - 래핑된 앱을 기본 설정으로 재설정합니다.
  • 앱 설정 - 현재 패키지의 일부인 앱 목록을 표시합니다. 이 목록에서 앱을 선택하면 앱이 사용하도록 구성될 수 있는 커넥터 정보를 포함한 앱 세부 정보가 표시됩니다.

자동 서명을 위한 Key Vault 설정

필수 조건

다음 단계를 따라 Key Vault URI를 구성합니다.

  1. 다음 스크립트를 실행하여 4e1f8dc5-5a42-45ce-a096-700fa485ba20(WrapKeyVaultAccessApp) 테넌트에 관리자로 로그인하고 1P AAD 애플리케이션에 대한 Azure 서비스 주체를 만듭니다.

    1. Connect-AzureAD -TenantId <your tenant ID>
    2. New-AzureADServicePrincipal -AppId 4e1f8dc5-5a42-45ce-a096-700fa485ba20 -DisplayName "Wrap KeyVault Access App"
  2. Key Vault가 존재하게 될 구독에서 위에 나열된 서비스 주체에 역할을 추가합니다. 자세한 단계는 사용자를 Azure 구독의 관리자로 할당을 참조하십시오. 참고: Key Vault에 액세스하는 데 최소한의 역할만 필요하므로 3단계에서 기여자를 선택할 수 있습니다.

  3. 만들기 또는 기존 키 자격 증명 모음 액세스: Azure Portal을 사용하여 키 자격 증명 모음 만들기

  4. 키 자격 증명 모음에 대한 액세스 정책 추가

    키 자격 증명 모음에 대한 액세스 정책 추가

  5. 디바이스에 따라 다음 중 하나를 수행합니다.

    • Android의 경우 .pfx 파일을 생성하여 Key Vault 인증서 섹션에 업로드합니다. 추가 정보: 키 생성

      Android용 인증서 만들기.

      참고

      인증서 이름은 태그 단계에 있어야 합니다. 암호는 2단계에서 .pfx 파일을 생성하는 데 사용된 저장 패스 매개 변수 중에 입력한 암호와도 일치해야 합니다.

    • iOS의 경우:

      1. .cer을 두 번 클릭하여 Keychain Access 앱에 설치합니다. 추가 정보: 배포 인증서 만들기
        그런 다음 인증서 파일을 마우스 오른쪽 버튼으로 클릭하고 내보내기을 선택하고 파일 형식 .p12를 선택하여 파일을 .p12 파일로 내보냅니다.

        참고

        4단계에서 설정한 .p12 비밀번호는 다음 단계에서 Key Vault에 업로드할 때 필요합니다.

      2. 프로비저닝 프로파일을 생성하고 다음 명령을 실행하여 base64로 인코딩합니다.

        • Mac: base64 -i example.mobileprovision
        • Windows: certutil -encode data.txt tmp.b64
      3. 이전 단계에서 출력된 base64 문자열을 가져오고 Key Vault 비밀에 업로드합니다. 그런 다음 .p12 파일을 가져와 Key Vault 인증서에 업로드합니다.

        iOS용 인증서 만들기.

  6. iOS 또는 Android 인증서가 생성되어 업로드되면 이름을 번들 ID로 사용하고 업로드된 인증서의 이름에 해당하는 값을 가진 세 개의 태그를 추가합니다.

    태그 추가.

코드 서명

코드 서명 프로세스는 Android 및 iOS 디바이스에 따라 다릅니다.

모바일 앱 패키지 테스트 및 배포

테스트와 배포에 관해서는 App Center 테스트배포를 참조하세요.

참조 항목