SlideShare una empresa de Scribd logo
1 de 16
PhoneGap for Bada조사된 내용 / 조사할 내용 H9 조규봉 ckbcorp@gmail.com http://webdevmobile.com http://code.google.com/p/badaphonegap/
차례 1. JS -> JAVA  / JAVA -> JS 방법 조사 :  2. PhoneGap Android 의 실행 방식 : 기존 박지훈씨 PPT 내용 참고. 3. PORTING 에 필요한 내용. 4. WebKit내용 좀 더 찾아보기 – PLUGIN
2. PhoneGap Android 의 실행 방식을 보면,  2.1. JS -> JAVA의 경우, Android Webkit interface 를 이용한다.  2.1.1. 사용자의 JS 파일에서 phoneGap.js 에 선언된 device 제어 함수를 이용하려 하면 2.1.2. phoneGap.js 에서 JAVA에 해당 함수를 요청한다.  2.1.3. 그럼 device 제어함수의 URL의 protocol 부분이 gap: 으로 바꾼다.  2.1.4. Android의 WebKit class( WebView )는,  shouldOverrideUrlLoading() 를 이용하여 URL 요청에 대한 이벤트 핸들러를 걸 수 있다. http://developer.android.com/resources/tutorials/views/hello-webview.html 2.1.5. 그 외  WebView.addJavascriptInterface () http://devian.tistory.com/159 2.2. JAVA -> JS의 경우, Android Webkit interface() 를 이용한다.  2.2.1. WebView의 loadURL()  을 이용한다.
박지훈씨 자료 참조.
3. PORTING 에 필요한 내용. 3.1. BADA 에서 JAVA 를 지원하는가. 3.1.1. BADA SDK 의 JAVA 버전이 있다.  Samsung_sdk_1.2.2.exe  http://innovator.samsungmobile.com/down/cnts/toolSDK.list.do?platformId=3&cntsId=&searchText=&sortType=0&codeType=C452&indexDirection=1&indexType=1&listLines=10 3.1.2. Dalvik을 BADA로 Porting 할 수 있는가?  결론 : 힘들다. JAVA VM 과 Dalvik은 많이 다르다. ( 라이센스를 피하기 위해서 명령어부터 다시 만들었다고 ) 3.1.3. 그렇다면, PhoneGap용 Android 소스만이라도 JAVA VM으로  Porting 해서 쓸 수 있나? 3.1.3.1. Java VM ( SE ) / Java VM ( ME ) 의 차이. 3.1.3.2. WebKit의 차이 : J2ME web services API : JSR 172 http://developers.sun.com/mobility/apis/articles/wsa/   3.1.3.3. 결론 : WebKit이 포팅된게 아니라서, JS등의 동작 보증이 애매하다.
JAVA ME WEB ( JSR 172)
3.2. BADA WebKit & SDK 3.2.1. BADA WebKit이 2.1, 2.2. 역할을 하는 interface 를 제공하는가. 3.2.2. BADA SDK 에서 코드를 작성해야 하는데, BADA 의 library 모음집이나, tutorial, API List 등이 있는가. 3.2.3. BADA SDK 에서 WebKit을 제어할 수 있는가. 3.2.4. 결론 : BADA SDK 를 설치해 도움말( F1 ) 로 확인해 보면, WebKit속성과 인터페이스를 알 수 있다.  http://developer.bada.com/apis/tools/sdk/list.do?categoryID=FC02040800 3.2.5. Web::Controls::ILoadingListener::OnLoadingRequested() 3.2.6. Web::Controls::Web::EvaluateJavascriptN() 3.2.7. Web::Controls::Web::SetDownloadListener() 3.2.8. Web::Controls::Web::LoadUrl ( )
[object Object],[object Object]
Phonegap research for bada kyubongcho

Más contenido relacionado

La actualidad más candente

Service Worker 101 (한국어)
Service Worker 101 (한국어)Service Worker 101 (한국어)
Service Worker 101 (한국어)Chang W. Doh
 
프론트엔드 개발 첫걸음
프론트엔드 개발 첫걸음프론트엔드 개발 첫걸음
프론트엔드 개발 첫걸음DataUs
 
Spring vs. spring boot
Spring vs. spring bootSpring vs. spring boot
Spring vs. spring bootChloeChoi23
 
[21]변화의 시대 : 안드로이드 앱 어떻게 개발할 것인가?
[21]변화의 시대 : 안드로이드 앱 어떻게 개발할 것인가?[21]변화의 시대 : 안드로이드 앱 어떻게 개발할 것인가?
[21]변화의 시대 : 안드로이드 앱 어떻게 개발할 것인가?NAVER Engineering
 
JavaScript MEAN 스택
JavaScript MEAN 스택JavaScript MEAN 스택
JavaScript MEAN 스택Tai Hoon KIM
 
[D2 오픈세미나]5.html5 api 테트리스게임_이진권
[D2 오픈세미나]5.html5 api 테트리스게임_이진권[D2 오픈세미나]5.html5 api 테트리스게임_이진권
[D2 오픈세미나]5.html5 api 테트리스게임_이진권NAVER D2
 
make hybrid app.
make hybrid app.make hybrid app.
make hybrid app.jiseob kim
 
RxJS Preview for Korean
RxJS Preview for KoreanRxJS Preview for Korean
RxJS Preview for KoreanKyuHyunJung
 
구글 인박스 히드라 프로그래밍
구글 인박스 히드라 프로그래밍구글 인박스 히드라 프로그래밍
구글 인박스 히드라 프로그래밍Lee Ji Eun
 
Single Page Application : 기획부터 기술적 난관까지
Single Page Application : 기획부터 기술적 난관까지Single Page Application : 기획부터 기술적 난관까지
Single Page Application : 기획부터 기술적 난관까지Kay Sung Hyuk
 
모바일 웹앱 프로그래밍 과정
모바일 웹앱 프로그래밍 과정모바일 웹앱 프로그래밍 과정
모바일 웹앱 프로그래밍 과정Kenu, GwangNam Heo
 
모듈시스템과 webpack
모듈시스템과 webpack모듈시스템과 webpack
모듈시스템과 webpackDataUs
 
실시간으로 안드로이드 프론트엔드 작업하기
실시간으로 안드로이드 프론트엔드 작업하기실시간으로 안드로이드 프론트엔드 작업하기
실시간으로 안드로이드 프론트엔드 작업하기Haze Lee
 
『풀스택 개발자를 위한 MEAN 스택 입문』 - 미리보기
『풀스택 개발자를 위한 MEAN 스택 입문』 - 미리보기『풀스택 개발자를 위한 MEAN 스택 입문』 - 미리보기
『풀스택 개발자를 위한 MEAN 스택 입문』 - 미리보기복연 이
 
위플래닛 발표자료 Meteor_js
위플래닛 발표자료 Meteor_js위플래닛 발표자료 Meteor_js
위플래닛 발표자료 Meteor_jsWebFrameworks
 
오늘 당장 시작하는 HTML5
오늘 당장 시작하는 HTML5오늘 당장 시작하는 HTML5
오늘 당장 시작하는 HTML5Taegon Kim
 
원모먼트 Vue js 적용기
원모먼트 Vue js 적용기원모먼트 Vue js 적용기
원모먼트 Vue js 적용기우현 김
 

La actualidad más candente (20)

Service Worker 101 (한국어)
Service Worker 101 (한국어)Service Worker 101 (한국어)
Service Worker 101 (한국어)
 
프론트엔드 개발 첫걸음
프론트엔드 개발 첫걸음프론트엔드 개발 첫걸음
프론트엔드 개발 첫걸음
 
Spring vs. spring boot
Spring vs. spring bootSpring vs. spring boot
Spring vs. spring boot
 
[21]변화의 시대 : 안드로이드 앱 어떻게 개발할 것인가?
[21]변화의 시대 : 안드로이드 앱 어떻게 개발할 것인가?[21]변화의 시대 : 안드로이드 앱 어떻게 개발할 것인가?
[21]변화의 시대 : 안드로이드 앱 어떻게 개발할 것인가?
 
Mean stack Start
Mean stack StartMean stack Start
Mean stack Start
 
JavaScript MEAN 스택
JavaScript MEAN 스택JavaScript MEAN 스택
JavaScript MEAN 스택
 
[D2 오픈세미나]5.html5 api 테트리스게임_이진권
[D2 오픈세미나]5.html5 api 테트리스게임_이진권[D2 오픈세미나]5.html5 api 테트리스게임_이진권
[D2 오픈세미나]5.html5 api 테트리스게임_이진권
 
Cooking jquery
Cooking jqueryCooking jquery
Cooking jquery
 
make hybrid app.
make hybrid app.make hybrid app.
make hybrid app.
 
RxJS Preview for Korean
RxJS Preview for KoreanRxJS Preview for Korean
RxJS Preview for Korean
 
구글 인박스 히드라 프로그래밍
구글 인박스 히드라 프로그래밍구글 인박스 히드라 프로그래밍
구글 인박스 히드라 프로그래밍
 
Single Page Application : 기획부터 기술적 난관까지
Single Page Application : 기획부터 기술적 난관까지Single Page Application : 기획부터 기술적 난관까지
Single Page Application : 기획부터 기술적 난관까지
 
모바일 웹앱 프로그래밍 과정
모바일 웹앱 프로그래밍 과정모바일 웹앱 프로그래밍 과정
모바일 웹앱 프로그래밍 과정
 
모듈시스템과 webpack
모듈시스템과 webpack모듈시스템과 webpack
모듈시스템과 webpack
 
실시간으로 안드로이드 프론트엔드 작업하기
실시간으로 안드로이드 프론트엔드 작업하기실시간으로 안드로이드 프론트엔드 작업하기
실시간으로 안드로이드 프론트엔드 작업하기
 
『풀스택 개발자를 위한 MEAN 스택 입문』 - 미리보기
『풀스택 개발자를 위한 MEAN 스택 입문』 - 미리보기『풀스택 개발자를 위한 MEAN 스택 입문』 - 미리보기
『풀스택 개발자를 위한 MEAN 스택 입문』 - 미리보기
 
위플래닛 발표자료 Meteor_js
위플래닛 발표자료 Meteor_js위플래닛 발표자료 Meteor_js
위플래닛 발표자료 Meteor_js
 
Overview
OverviewOverview
Overview
 
오늘 당장 시작하는 HTML5
오늘 당장 시작하는 HTML5오늘 당장 시작하는 HTML5
오늘 당장 시작하는 HTML5
 
원모먼트 Vue js 적용기
원모먼트 Vue js 적용기원모먼트 Vue js 적용기
원모먼트 Vue js 적용기
 

Destacado

COSECHA INF103S8
COSECHA INF103S8COSECHA INF103S8
COSECHA INF103S8gabyq222
 
Cool green home keynote v1
Cool green home keynote v1Cool green home keynote v1
Cool green home keynote v1MontanaRadio
 
Star power point_presentations1
Star power point_presentations1Star power point_presentations1
Star power point_presentations1lesliegvasquez
 
An Introduction to Data Protection (London) - June 2015
An Introduction to Data Protection (London) - June 2015An Introduction to Data Protection (London) - June 2015
An Introduction to Data Protection (London) - June 2015Rachel Aldighieri
 
Scotland legal update 25 sept
Scotland legal update   25 septScotland legal update   25 sept
Scotland legal update 25 septRachel Aldighieri
 
Email tracking report 2013 17 october
Email tracking report 2013   17 octoberEmail tracking report 2013   17 october
Email tracking report 2013 17 octoberRachel Aldighieri
 
經濟方法論 -以國光石化為例--環保署04062011
經濟方法論 -以國光石化為例--環保署04062011經濟方法論 -以國光石化為例--環保署04062011
經濟方法論 -以國光石化為例--環保署04062011佳真 王
 
웹데브모바일 3월 세미나 자료 : Client side storage in html5
웹데브모바일 3월 세미나 자료 : Client side storage in html5웹데브모바일 3월 세미나 자료 : Client side storage in html5
웹데브모바일 3월 세미나 자료 : Client side storage in html5웹데브모바일
 

Destacado (20)

Pretest
PretestPretest
Pretest
 
Huda
HudaHuda
Huda
 
Mca co qb
Mca co qbMca co qb
Mca co qb
 
COSECHA INF103S8
COSECHA INF103S8COSECHA INF103S8
COSECHA INF103S8
 
Cool green home keynote v1
Cool green home keynote v1Cool green home keynote v1
Cool green home keynote v1
 
Ugly duck
Ugly duckUgly duck
Ugly duck
 
Shopping
ShoppingShopping
Shopping
 
Star power point_presentations1
Star power point_presentations1Star power point_presentations1
Star power point_presentations1
 
Retweets
RetweetsRetweets
Retweets
 
5352 final week 4
5352 final week 45352 final week 4
5352 final week 4
 
Dmaidm conference 2012
Dmaidm conference 2012Dmaidm conference 2012
Dmaidm conference 2012
 
Inserts nuts and bolts 2014
Inserts nuts and bolts 2014Inserts nuts and bolts 2014
Inserts nuts and bolts 2014
 
An Introduction to Data Protection (London) - June 2015
An Introduction to Data Protection (London) - June 2015An Introduction to Data Protection (London) - June 2015
An Introduction to Data Protection (London) - June 2015
 
Film poster
Film posterFilm poster
Film poster
 
Egypt keynote
Egypt keynoteEgypt keynote
Egypt keynote
 
Desch SGP
Desch SGPDesch SGP
Desch SGP
 
Scotland legal update 25 sept
Scotland legal update   25 septScotland legal update   25 sept
Scotland legal update 25 sept
 
Email tracking report 2013 17 october
Email tracking report 2013   17 octoberEmail tracking report 2013   17 october
Email tracking report 2013 17 october
 
經濟方法論 -以國光石化為例--環保署04062011
經濟方法論 -以國光石化為例--環保署04062011經濟方法論 -以國光石化為例--環保署04062011
經濟方法論 -以國光石化為例--環保署04062011
 
웹데브모바일 3월 세미나 자료 : Client side storage in html5
웹데브모바일 3월 세미나 자료 : Client side storage in html5웹데브모바일 3월 세미나 자료 : Client side storage in html5
웹데브모바일 3월 세미나 자료 : Client side storage in html5
 

Similar a Phonegap research for bada kyubongcho

Spring Boot + React + Gradle in VSCode
Spring Boot + React + Gradle in VSCodeSpring Boot + React + Gradle in VSCode
Spring Boot + React + Gradle in VSCodedpTablo
 
Deview 2013 :: Backend PaaS, CloudFoundry 뽀개기
Deview 2013 :: Backend PaaS, CloudFoundry 뽀개기Deview 2013 :: Backend PaaS, CloudFoundry 뽀개기
Deview 2013 :: Backend PaaS, CloudFoundry 뽀개기Nanha Park
 
[D2 오픈세미나]3.web view hybridapp
[D2 오픈세미나]3.web view hybridapp[D2 오픈세미나]3.web view hybridapp
[D2 오픈세미나]3.web view hybridappNAVER D2
 
[Google I_O Extended Daejeon 2023] 처음 시작하는 Flutter
[Google I_O Extended Daejeon 2023] 처음 시작하는  Flutter[Google I_O Extended Daejeon 2023] 처음 시작하는  Flutter
[Google I_O Extended Daejeon 2023] 처음 시작하는 FlutterSuJang Yang
 
Front end dev 2016 & beyond
Front end dev 2016 & beyondFront end dev 2016 & beyond
Front end dev 2016 & beyondJae Sung Park
 
GDG DevFest Busan 16" Android Nougat Developer's Note
GDG DevFest Busan 16" Android Nougat Developer's NoteGDG DevFest Busan 16" Android Nougat Developer's Note
GDG DevFest Busan 16" Android Nougat Developer's NoteSeok-yong Kim
 
Web app 개발 방법론
Web app 개발 방법론Web app 개발 방법론
Web app 개발 방법론Sang Seok Lim
 
GKAC 2015 Apr. - 테스트 코드에서 코드 커버리지까지
GKAC 2015 Apr. - 테스트 코드에서 코드 커버리지까지GKAC 2015 Apr. - 테스트 코드에서 코드 커버리지까지
GKAC 2015 Apr. - 테스트 코드에서 코드 커버리지까지GDG Korea
 
[uengine.org-uEngine Day] 스마트폰과BPM의만남:프로세스터치프로젝트발표자료
[uengine.org-uEngine Day] 스마트폰과BPM의만남:프로세스터치프로젝트발표자료[uengine.org-uEngine Day] 스마트폰과BPM의만남:프로세스터치프로젝트발표자료
[uengine.org-uEngine Day] 스마트폰과BPM의만남:프로세스터치프로젝트발표자료Hannah Kim
 
[H3 2012] Bridge over troubled water : make plug-in for Appspresso
[H3 2012] Bridge over troubled water : make plug-in for Appspresso[H3 2012] Bridge over troubled water : make plug-in for Appspresso
[H3 2012] Bridge over troubled water : make plug-in for AppspressoKTH, 케이티하이텔
 
구글 앱 엔진의 활용(Google App Engine) 2부
구글 앱 엔진의 활용(Google App Engine) 2부구글 앱 엔진의 활용(Google App Engine) 2부
구글 앱 엔진의 활용(Google App Engine) 2부mosaicnet
 
Node.js 시작하기
Node.js 시작하기Node.js 시작하기
Node.js 시작하기Huey Park
 
Google App Engine의 이해
Google App Engine의 이해Google App Engine의 이해
Google App Engine의 이해Sun-Jin Jang
 
Mozilla 오픈 웹 모바일 플랫폼 (2012)
Mozilla 오픈 웹 모바일 플랫폼 (2012)Mozilla 오픈 웹 모바일 플랫폼 (2012)
Mozilla 오픈 웹 모바일 플랫폼 (2012)Channy Yun
 
안드로이드 빌드: 설탕없는 세계
안드로이드 빌드: 설탕없는 세계안드로이드 빌드: 설탕없는 세계
안드로이드 빌드: 설탕없는 세계Leonardo YongUk Kim
 
NODE.JS 글로벌 기업 적용 사례 그리고, real-time 어플리케이션 개발하기
NODE.JS 글로벌 기업 적용 사례  그리고, real-time 어플리케이션 개발하기NODE.JS 글로벌 기업 적용 사례  그리고, real-time 어플리케이션 개발하기
NODE.JS 글로벌 기업 적용 사례 그리고, real-time 어플리케이션 개발하기John Kim
 

Similar a Phonegap research for bada kyubongcho (20)

2015 oce specification
2015 oce specification2015 oce specification
2015 oce specification
 
Spring Boot + React + Gradle in VSCode
Spring Boot + React + Gradle in VSCodeSpring Boot + React + Gradle in VSCode
Spring Boot + React + Gradle in VSCode
 
Deview 2013 :: Backend PaaS, CloudFoundry 뽀개기
Deview 2013 :: Backend PaaS, CloudFoundry 뽀개기Deview 2013 :: Backend PaaS, CloudFoundry 뽀개기
Deview 2013 :: Backend PaaS, CloudFoundry 뽀개기
 
[D2 오픈세미나]3.web view hybridapp
[D2 오픈세미나]3.web view hybridapp[D2 오픈세미나]3.web view hybridapp
[D2 오픈세미나]3.web view hybridapp
 
[Google I_O Extended Daejeon 2023] 처음 시작하는 Flutter
[Google I_O Extended Daejeon 2023] 처음 시작하는  Flutter[Google I_O Extended Daejeon 2023] 처음 시작하는  Flutter
[Google I_O Extended Daejeon 2023] 처음 시작하는 Flutter
 
Front end dev 2016 & beyond
Front end dev 2016 & beyondFront end dev 2016 & beyond
Front end dev 2016 & beyond
 
GDG DevFest Busan 16" Android Nougat Developer's Note
GDG DevFest Busan 16" Android Nougat Developer's NoteGDG DevFest Busan 16" Android Nougat Developer's Note
GDG DevFest Busan 16" Android Nougat Developer's Note
 
Web app 개발 방법론
Web app 개발 방법론Web app 개발 방법론
Web app 개발 방법론
 
GKAC 2015 Apr. - 테스트 코드에서 코드 커버리지까지
GKAC 2015 Apr. - 테스트 코드에서 코드 커버리지까지GKAC 2015 Apr. - 테스트 코드에서 코드 커버리지까지
GKAC 2015 Apr. - 테스트 코드에서 코드 커버리지까지
 
[uengine.org-uEngine Day] 스마트폰과BPM의만남:프로세스터치프로젝트발표자료
[uengine.org-uEngine Day] 스마트폰과BPM의만남:프로세스터치프로젝트발표자료[uengine.org-uEngine Day] 스마트폰과BPM의만남:프로세스터치프로젝트발표자료
[uengine.org-uEngine Day] 스마트폰과BPM의만남:프로세스터치프로젝트발표자료
 
RHAMT 소개
RHAMT 소개RHAMT 소개
RHAMT 소개
 
[H3 2012] Bridge over troubled water : make plug-in for Appspresso
[H3 2012] Bridge over troubled water : make plug-in for Appspresso[H3 2012] Bridge over troubled water : make plug-in for Appspresso
[H3 2012] Bridge over troubled water : make plug-in for Appspresso
 
구글 앱 엔진의 활용(Google App Engine) 2부
구글 앱 엔진의 활용(Google App Engine) 2부구글 앱 엔진의 활용(Google App Engine) 2부
구글 앱 엔진의 활용(Google App Engine) 2부
 
Node.js 시작하기
Node.js 시작하기Node.js 시작하기
Node.js 시작하기
 
Google App Engine의 이해
Google App Engine의 이해Google App Engine의 이해
Google App Engine의 이해
 
Mozilla 오픈 웹 모바일 플랫폼 (2012)
Mozilla 오픈 웹 모바일 플랫폼 (2012)Mozilla 오픈 웹 모바일 플랫폼 (2012)
Mozilla 오픈 웹 모바일 플랫폼 (2012)
 
안드로이드 빌드: 설탕없는 세계
안드로이드 빌드: 설탕없는 세계안드로이드 빌드: 설탕없는 세계
안드로이드 빌드: 설탕없는 세계
 
NODE.JS 글로벌 기업 적용 사례 그리고, real-time 어플리케이션 개발하기
NODE.JS 글로벌 기업 적용 사례  그리고, real-time 어플리케이션 개발하기NODE.JS 글로벌 기업 적용 사례  그리고, real-time 어플리케이션 개발하기
NODE.JS 글로벌 기업 적용 사례 그리고, real-time 어플리케이션 개발하기
 
Portfolio
PortfolioPortfolio
Portfolio
 
MSA
MSAMSA
MSA
 

Último

MOODv2 : Masked Image Modeling for Out-of-Distribution Detection
MOODv2 : Masked Image Modeling for Out-of-Distribution DetectionMOODv2 : Masked Image Modeling for Out-of-Distribution Detection
MOODv2 : Masked Image Modeling for Out-of-Distribution DetectionKim Daeun
 
Continual Active Learning for Efficient Adaptation of Machine LearningModels ...
Continual Active Learning for Efficient Adaptation of Machine LearningModels ...Continual Active Learning for Efficient Adaptation of Machine LearningModels ...
Continual Active Learning for Efficient Adaptation of Machine LearningModels ...Kim Daeun
 
Console API (Kitworks Team Study 백혜인 발표자료)
Console API (Kitworks Team Study 백혜인 발표자료)Console API (Kitworks Team Study 백혜인 발표자료)
Console API (Kitworks Team Study 백혜인 발표자료)Wonjun Hwang
 
A future that integrates LLMs and LAMs (Symposium)
A future that integrates LLMs and LAMs (Symposium)A future that integrates LLMs and LAMs (Symposium)
A future that integrates LLMs and LAMs (Symposium)Tae Young Lee
 
캐드앤그래픽스 2024년 5월호 목차
캐드앤그래픽스 2024년 5월호 목차캐드앤그래픽스 2024년 5월호 목차
캐드앤그래픽스 2024년 5월호 목차캐드앤그래픽스
 
Merge (Kitworks Team Study 이성수 발표자료 240426)
Merge (Kitworks Team Study 이성수 발표자료 240426)Merge (Kitworks Team Study 이성수 발표자료 240426)
Merge (Kitworks Team Study 이성수 발표자료 240426)Wonjun Hwang
 

Último (6)

MOODv2 : Masked Image Modeling for Out-of-Distribution Detection
MOODv2 : Masked Image Modeling for Out-of-Distribution DetectionMOODv2 : Masked Image Modeling for Out-of-Distribution Detection
MOODv2 : Masked Image Modeling for Out-of-Distribution Detection
 
Continual Active Learning for Efficient Adaptation of Machine LearningModels ...
Continual Active Learning for Efficient Adaptation of Machine LearningModels ...Continual Active Learning for Efficient Adaptation of Machine LearningModels ...
Continual Active Learning for Efficient Adaptation of Machine LearningModels ...
 
Console API (Kitworks Team Study 백혜인 발표자료)
Console API (Kitworks Team Study 백혜인 발표자료)Console API (Kitworks Team Study 백혜인 발표자료)
Console API (Kitworks Team Study 백혜인 발표자료)
 
A future that integrates LLMs and LAMs (Symposium)
A future that integrates LLMs and LAMs (Symposium)A future that integrates LLMs and LAMs (Symposium)
A future that integrates LLMs and LAMs (Symposium)
 
캐드앤그래픽스 2024년 5월호 목차
캐드앤그래픽스 2024년 5월호 목차캐드앤그래픽스 2024년 5월호 목차
캐드앤그래픽스 2024년 5월호 목차
 
Merge (Kitworks Team Study 이성수 발표자료 240426)
Merge (Kitworks Team Study 이성수 발표자료 240426)Merge (Kitworks Team Study 이성수 발표자료 240426)
Merge (Kitworks Team Study 이성수 발표자료 240426)
 

Phonegap research for bada kyubongcho

  • 1. PhoneGap for Bada조사된 내용 / 조사할 내용 H9 조규봉 ckbcorp@gmail.com http://webdevmobile.com http://code.google.com/p/badaphonegap/
  • 2. 차례 1. JS -> JAVA / JAVA -> JS 방법 조사 : 2. PhoneGap Android 의 실행 방식 : 기존 박지훈씨 PPT 내용 참고. 3. PORTING 에 필요한 내용. 4. WebKit내용 좀 더 찾아보기 – PLUGIN
  • 3. 2. PhoneGap Android 의 실행 방식을 보면, 2.1. JS -> JAVA의 경우, Android Webkit interface 를 이용한다. 2.1.1. 사용자의 JS 파일에서 phoneGap.js 에 선언된 device 제어 함수를 이용하려 하면 2.1.2. phoneGap.js 에서 JAVA에 해당 함수를 요청한다. 2.1.3. 그럼 device 제어함수의 URL의 protocol 부분이 gap: 으로 바꾼다. 2.1.4. Android의 WebKit class( WebView )는, shouldOverrideUrlLoading() 를 이용하여 URL 요청에 대한 이벤트 핸들러를 걸 수 있다. http://developer.android.com/resources/tutorials/views/hello-webview.html 2.1.5. 그 외 WebView.addJavascriptInterface () http://devian.tistory.com/159 2.2. JAVA -> JS의 경우, Android Webkit interface() 를 이용한다. 2.2.1. WebView의 loadURL() 을 이용한다.
  • 5.
  • 6.
  • 7.
  • 8. 3. PORTING 에 필요한 내용. 3.1. BADA 에서 JAVA 를 지원하는가. 3.1.1. BADA SDK 의 JAVA 버전이 있다. Samsung_sdk_1.2.2.exe http://innovator.samsungmobile.com/down/cnts/toolSDK.list.do?platformId=3&cntsId=&searchText=&sortType=0&codeType=C452&indexDirection=1&indexType=1&listLines=10 3.1.2. Dalvik을 BADA로 Porting 할 수 있는가? 결론 : 힘들다. JAVA VM 과 Dalvik은 많이 다르다. ( 라이센스를 피하기 위해서 명령어부터 다시 만들었다고 ) 3.1.3. 그렇다면, PhoneGap용 Android 소스만이라도 JAVA VM으로 Porting 해서 쓸 수 있나? 3.1.3.1. Java VM ( SE ) / Java VM ( ME ) 의 차이. 3.1.3.2. WebKit의 차이 : J2ME web services API : JSR 172 http://developers.sun.com/mobility/apis/articles/wsa/ 3.1.3.3. 결론 : WebKit이 포팅된게 아니라서, JS등의 동작 보증이 애매하다.
  • 9. JAVA ME WEB ( JSR 172)
  • 10. 3.2. BADA WebKit & SDK 3.2.1. BADA WebKit이 2.1, 2.2. 역할을 하는 interface 를 제공하는가. 3.2.2. BADA SDK 에서 코드를 작성해야 하는데, BADA 의 library 모음집이나, tutorial, API List 등이 있는가. 3.2.3. BADA SDK 에서 WebKit을 제어할 수 있는가. 3.2.4. 결론 : BADA SDK 를 설치해 도움말( F1 ) 로 확인해 보면, WebKit속성과 인터페이스를 알 수 있다. http://developer.bada.com/apis/tools/sdk/list.do?categoryID=FC02040800 3.2.5. Web::Controls::ILoadingListener::OnLoadingRequested() 3.2.6. Web::Controls::Web::EvaluateJavascriptN() 3.2.7. Web::Controls::Web::SetDownloadListener() 3.2.8. Web::Controls::Web::LoadUrl ( )
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.