안드로이드 웨어 앱 개발에서 출시 후기



안드로이드 웨어 OS다 탑제된 GWatch를 구입한지 벌써 3주째에 접어들면서 이것저것 사용해보았다. 일단 Wear만 가지고 뭘 할 수 있게끔 만드는 것은 손에 꼭힐 정도로 폰과 밀접하게 엮어 있다. 구글 안드로이드 컨퍼런스에서 발표자가 노티피케이션 셔틀이라고 그러던데 이런말이 괸히 나온게 아니다.

 

어쨌든 뭘 만들어 볼까 고민 하다가 요즘 기타를 배우고 있는데, 기타 튜닝을 한번씩 해줘야 한다. 그래서 폰에도 훌륭한 앱들이 많지만 시계는 왠지 매일 차고 있으니까 좀더 쉽고 빠르게 사용가능하지 않을까 라는 생각으로 튜닝앱 개발 시작!

prom

다운로드: https://play.google.com/store/apps/details?id=com.kmshack.wear.guitartuner

 

 

보통 이클립스로 작업 하는데 이번 Wear앱 만들면서 Android Studio로 개발했다. 왜냐면 Eclipse는 멀티 APK빌드를 제공하지 않기 때문이다. 처음써보는 툴에 단축키도 말썽이고 끙끙 되면서 개발했다. xml레이아웃 편집은 Eclipse보다 훨씬 빠르고 좋았다. 몇몇 단축키가 Eclipse로 맵핑을 해도 안되는거빼곤 쓸만 하다.

 

오디오 레코딩을 통해 주파수 읽어 와서 기타의 등정 코드와 비슷한가를 퍼센테이지로 화면에 보여주게 목표였다. 인터넷에 기타 음역대 주파수도 검색해보고 나름 흥미로웠다.

 

Wear를 바로 USB디버깅을 통해 폰과 같이 바로바로 실행해볼 수 있다. Wear단말 설정에서 빌드버전을 마구 터치 하면 개발자 옵션이 열리면서 디버깅이 가능하다.

 

결국 개발은 끝! Wear를 APK로 뽑아서 폰에 설치!!

뭔가 이상하다.  INSTALL_FAILED_OLDER_SDK  뜨면서 설치 안됨. 그렇지!! Wear은 API LEVEL20이니까 당연히 내폰은 18인데 설치가 안된다.

 

폰앱에 Wear앱을 심어서 앱이 깔리면 폰에서 Wear에서 apk를 넘겨주는 구조이다. Android Studio에서 프롭젝트 만들때 Wear만 체크를 해서 폰용 프로젝트가 만들어 지지 않았다. 그래서 폰용 프로젝트를 추가 해서 새롭게 빌드하고 설치!!

 

그런데 Wear기기로 앱이 넘어 오지 않는것이다.

 

검색 해봤더니 넘어 가지 않는 경우는 두가지.

Phone, Wear 의 매니페스트 퍼미션이 같아야 하며, Wear관련 퍼미션이 추가 되어야 한다.

 

<uses-feature android:name="android.hardware.type.watch" android:required="false"/>

 
Android Studio의 경우 빌드시 Wear  APK파일을 raw Resource폴더에 복사되며 관련 메타 테그도 매니페스트에도 자동으로 추가된다.  하지만 Eclipse의 경우 수동으로 작업을 해줘야 하는데, https://medium.com/@tangtungai/how-to-develop-and-package-android-wear-app-using-eclipse-ef1b34126a5d여기에 자세히 있으니 참고하면 된다.

그리고 유료앱일 경우에도 자동으로 Wear에 넘어 가지 않는 버그(보안상의 문제로)가 있어서 위와 같은 방법을 써야한다.