정보, 통신, 기술/Cordova

Apache Cordova

최윤호 2014. 12. 29. 11:55
반응형

아이폰 혹은 안드로이드 스마트폰의 앱을 만드는 프로그램 언어는 매우 다양하다.

기본적으로 플랫폼을 제공하는 Apple과 Google에서 제공하는 Object-CJava가 있고,

거의 어디서나 실행이 가능한 C++이 있다.

그리고 지원 언어에 대해서 멀티 플랫폼을 제공하는 Cocos2d-x, Unity, Xamarin, Apache Cordova, Titanium 등이 있다.

 

이 중에 내가 선택한 플랫폼이 Apache Cordova이다.

 

 

Apple 혹은 Google의 SDK를 다운받아 설치하고, 설정을 한 후에, HelloWorld 앱을 만드는 것은 하루 정도면 충분히 가능하다.

이렇게 좋은 지원에도 불구하고, 굳이 네이티브 앱을 만들지 않고 여러 제약과 단점이 있는 Cordova를 사용하는 이유는 무엇일까?

원소스와 멀티 타켓팅 플랫폼 지원으로 개발 생산성이 높고, 유지보수가 용이하다는 일반적인 장점은

100% 소스 공유는 되지 않고, 플러그인을 사용하고 개발하지 않으면 안되는 기능이 있을 수 있다는 제약에 가려 빛을 잃는다.

 

그럼에도 불구하고 내가 Cordova를 선택한 이유는 이 플랫폼이 프로토타입을 만드는데 있어서 즉, 업무를 모델링하고, 그 모델링한 업무를 실제 앱으로 만드는 데 있어서 매우 유용할 수 있겠다는 생각때문이다.

또 Java를 싫어하고, C#과 Javascript를 좋아하기 때문이다.

간단한 것을 만들어도 Java로 만드는 것보다는 Javascript로 만드는 것을 좋아한다.

 

이런, 프로토타입을 만들기 용이하고, 좋아하는 Javascript 언어를 지원한다는 점때문에 나는 Cordova를 선택했다.

 

1. Visual Studio Tools for Apache Cordova

공식 홈페이지

[MSDN]Getting Started with Visual Studio Tools for Apache Cordova
The Plugin Registry

 

사실, 강력한 편집 기능과 디버깅 기능만 아니라면 Cordova 개발에 있어 VS는 오버스펙일 수도 있다.

그래도 익숙한 툴이니까 여기서부터 출발을 하면, 간단히 설치만 하면 된다^^

 

위의 MSDN 링크의 첫번째 하위 항목이 "Install Visual Studio Tools for Apache Cordova"이다.

VS 2013 기준이며, Preview 상태인 VS 2015는 약간 다르지만 쉽게 설치 가능하다.

 

VS 2015 설치시 참고 사항

- 시스템에 Chrome과 Nodejs가 설치되어 있으면 삭제한다. 두번째 설치 과정에서 최신 버전으로 설치 된다.
- 사용에 있어 허락을 받아야 하는데, 이것은 MS ID만 있으면 로그인만으로 해결된다.
단, Windows Server 2012를 사용하는 경우에는 Server Features에서 기본적으로 비활성화되어 있는 desktop experience를 활성화한다.

- 디버깅에는 불필요하지만, 실제 APK 파일을 생성하려면, Keystore 파일을 생성해야 한다.

페이지 중간에 keytool 명령어를 사용하는 "Create a New Keystore" 섹션을 참고한다.
http://developer.xamarin.com/guides/android/deployment,_testing,_and_metrics/publishing_an_application/part_1_-_preparing_an_application_for_release/

 

2. 시스템 Path 설정

 

약간 당황스럽게도 Cordova는 멀티 플랫폼을 지원하지만, 지금 당장은 안드로이드 이외의 플랫폼에서 개발할 생각은 없다.

결국 Java를 이용해 개발하는 것이 맞는 상황에서, 그냥 Java가 싫을 뿐이라서 Cordova를 사용하는 것일뿐ㅡㅡ;

하지만, 여전히 Java는 있어야 한다~~

 

간단히 설치만 하면 되는줄 알았지만, 오류인지 설계상의 문제인지 시스템 Path 설정이 잘 안된다.

Cordova는 Apache Ant를 사용해서 안드로이드 앱을 빌드한다.

때문에 다음의 명령어가 커맨드 창에서 정상적으로 실행되어야 한다.

Java
Ant

 

Visual Studio Tools for Apache Cordova를 통해 설치하는 경우, Java, Ant 등 필요한 프로그램은 다 설치된 상태이다.

만약 정상적으로 안된다면 다음의 시스템 Path를 설정한다.

 

- ANDROID_HOME
C:\Program Files (x86)\Android\android-sdk
- ANT_HOME
C:\Program Files (x86)\Microsoft Visual Studio 14.0\Apps\apache-ant-1.9.3
- JAVA_HOME
C:\Program Files (x86)\Java\jdk1.7.0_55
- Path
...;ANDROID_HOME%/tools;%ANDROID_HOME%/platform-tools;%ANT_HOME%/bin;%JAVA_HOME%/bin;


참고
http://stackoverflow.com/questions/13343257/phonegap-setup-cordova-error-create-error
http://docs.phonegap.com/en/2.2.0/guide_getting-started_android_index.md.html#Getting%20Started%20with%20Android

 

3. 빌드

 

정말 아쉽게도, VS 2015의 Cordova 프로젝트 템플릿의 HelloWorld 소스가 디버깅은 잘 되는데 빌드가 안된다.

아직 문제는 해결 못 했지만, 아래 방법으로 정상적으로 빌드 할 수 있다.

 

커맨드 명령어

- cd <프로젝트폴더>\BlankCordovaApp1\bld\Release\platforms\android\cordova

- build.bat

 

Apk 파일의 위치는 다음과 같다.

<프로젝트폴더>\BlankCordovaApp1\bld\Release\platforms\android\ant-build

 

자, 이제 무엇을 해야 할까?

당연히 도서관에 가서 책을 빌려야지~~

난 항상 모든 것을 책으로 익혔으니까!!

 

반응형

'정보, 통신, 기술 > Cordova' 카테고리의 다른 글

Cordova를 책으로 배우기 2  (1) 2014.12.31
Cordova를 책으로 배우기  (2) 2014.12.30