다음을 통해 공유


Wear 앱 패키징

Warning

다음 문서 및 샘플 프로젝트는 더 이상 기본 확인할 수 없습니다. Xamarin.Android 11.1을 기준으로 Android 핸드헬드 애플리케이션 내에서 Android Wear 애플리케이션을 자동으로 패키징하는 것은 더 이상 지원되지 않습니다. 대신 Android Wear 애플리케이션을 독립 실행형 애플리케이션으로 배포하는 것이 좋습니다.

Android Wear 1.0 앱은 Google Play에서 배포할 전체 Android 앱과 함께 패키지됩니다.

Android Wear 2.0 앱은 독립 실행형 애플리케이션으로 Google Play에 제출할 수 있습니다.

자동 패키징

Xamarin Android 5.0부터 Handheld 프로젝트에서 Wear 프로젝트로 프로젝트 참조를 만들 때 Wear 앱이 핸드헬드 앱에서 리소스로 자동으로 패키지됩니다. 다음 단계를 사용하여 이 연결을 만들 수 있습니다.

  1. Wear 앱이 아직 Handheld 솔루션에 속하지 않은 경우 솔루션 노드를 마우스 오른쪽 단추로 클릭하고 기존 프로젝트 추가 > 를 선택합니다...

  2. Wear 앱의 .csproj 파일로 이동하여 선택하고 열기를 클릭합니다. 이제 착용 앱 프로젝트가 핸드헬드 솔루션에 표시됩니다.

  3. 참조 노드를 마우스 오른쪽 단추로 클릭하고 참조 추가를 선택합니다.

  4. 참조 관리자 대화 상자에서 Wear 프로젝트를 사용하도록 설정한 다음(검사 표시를 추가하려면 클릭) 확인을 클릭합니다.

  5. Handheld 프로젝트의 패키지 이름과 일치하게 Wear 프로젝트의 패키지 이름을 변경합니다(속성 > Android 매니페스트에서 패키지 이름을 변경할 수 있습니다).

Wear 앱의 패키지 이름이 핸드헬드 앱의 패키지 이름과 일치하지 않으면 XA5211 오류가 발생합니다. 예시:

Error XA5211: Embedded wear app package name differs from handheld 
app package name (com.companyname.mywearapp != com.companyname.myapp). (XA5211)

이 오류를 해결하려면 Handheld 앱의 패키지 이름과 일치하도록 Wear 앱의 패키지 이름을 변경합니다.

빌드 모두 빌드 > 를 클릭하면 이 연결은 Wear 프로젝트의 자동 패키징을 기본 핸드헬드(전화) 프로젝트에 트리거합니다. Wear 앱은 자동으로 빌드되고 핸드헬드 앱에 리소스로 포함됩니다.

Wear 앱 프로젝트에서 생성하는 어셈블리는 Handheld(전화) 프로젝트에서 어셈블리 참조로 사용되지 않습니다. 대신 빌드 프로세스는 다음을 수행합니다.

  • 패키지 이름이 일치하는지 확인합니다.

  • XML을 생성하고 Handheld 프로젝트에 추가하여 Wear 앱과 연결합니다. 예시:

    <!-- Handheld (Phone) Project.csproj -->
    <ProjectReference Include="..\MyWearApp\MyWearApp.csproj">
        <Project>{D80E1FEF-653B-448C-B2AA-609C74E88340}</Project>
        <Name>MyWearApp</Name>
        <IsAppExtension>True</IsAppExtension>
    </ProjectReference>
    
  • Wear 앱을 Handheld 프로젝트에 원시 리소스로 추가합니다.

수동 패키징

버전 5.0 전에 Xamarin.Android에서 Android Wear 앱을 작성할 수 있지만 다음 수동 패키징 지침에 따라 앱을 배포해야 합니다.

  1. 웨어러블 프로젝트 및 핸드헬드(전화) 프로젝트에 동일한 버전 번호와 패키지 이름이 있는지 확인합니다.

  2. 웨어러블 프로젝트를 릴리스 빌드로 수동으로 빌드합니다.

  3. 릴리스를 수동으로 추가합니다. APK(2단계)에서 Handheld(전화) 프로젝트의 Resources/raw 디렉터리로 이동합니다.

  4. 핸드헬드 프로젝트에서 웨어러블 APK를 참조하는 새 XML 리소스/xml/wearable_app_desc.xml 수동으로 추가합니다(3).

    <wearableApp package="wearable.app.package.name">
        <versionCode>1</versionCode>
        <versionName>1.0</versionName>
        <rawPathResId>NAME_OF_APK_FROM_STEP_3</rawPathResId>
    </wearableApp>
    
  5. 수동으로 새 XML 리소스를 <meta-data /> 참조하는 Handheld 프로젝트의 AndroidManifest.xml<application> 요소에 요소를 추가합니다.

    <meta-data android:name="com.google.android.wearable.beta.app"
        android:resource="@xml/wearable_app_desc"/>
    

Android 개발자 사이트의 수동 압축 지침도 참조하세요.