19
PhoneGap for Bada research 박박박 [email protected] http://webdevmobile.com http://code.google.com/p/badaphonega

Parkjihoon phonegap research_for_bada

  • View
    1.501

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Parkjihoon phonegap research_for_bada

PhoneGap for Badaresearch

박지훈[email protected]

http://webdevmobile.com

http://code.google.com/p/badaphonegap

Page 2: Parkjihoon phonegap research_for_bada

PhoneGap-Plugins

http://wiki.phonegap.com/w/page/36752779/PhoneGap-Plugins

Page 3: Parkjihoon phonegap research_for_bada

Install

Page 4: Parkjihoon phonegap research_for_bada

Step 1: Installing the Prerequisite Software

• Eclipse• Java JDK• Android SDK• ADT Plug-in for Eclipse• Apache ANT • Ruby (Ruby187)• Git Bash

Page 5: Parkjihoon phonegap research_for_bada

Step 2: Confirm Environment Variables

• ANDROID_HOME– D:/android-sdk-windows

• ANT_HOME– D:\apache-ant-1.8.1

• JAVA_HOME– C:\Program Files\Java\jdk1.6.0_20

• Path– C:\Ruby191\bin;– D:\apache-ant-1.8.1\bin;– C:\Program Files\Java\jdk1.6.0_20\bin;– D:\android-sdk-windows\tools

– E:\JeeHoon\phonegap-android\bin

Page 6: Parkjihoon phonegap research_for_bada

Step 3. Download the PhoneGap Source Code

• http://github.com/phonegap/phonegap-android

Page 7: Parkjihoon phonegap research_for_bada

Step 4. Build the Example PhoneGap App

• ruby bin/droidgap create [path_of_application]– ruby bin/droidgap create example

• ruby bin/droidgap gen …

Page 8: Parkjihoon phonegap research_for_bada

Step 5. Importing Your Example App into Eclipse

Page 9: Parkjihoon phonegap research_for_bada

Project

Page 10: Parkjihoon phonegap research_for_bada

JS -> Java

Page 11: Parkjihoon phonegap research_for_bada

JS -> Java

Page 12: Parkjihoon phonegap research_for_bada

JS -> Java

Page 13: Parkjihoon phonegap research_for_bada

Java -> JS

Page 14: Parkjihoon phonegap research_for_bada

Java -> JS

Page 15: Parkjihoon phonegap research_for_bada

WebView

• android.webkit.WebView– http://developer.android.com/reference/android/webkit/WebVie

w.html

Page 16: Parkjihoon phonegap research_for_bada

WebViewA WebView has several customization points where you can add your own behavior. These are:

-Creating and setting a WebChromeClient subclass. This class is called when something that might impact a browser UI happens, for instance, progress updates and JavaScript alerts are sent here (see Debugging Tasks).

-Creating and setting a WebViewClient subclass. It will be called when things happen that impact the rendering of the content, eg, errors or form submissions. You can also intercept URL loading here (via shouldOverrideUrlLoading()).

-Modifying the WebSettings, such as enabling JavaScript with setJavaScriptEnabled().

-Adding JavaScript-to-Java interfaces with the addJavascriptInterface(Object, String) method. This lets you bind Java objects into the WebView so they can be controlled from the web pages JavaScript.

Page 17: Parkjihoon phonegap research_for_bada

Stack

PhoneGap (Native)

Android

Device

WebView

Device Device

WebChromeClient

WebViewClient

PhoneGap (JavaScript)

Application

PhoneGap (Native)

Bada

Device

???

Device Device

??? ???

PhoneGap (JavaScript)

Application

JavaScript → Bada….

Bada → JavaScriptOsp::Base::String* Osp::Web::Controls::Web::EvaluateJavascriptN ( const Osp::Base::String &  scriptCode  )  const

Page 18: Parkjihoon phonegap research_for_bada

BONDI

Page 19: Parkjihoon phonegap research_for_bada

요약• phonegap.0.9.4.js

– Library on js– js 파일은 모든 플랫폼 동일할 것으로 생각됨

• Com.phonegap package– Library on anroid– android.webkit.WebView 를 사용하여 JS 와 Java 사이의

interface 를 제공하는 것으로 생각됨• Customization by using WebChromeClient, WebViewClient

• 주요 예상 작업– Bada 향 WebView 와 같은 클래스 파악– Phonegap.0.9.4.js 에서 native 에 필요로하는 interface 파악