Cách th c Phonegap ho tđ ng

Một phần của tài liệu Tìm hiểu nền tảng mã nguồn mở phonegap và xây dựng ứng dụng (Trang 25 - 29)

LI NÓI U

2.4.Cách th c Phonegap ho tđ ng

Nh đư nói đ n t tr c, Phonegap cho phép 1 nhƠ phát tri n ph n m m xơy d ng các ng d ng native applications cho các thi t b mobile (bao g m c

smartphones vƠ tablets) b ng cách s d ng các công ngh web nh HTML, CSS, JavaScript. 1 nhƠ phát tri n ph n m m đóng gói 1 ng d ng n n web (web

application) thƠnh 1 ng d ng native application đ c h tr cho t ng n n t ng mobile d a vƠo PhoneGap package.

Hình 3: Ki n trúc bên trong 1 ng d ng Phonegap

Trong ph m vi c a ng d ng native application, thì giao di n lƠm vi c c a ng d ng v b n ch t bao g m duy nh t 1 mƠn hình vƠ nó c ng gi ng nh 1 khung nhìn web view chi m d ng toƠn b không gian mƠn hình c a thi t b . Khi ng d ng đ c kh i ch y thì nó s t i trang page kh i t o c a ng d ng (thông th ng lƠ trang index.html nh ng nhƠ l p trình có th d dƠng thay đ i thƠnh trang khác) vƠo trong khung nhìn web view vƠ sau đó chuy n đi u khi n t i web view đ cho phép ng i dùng t ng tác v i ng d ng web application. Khi ng i dùng t ng tác v i n i dung content c a ng d ng (web application), thì các liên k t links hay các mư JavaScript trong ph m vi ng d ng đó có th t i các n i dung content khác t trong ph m vi các files tƠi nguyên đ c đóng gói v i ng d ng nƠy, hay có th truy c p thông qua m ng network vƠ t i các n i dung content t 1 website hay t 1 server v .

i v i 1 vƠi n n t ng mobile gi ng nh bada, Symbian vƠ webOS thì ng d ng native application v b n ch t chính lƠ 1 ng d ng web application.

nh ngh a v webview

1 web view là 1 thành ph n c a ng d ng native application mà đ c s d ng đ

bi u di n n i dung web content (thông th ng là các trang HTML) trong ph m vi 1 c a s hay 1 màn hình c a ng d ng native application. V b n ch t thì nó gi ng

nh 1 thành ph n có kh n ng ti p c n theo h ng l p trình, đ c đóng gói vào

bên trong trình duy t web browser có s n trong các thi t b mobile.

Ví d nh : trên n n t ng BlackBerry, thì nó đ c th c thi x lý nh 1 đ i t ng

Browser Field object (b ng cách s d ng net.rim.device.api.browser.field2).hay

nh trên Android, nó đ c th c thi b ng cách s d ng 1 khung nhìn webview

(android.webkit.WebView) và trên IOS, thì nó là 1

UIWebView(System/Library/Frameworks/UIKit.framework).

ng d ng web application ch y trong ph m vi 1 webview thìc ng gi ng nh b t kì nh ng ng d ng web application khác mƠ chúng đ c ch y bên trong 1 trình duy t web c a mobile. Nó có th m các trang HTML khác (theo c 2 cách : 1 cách đa ph ng tr c ti p trên thi t b hay theo cách m t 1 web server đ t 1 n i nƠo đó).JavaScript nhúng vƠo bên trong các files mư ngu n c a ng d ng ch u trách nhi m th c thi x lý các đi u ki n logic, n hi n n i dung content n u c n, ch i các media files, m các trang pages m i, th c thi các tính toán, vƠ nh n v n i dung content t server hay g i n i dung content t i server. Giao di n c a ng d ng đ c t o thƠnh t HTML vƠ CSS.

1 trình duy t web mobile thông th ng không có kh n ng truy c p vƠo các thƠnh ph n sơu bên trong thi t b gi ng nh nh ng ng d ng ch y tr c ti p trên thi t b (nh Contacts, Accelerometer, Camera, Compass, Microphone, ầ). có th xơy d ng 1 ng d ng mobile thú v thì ng d ng đó c n ph i có kh n ng truy c p vƠo các thƠnh ph n bên trong c a thi t b , v t ra ngoƠi 1 trình duy t web thông th ng. PhoneGap tr giúp cho đi u c n thi t nƠy b ng cách cung c p ra 1 b các hƠm

JavaScript APIs, cho phép các nhƠ phát tri n ph n m m có th s d ng đ t o nên ng d ng web application ch y trong môi tr ng ng d ng c a Phonegap có kh n ng truy c p vƠo các thƠnh ph n c a thi t b v t quá gi i h n ng c nh trình duy t web.

Hình 4: Cách th c ng d ng Phonegap t ng tác v i thi t b

Khi 1 l p trình viên th c thi x lý 1 tính n ng trong 1 ng d ng mƠ nó có s d ng 1 trong các hƠm PhoneGap APIs, thì ng d ng g i t i API b ng cách s d ng

JavaScript vƠ sau đó 1 l p layer đ c bi t trong ng d ng s d ch hƠm PhoneGap API nƠy, đ g i t i hƠm native API thích h p v i tính n ng t ng ng.

Một phần của tài liệu Tìm hiểu nền tảng mã nguồn mở phonegap và xây dựng ứng dụng (Trang 25 - 29)