웨어러블 앱 패키징


사용자에게 게시할 때, 사용자는 웨어러블에서 검색하고 앱을 직접 설치할 수 없기 때문에 당신은 휴대용 앱 내부에 웨어러블 앱을 패키지 하여야만 한다. 만약 적절히 패키지가 되었다면, 사용자가 휴대용 앱을 다운로드 하였을 때 시스템은 자동적으로 페어링 된 웨어러블 장치에 웨어러블 앱을 넣는다.

메모: 이러한 특징은 개발할 때 디버그 키를 사용하여 당신의 앱을 서명할 경우 작동하지 않는다. 개발중인 동안에는 adb install 혹은 Android Studio 에서 직접 앱을 설치하는 것이 요구된다.

Android Studio로 패키지


Android Studio에서 웨어러블 앱을 적절한 패키지를 위해:

  1. 웨어러블 앱 모듈을 가르키는 휴대용 앱 내 build.gradle 파일 안에 Gradle 의존성을 선언하라:

    dependencies {
       compile
    'com.google.android.gms:play-services:5.0.+@aar'
       compile
    'com.android.support:support-v4:20.0.+''
       
    wearApp project(':wearable')
    }
  2. Build > Generate Signed APK... 을 클릭하여 당신의 발행 keystore의 명시와 당신의 앱을 서명하기 위해 화면상의 지시를 따르도록 한다. Android Studio는 당신의 프로젝트 루트 폴더에 자동적으로 웨어러블 앱이 내장된 휴대용 앱을 내보낸다.

    그렇지 않으면, 당신은 웨어러블 내의 A룰과 당신의 발행 키로 그것을 서명하기 위한 휴대용 모듈의 B파일을 만들 수 있다. 두 앱은 웨어러블 앱의 작업이 자동적으로 넣는 사항을 갖도록 서명해야 한다.

    android {
     
    ...
      signingConfigs
    {
        release
    {
          keyAlias
    'myAlias'
          keyPassword
    'myPw'
          storeFile file
    ('path/to/release.keystore')
          storePassword
    'myPw'
       
    }
     
    }
      buildTypes
    {
        release
    {
         
    ...
          signingConfig signingConfigs
    .release
       
    }
     
    }
     
    ...
    }

    Android Studio의 우측 수직 툴바의 Gradle 버튼의 클릭과 assembleRelease 작업의 동작으로 휴대용 앱을 생성하라. 이 작업은 Project name > Handheld module name > assembleRelease 아래에 위치한다.

    메모:달갑지 않을수도 있지만 이 예제는 당신의 Gradle 파일에 암호를 내포하고 있다. 암호 대신 환경변수의 생성 방법에 관한 정보를 보려면 Configure signing settings 를 참조하라.

웨어러블과 휴대용 앱 각각의 서명

당신의 생성 작업이 휴대용 장치로에서 개별적으로 웨어러블 앱의 서명이 필요하다면, 당신은 이전에-서명된 웨어러블 앱을 포함하는 휴대용 장치의 build.gradle 모듈에 다음과 같은 Gradle 규칙을 선언할 수 있다:

dependencies {
 
...
  wearApp files
('/path/to/wearable_app.apk')
}

그러면 당신이 원하는 방법으로 휴대용 앱에 서명한다.(Android Studio의 Build > Generate Signed APK... 메뉴 아이템이나 이전 섹션에서 설명했던 Gradle signingConfig 규칙)

수동 패키지


만약 당신이 다른 IDE나 다른 생성 방법을 사용한다면 수동으로 휴대용 앱 내에 웨어러블 앱을 패키지 할 수도 있다.

  1. 당신의 휴대용 프로젝트의 res/raw 디렉토리에 서명된 웨어러블 앱을 복사하라. 우리는 wearable_app.apk로써 APK 참조를 할 것이다.
  2. 버전과 웨어러블 앱 정보가 포함된 res/xml/wearable_app_desc.xml 파일을 생성하라. 예를들어:
    <wearableApp package="wearable.app.package.name">
     
    <versionCode>1</versionCode>
     
    <versionName>1.0</versionName>
     
    <rawPathResId>wearable_app</rawPathResId>
    </wearableApp>

    packageversionCode, 그리고 versionName는 웨어러블 앱의 AndroidManifest.xml 파일 안에 지정된 값과 동일하다. rawPathResId는 APK 자원의 정적 변수명이다. 예를들어, wearable_app.apk의 정적 변수명은 wearable_app이다.

  3. wearable_app_desc.xml 파일의 참조를 위해 당신의 휴대용 앱의 <application> 태그에 meta-data 태그를 추가하라.

      <meta-data android:name="com.google.android.wearable.beta.app" 
                     
    android:resource="@xml/wearable_app_desc"/>
  4. 휴대용 앱을 생성 및 서명하라.

자원 압축 해제


많은 생성 도구는 자동으로 안드로이드 앱의 res/raw 디렉토리에 추가된 파일을 압축한다. 웨어러블 APK는 이미 압축되어있기 때문에, 이 도구들은 웨어러블 APK를 재-압축하고 웨어러블 앱 설치도구는 더이상 웨어러블 앱을 읽을 수 없다.

휴대용 앱에서 설치 실패같은 일이 발생했을 때, A는 다음과 같은 오류를 기록한다: "this file cannot be opened as a file descriptor; it is probably compressed."

Android Studio는 기본값으로 당신의 APK를 압축하지 않지만, 만약 당신이 다른 생성 과정을 사용한다면, 웨어러블 앱을 두번 압축하지 않을 것을 보장한다.

'Android - Building Apps for Wearables > Creating Wearable Apps' 카테고리의 다른 글

Debugging over Bluetooth  (0) 2014.09.10
Adding Voice Capabilities  (0) 2014.09.10
Creating Custom Layouts  (0) 2014.09.10
Creating and Running a Wearable App  (0) 2014.09.10
Creating Wearable Apps  (0) 2014.08.21
Posted by 레미파
,