phonegap 3.0 부터 npm 으로 다운로드가 가능합니다.

node.js 를 설치하고 터미널로 들어가서

 -  npm install -g cordova or phonegap 하면 자동으로 다운로드가 됩니다.

cordova project 를 생성합니다.

프로젝트 폴더를 생성하고 해당 폴더에서 아래 명령으로 템플릿프로젝트를 구축합니다.

- cordova create . com.xxx.phonegap PhonegapDemo

- cordova platform add android


Java 와 Ant Home 을 설정하고 emulate 에 대한 Path 를 지정해야 합니다.

phonegap build android 를 하면 에러가 발생합니다.

에러내역 : phonegap an error occurred during creation of android sub-project

원인 : android용 emulator를 지정해야 되는것으로 보임.

해결방안 : path 지정

C:\AndroidDev\adt-bundle-windows-x86-20131030\sdk\tools; C:\AndroidDev\adt-bundle-windows-x86-20131030\sdk\platform-tools

also add JAVA_HOME and ANT_HOME

하면 정상적으로 build가 됩니다.


개발환경

eclipse 와 android Project 개발환경이 통합되어 있는 IDE 를 다운로드 받아 설치합니다.

소스버전관리를 위해서 Git 도 설치합니다.

eclipse 에서 GitHub 를 연결하기 위해 Egit Plug in 을 설치합니다.


공개/사설키를 사용하여 소스원격관리를 할려고 하면 ssh2 에 대한 dsa 방식으로 암호화작업을 하고 공개키를 github 에 등록합니다.



블로그 이미지

희망잡이

,


출처 : http://www.tricedesigns.com/2013/01/18/my-workflow-for-developing-phonegap-applications/

Debugging Environments

Yes, that is plural… Debugging Environments. Due to the cross-platform nature and PhoneGap’s leveraging of native web views for each platform, debugging PhoneGap applications can sometimes be tricky. Here are some tips that will make this significantly easier.

The PhoneGap Emulator

The PhoneGap Emulator is my primary development/debugging tool for all PhoneGap apps. It is a browser-based emulator leveraging the Google Chrome browser and the Ripple Emulation Environment. The PhoneGap Emulator runs inside of Google Chrome, and provides emulation of PhoneGap’s core APIs. Since it is built on top of Chrome, it enables you to leverage Chrome’s Developer Tools, which in my opinion are second to none for web/application development. This is a highly-productive developer environment.

PhoneGap Emulator in Google Chrome

PhoneGap Emulator in Google Chrome

Here’s why I like the PhoneGap/Ripple/Google Chrome development environment:

First, this combination enables you to emulate most core PhoneGap APIs without leaving the desktop environment. It enables you to test various APIs including geolocation (with simulated locations), device events (deviceready, back, etc…), sensor events (accelerometer, compass), and even let’s you test with different device aspect ratios – all without having to push anything to an actual device. This saves a lot of time in development iterations. You can read about the supported Ripple emulator features here.

Second, Chrome’s Developer Tools are awesome. Here are just a few things that you can do while developing/debugging your app, live within the emulation environment:

  1. Alter DOM and CSS at runtime via the elements panel.
  2. Analyze all resources consumed by your app, via the resources panel. This includes all scripts, images, html files, cookies, etc… it even includes insight into any local data stored via PhoneGap’s local storage database (WebSQL implementation).
  3. View/query all local databases within your app. You can write your own queries to view/alter data in the WebSQL database. Thanks to Ray for sharing this, it’s not immediately intuitive.

    Debugging Local Storage Databases in Chrome with SQL

    Debugging Local Storage Databases in Chrome with SQL

  4. Analyze network requests/utilization via the network panel.
  5. Debug JavaScript with the Scripts/Sources Panel. You can set breakpoints in JS execution, inspect & alter values in JS objects in-memory, and view details and line numbers for any exceptions that occur.
  6. Monitor function execution time, memory consumption, event listeners, and frame rendering time via the timeline panel.

    Chrome Timeline Panel

    Chrome Timeline Panel

  7. Profile CPU/Memory usage via the profiles panel.
  8. Use the console to monitor console.log() statements, inspect properties of objects in memory, or execute arbitrary JavaScript whenever you want.

The PhoneGap Emulator enables developers to be extremely productive with development, however I cannot emphasize enough that on-device testing is critical for having a successful app. On-device testing can expose performance problems or browser rendering variances that you may not notice in the emulator environment.

블로그 이미지

희망잡이

,



node.js로 웹어플리케이션의 프레임워크에 대해서 자료를 찾아보다가 스마트폰앱을 개발하기위한 새로운 방법을 알게되어서 여기에 적어봅니다.

일반적으로 스마트폰의 기종 즉 OS에 따라서 iOS, Android 로 크게 나누어 집니다. 여기 OS에 따라서 개발언어가 다릅니다.

그런데 최근에 jQuery Mobile(jQM) 이라는 자바스크립트 모듈이라는게 있습니다. 앱의 UI를 쉽게 생성할수 있는것 같습니다.

스마트폰이 가지고 있는 기능에 접근하기 위한 자바스크립트 모듈도 있습니다. 그것이 PhoneGap 입니다.

스마트기종별로 템플릿을 만들어서 지원하고 있습니다.

안드로이드로 프로그램을 만들어 보았습니다.

PhoneGap 개발도구 적용하기

1. 개발도구는 이클립스로 정하고 안드로이드 개발환경을 구축합니다.

2. PhoneGap 의 최신버전을 다운로드 받습니다.

3. 안드로이드 신규 앱 프로젝트를 이클립스에서 생성합니다.

4. 생성된 프로젝트에서 PhoneGap 의 템플릿을 파일을 필요한 폴더에 이동시킵니다.

5. assets 폴더안에 www 폴더를 생성하고 안드로이드용 샘플파일을 복사해서 붙여놓습니다.

6. libs 폴더안에 cordova-2.7.0.jar 파일을 붙여놓습니다.

7. res 폴더안에 phonegap-2.7.0\lib\android\xml 폴더을 복사해서 붙여 놓습니다.

8. AndroidManifest.xml 파일에 필요한 내용을 추가합니다.


9. AndroidManifest.xml 파일에서 Activity 에 속성을 추가합니다.

android:configChanges="orientation|keyboardHidden|keyboard|screenSize|locale"

10.Activity 소스를 수정합니다.

 extends DroidGap 상속받는것으로 바꿉니다. 

그리고 index.html 을 로드할수 있도록 지정합니다.

super.loadUrl(Config.getStartUrl());

//super.loadUrl("file:///android_asset/www/index.html")


jquery mobile 개발도구 적용하기

1. www 폴더안에 css 폴더와 js 폴더에 필요한 파일을 이동 시면서 됩니다.

css 폴더

jquery.mobile-1.2.1.min.css

js 폴더

jquery.js <= jquery 기본 소스

jquery.mobile-1.2.1.min.js <= 모바일용 인터페이스 소스

2. index.html에서 css, js 파일을 가져옵니다.

<link rel="stylesheet" type="text/css" href="css/jquery.mobile-1.2.1.min.css" />

<script type="text/javascript" src="js/jquery.js"></script>

<script type="text/javascript" src="js/jquery.mobile-1.2.1.min.js"></script>



블로그 이미지

희망잡이

,