본문 바로가기

쿼드콥터(핵사콥터)

[버섯][쿼드콥터][App] SkyRover Nano 제어용 앱 개발 환경 구축하기



SkyRover Nano
안드로이드 앱 개발 환경 구축하기


Created Date: 2014.10.06
Modified Date: 2014.10.06
revision 1

키워드: Android, Flexbot Controller, SkyRover Nano Controller
개발 환경: ADT, Android

안녕하세요 버섯돌이 유재성입니다.
SkyRover Nano의 제어용 앱 개발을 위해 지난 시간에는 Flexbot에 대해 간단하게 살펴봤으며,
이번에는 SkyRover Nano를 제어하기 위한 안드로이드용 Flexbot 개발 환경을 구축 해 보겠습니다.

기존에 폴더 변경과 관련된 환경 설정 강좌를 쓰면서 시스템을 다양하게 꼬아 놨었는데 깜빡했더니
Flexbot 앱이 정상 동작하는지 확신이 안 서서 확인하려다가 새벽에 엄청나게 삽질을 했었더랬죠ㅜㅜ

각설하고 Flexbot 소스를 설치하기 이전에 안드로이드 개발 환경이 구축되어 있어야 하는데
오로카에서 제공하는 Eclipse기반 통합 개발환경 구축 방법은 http://cafe.naver.com/openrt/6507 글 초반의

링크에서 통합 환경 압축 파일을 다운로드 후 게시글을 참고하여 압축 해제 및 설정을 하시면 됩니다.


간단하게는 64비트 환경의 개발 Tool은 http://ppl.ug/wslRUZNsbSs/에서 다운로드하시고,

SmartRover 개발 환경 설정 가이드 for Windows 64bit는 http://ppl.ug/z-q0Z_vohrs/에서 다운로드 가능합니다.

그 외 사용자 가이드는 http://ppl.ug/-Ca1IHyKiH8/ 에서 다운로드 가능합니다.


개발 환경과 관련된 최신 정보는 항상 http://cafe.naver.com/openrt/6505 글을 참고 하시기 바랍니다.


설치 방법이 변경될 수 있으므로 세부 내용은 문서를 참고하시기 바라며 간단하게는 통합개발 환경
압축파일을 D 드라이브 루트에 적절히 압축 해제 후 환경 변수만 설정해주시면 됩니다.
(압축 해제 및 드라이브 변경 방법은 폴더 변경 관련 글의 초반 예시를 참고하시면 됩니다.)
(2014-10-01일에 배포된 파일이 다운로드가 안되고 있어서 확인을 못 했지만 메인 폴더까지 압축돼서 폴더명이 더 길어진듯싶으니 루트에 1폴더보다는 직접 루트 폴더에 압축을 해제하는 형태로 적절히 반영하시기 바랍니다.)

환경 변수를 설정하는 방법을 모르시는 분들은 아래 글의 후반부에 있는 Tip을 참고하시기 바랍니다.
(앞으로 설정할 ADT 환경 구축과도 연관되는 내용들이니 내용을 살펴보시면 좋습니다.)

환경 변수에 아래의 내용들을 똑같이 추가합니다.
변수 이름(N) : JAVA_HOME
변수 값(V) : D:\SmartRover-DevFrame-x86-64\tools\jdk1.6.0_45_x64

변수 이름(N) : JRE_HOME
변수 값(V) : %JAVA_HOME%\jre

변수 이름(N) : ANDROID_SDK
변수 값(V) : D:\SmartRover-DevFrame-x86-64\tools\adt-bundle-windows-x86_64-20140702\sdk

끝으로, 이미 등록되어있는 Path 변수의 변수 값에 아래 내용을 추가합니다.


"변수 값"의 가장 끝에 아래 내용을 추가 하면 됩니다.
";%JAVA_HOME%\bin;%ANDROID_SDK%\tools;%ANDROID_SDK%\platform-tools;"

여기까지 설정하시면 안드로이드를 개발하는데 필요한 기본 환경은 모두 설정되었습니다.
다만, Flexbot의 경우 Android 4.3 이상을 지원하는데 지금 개발 툴을 설치하면 SDK 버전이 4.4 이상이 될 것입니다.
따라서, 4.3 버전을 지원하기 위해서는 4.3버전의 SDK를 추가로 설치해주셔야 합니다.

SDK 4.3버전의 설치 방법은 이전 ADT 환경 설정 방법과 동일하게 진행됩니다.



D:\SmartRover-DevFrame-x86-64폴더에 가셔서 "eclipse-cdt-adt-kepler" 파일을 실행합니다



우측 상단에서 Perspective를 "Java"로 선택합니다.
Java가 안 보이면 C/C++좌측(즉 제일 왼쪽)의 +표시가 있는 아이콘(Open Perspective)을 클릭해서 Java를 선택합니다.



Java 개발 환경으로 바뀌면 이클립스 좌측 상단에 빨간색으로 표시한 화살표 방향 아이콘이 있습니다.

이 아이콘이 Android SDK Manager로서 앞으로 사용하게 될 SDK API를 관리하게 됩니다.

4.3 버전을 설치하기 위해 해당 아이콘을 클릭하세요.




Android SDK Manager가 실행되면 위처럼 설치된 API 버전과 설치되지 않은 버전을 볼 수 있으며

사용하고 싶은 API들을 선택 후 우측 하단의 "Install packages.."를 클릭하면 설치가 진행됩니다.




Android 4.3.x 버전을 지원하기 위해 Android 4.3.1(API 18)을 선택 후 우측 하단의 Install 버튼을 클릭합니다.

참고로, 4.3같은 버전도 중요하지만 괄호속에있는 API 18같은 수치는 잘 기억해두세요.^^
개발하다 보면 환경 설정할 때 저 값이 필요합니다.



약관에 동의하고 Install을 선택합니다.



잠시 후 설치가 진행됩니다.



최종 설치가 완료되면 Installed로 표시되는 걸 확인할 수 있습니다.

[Tip]
이클립스 환경에서 업데이트를 진행하다 보면 가끔씩 업데이트가 안되는 경우가 있습니다.
제 경우에는 폴더 변경 강좌에서 다룬것처럼 "D:\SmartRover-DevFrame-x86-64"에 설치하지 않고
SSD에서 작업하기 위해 개발 툴은 신규 HDD인 N:\SmartRover-DevFrame-x86-64에 설치하고
심볼릭 링크로 연동해서 작업을 하고 있는데 기존의 SDK 폴더를 다른 이름으로 변경하는 과정에서
다른 프로세스에서 사용 중이라면서 락이 걸려 SDK 폴더명을 변경하지 못 해
업데이트가 더 이상 진행이 안되는 현상이 발생하더군요.

이클립스 재실행 후 몇 번 시도해도 여전히 해결이 안 돼서 외부에서 직접 업데이트를 진행했습니다.

Android SDK Manager는 D:\SmartRover-DevFrame-x86-64\tools\adt-bundle-windows-x86_64-20140702
폴더에 보시면 "SDK Manager.exe"라는 실행 파일로 존재하는데 이클립스 종료 후
"SDK Manager.exe" 파일을 직접 실행하시면 Android SDK Manager가 구동됩니다.
만약, 실행되자마자 종료되거나 하면 JDK나 JRE 설정이 잘 못되었을 수 있으니 참고하시기 바랍니다.
(기존 환경 설정 때문에 새벽에 Android SDK Manager가 에러도 없고 구동도 안돼서 엄청나게 삽질했네요--)

혹시라도 이클립스 상에서 제대로 안되면 이곳에서 실행해 보시기 바랍니다.
그래도 안되면 구글링만이 살길이죠*^^*

혹시라도 저처럼 다른 폴더에서 링크 걸어서 작업하시는 분들이 비슷한 상황이 발생할지 몰라서 적어봅니다.

그리고, 여담으로 지금까지 다른 앱들은 ADT 환경에서는 ADB의 내용이 좀 더 상세했던 것 같은데...
이번에 통합 환경에서 Flexbot을 빌드 하다 보니 에러 내용이 제대로 출력이 안돼서 대처하기가 어렵더군요.
또한, 지금 강좌는 최초 모태 소스인 HexAirbot의 소스를 빌드 하는데 문제없는 선에서 환경만 구축했으며
다른 배포 소스인 Flexbot의 경우 Gradle 기반에 CI 등과 연계되어 있어서 좀 더 효율적이지만
Gradle 기반이라면 ADT보다는 베타 버전인 스튜디오 환경이 더 편할지 모르겠습니다.
향후에는 차제 앱을 개발해야 하니 현재로선 환경은 중요하지 않을 듯싶으며 통합 환경이든 ADT든 스튜디오든
각자 편한 방법을 이용하면 될 듯 싶고 지금은 간단한 가이드 선에서만 작성해봅니다.^^


[참고자료]

[1] [목차] Smartrover(PCB)전용 Skyrover Nano 헥사 콥터 전체 목차

[2] 64비트 환경의 Eclipse기반 통합 개발 환경

[3] [개발환경] SmartRover-DevFrame 개발환경 설명

[4] 버섯돌이의 개발을 위한 폴더 위치 변경 방법

[5] [버섯][Android] 안드로이드 개발 툴 킷(ADT) 설치..

End.

written by 버섯돌이


이 저작물은 크리에이티브 커먼즈 저작자표시-비영리 4.0 Unported 라이선스에 따라 이용할 수 있습니다.