!"#$!%&'()*+,
*+,-!'.*%
(/*+,01
2345367357
89:;<
!"#$!%&'()*+,
*+,-!'.*%
=>,01
2345367357
?@A3BCDE4FGHI323
(ký tên)
J9:;<
/!K
L7M74 !
"#$%&''()*!)+,
-.%')+/+01($23*&4
1.)+,-(567)$1
)*1.89$:!;<-=>)%&?$@*
;-AB!.
C! ;-A-)+,-+,DE<$-(
$! **!@E@*-1F
GHI% J-- K-LM& N$N& L&+I% O80 P&LQ
$0$9$/A?R)$9 !S7T7?9*
)@E@*-U M&?$P&L2+)<
;/A??)!.
$*0 50*1)**M& VD-'
79@;-AW-AM&!F@*@E
%&*.
Từ khóa: Smartphone, Phonegap, framework, tương thích.
X
*NOPQ
Y9*F V+Z$E7$"+)7D*S<%.[*\
?(0-=]+E*3*'$*0
.
VDE79 !#^[_`!#
a*C[(!#@**0$/#0 b$*F;*.
4VW$E7), +!c'$*0(
d/<@*@);*F3*'$*0.
VE7+!$eff^N(1 ?$ Bg$*
+F*3*#0 b$*!.
8*c V/W$E7 D+!+b_
Q($*6+FQ$Bh< $*F*)?
*4#0.
VDE7i
C[ hjklm
F3RS
m
*NOTUVT
V)3*E!$*0$-'-'
-=1%.[*\?.
<E$*E>QF;*$F3*@*/F**n
:>-A$*E$*0.$*0
o$* F;*1]:
@$*E.
C[ hjklm
F3RS
f
!WOXWO
YT3Z?O33[3R\
YT3Z?O3@P
p
3BQ;
!]^
`!"#$&''()*
!)+,-
.[*9*W-A)+,-(6F<2+)
]68[F).%')+/+01($
23*&41.7$ )+,
-567)$1)*1.89
$:!;<-=>)&?$@*;
-AB!.
C! ;-A-)+,-+,DE<$-
($! **!@E@*-
1F.q@*P&LQ$0 A?
R)$9 +F-,3*$*-!S7T7?9*)@
E@*-!U 4r$QP&L$Q
Q$0$0F+$&.
M&?$QP&L2+)<;/A
?.[$A;-AEI% J-- K-LM&
N$N& L&+I% N- %+c$BO81P&L
*1M&F(0/'1<@*2;
n$.
`$0F!;-A!F@E
-9ES+S*:@+Fd@E.
s
[D 'd/S$'1M& $0F]9S+S
*F*@ -*< $ @K&+t+n
CuYf v ^%%X v3*&u+$& w.
[-*@GR*P&LQ$0$0F+$&U
*23*@M& @K&+$F3* "VD
-'79@;-AW-AM&T)$9 +F
-,3*$*-!F@E-*.
AD(3LTX_2`aO3BQ4
3BQ;Tu69*G[F*'! *@F*Q
-*5/+.
3BQ9T^76$x*)Gy*@M&Q 76
$x*)/-AVD-'7.
3BQbTzD-'7GD?))VD-' W
79@.
3BQ<Te)3*E 79@.
3BQaTe)$*0G$/Q)3*E1e$*0 Q!/
!) #7$.
{
3BQ9
cF]*d1e
9G;G!*aR2FFb
9G;G;G!*R2FF
Q71H&& A))K&+&]$
CuY?A.[
))K&+]CuY0|!@*!).`
$$?-B9)^%%.
CuYf$F+E;f <1*}CuY Q<*B
+-*K$-K-&K&+5$$:1H&&7
$V.CuYf@*?hd/3*E$x
-*7n# "A*$*JMH.
^-%$&%&& "#S$^%% $QP$&d/-*
K&+,CuY.8@7+E CuY+V7T
*27+E1L&+ P$&^%%5A
91F/,).^%%o
Q *Q *@O 1CuY.
^%%(B21K&+7E7g
7 +!''2FA*
$'2F+K&+E'F>A
F$|D.
^%%X$F+E<1^%% /-*$&
E$0.^%%X@**?+#t&$&wd/
~
VD-'L&+-*B F*; --c
7=E+EF*9*(7•.
9G;G9G!A7ZfUgOUhi@_7OjT!*a
CuYf$!-cE$K&+
7 2,7+E07.CuYf5B-*FK&+!
79A*+<;-AA/.NF!
CuYf E h d / JMH tJ$ M H&P&w qIu
tq*&I+€&u-&$w5o-\-6 B'-
!!;-ADQ*?7.
C7Q CuYf#)+,>?D))+,-5
-\-)0-* ]9-*<@*$-*
-cEd/CuYf.8 9*)-*2+)@*d/
!5CuYf >-*L&+G•&PV ^& I& H&&‚V$&)
-*FI% J-- O
8CuYf ]9VD-';-Al$9 !
F<E)+, •$%$&$"ZE
$*,-*.
%*D$?h21CuYf3**(
B)/.
9G;G9G;Gk7Hl73T73m$XTZ3
•$$D*=)9$-*FK&+(
-9+,)+6CuYf.
n!3*(- •$Q!)<$
(]/ $'+<2, $)+,!7
lk
7 EF*9*$*!.8•$E$*
)+,-<@@M$*$3*D$1-c.
C*@!%&&v+(>3*<: •$5+
V*<F)+,-1J$& 4'1*
CuYf.a*:)d%&&v+()+;
hF11J$&VQ*•$$FI%1
-c.
y$&(Ay$&%LPPo-c
*2-*>•$CuYf J-+&*$![+T$0
+*$0;-AM&M&N*$-o$0F
;-A@E_P$PF-CuYfv.NF
! +EDJ-+&4AFK$$+o*
-*>•$CuYf.
8D ?J-+&(*F+5>•$F)+,-
$0*CuYf.8 D$
+3*#.J-+&+)#=5E$F+EW$d 5
•$F)+,-Q •$M$&ll.l5$F
+ED<*c.J-+&4+GRC!CuYf(/
(F@*@E* 56E<
-*F-*1)+,-U.
C @*L&+-,A$(*-cCuYf
F*+*$ƒ**+& [u O[ <@*&/VD
-'+„Cu$f(V*< &)JN-
•&$-*&O
[0CuYf -cK&+5/E
EV&-& 7&F-*#)+,9
ll
3*D)9+2*9EF.8)+,-
%& +$& -c59E$$S@*h4
$7W-AMQ CuYf(*Q$!.
j.l.j.j. I3@PV_7
ud-*$*_F/$0QF**}*
/**+E04*.
F+E$*_?+E07$!.e$/$*_
h B$h;!$d.
)@*$!$*_/?/CuYf5+Z
/Q*)$*_.[Q*)+,
$/-A)$0(.
j.l.j.X. QP3LTR6On3?77Hhop@
N$$u$$T*FF))Y$^+&%$*E?S
#@'2G“Tôi thực sự thích HTML5 vì nó cho phép tôi làm việc trong
một môi trường thích hợp, trình duyệt kiết hợp với Javascipt, DOM mà không phải bật
đi bật lại Flash. Nó vừa là một ngôn ngữ lại vừa là một công cụ, không khác biết lắm
so với các plug-in khác”.
CuYf*<Q$0v% *-Q$*tzuY
qIuw9*FS)$0t^%%w)h+E *- -&n
#.
j.l.X. ?O7I3COL7HV!*a
j.l.X.j. !*a3k7HlO?On3q7rUs33tTC
$F9W,rCuYf;h1
B+E*D.
lj
NElG^9W,rCuYf.
<header (tiêu đề)>
Định nghĩa 1 tiêu đề cho 1 số phần tử của trang web, có thể là
toàn bộ trang, 1 phần tử <article>, hay <section>
<footer (chân trang)>
y9W…&-&† ,rD
l91l.
<nav (chuyển hướng)>
^;$&)*+9*FlL&+ ]
F-c* $F)$.
<article (bài viết)>
`,rA$0F-cF
A; +)F+$ 0Vo.
<section (phần)>
`!-l91$*;-A ‡!
l7l91l+)-=.
<aside (nhận xét)>
`-<*lAl-*9
-*V*3*.8?-A3*E.
<hgroup>
N#lF*@lA@.8?-A/ l l
9@*7lF*@tlF*@ lA@w.
j.l.X.X. !*a3k7HlU`3uT7BQ7?ORCn3q7rvOTRTZw
^*}K&+4EE+„EP$&yH•vMy.^*}K&+
VD-'EF^.u$!n#•/ Bn
#1K&+&6F77.
M9W…†,r@* @* (,-tHqw-*<
/.%*K&+(<-' $0FW-A
$!v%JMH''5/F*@Etw.
[QJMHo5-!| )* A
-&t-w !h+E *2/*@E
E.^JMH4o9W…†7;9*
lX
1-c'$*'+? !@*
*0$/EV*<"7;-AK&+F*@E.
j.l.X.m. !*aO3Vn3xnO?OyDWXB7HzOWO@ARCXVOTXZ7VHTp
^FK&+*@W-A&$*Q
FA+1*0 oK&+#$!!
*<@*E$!.&<?
$*Q-Q$*7+E B$!+,!)+6')-*K&+
9)Q$!7jk&d1@*7meN-Q
$*d&.[ B/W)1K&+#F*9*
CM D$(?*F.
CuYf4<E<@+„Y$%&JMH
tJMH$*QA+w.[o$*QF1
*0.[ *06+<ˆtE*
(/w/E'dF*9*CM @*B
hEK&+Z+,K&+#2-Q$*($*.
C9*)-*$*QK&++A+
oV&BE-c!.8!
r ‰-*-'76-Q$*
y$ •&+ L&.CuYf*<'d/;-A
! 6D-*E<E9)W-A;-A9
! -*o2+<ˆ/'
3*/E$F1B)$!!H&&.
j.l.X.f. !*a3k7Hln3?7vTDVwR2vRDpVw
CuYf+nE'*d/j9W …*-†…-&† o
K&++n-*79-c
SF1-*.u-*•&PV y$&^&(
+S9*d/9W*<B@*$!1-*
lm
*}.`@*(5-9/)@EJ-+&•$ ,-!
•$8-&t.P$w.
j.l.X.p. !*aOP7m@hE&p@
NF!QB@*+@*=*(G+* &+V P$& & &
L- && - *+ &V OCuYf(E)FB+*=*
Q*?)'G
• ^$t*w
• q&tw
• q&&tw
• q&&_$$t,7w
• ‚$tWw
• utw
• [*+&tw
• Š&t!w
• %&t)w
• &$t!w
• &tw
• *$t,]w
• L&&t*9w
`@*(B?<@*L&+"EW-A
v%+F*<9--ct‹Hw W
-A*)J-+&•$&V !*B
@*.
j.l.X.s. !*a3k7Hl{3P7HO_n7C3673f|XpZZ7p
CuYf*<JMH);!57-Q$**,D
P$&&1W-A.^o;-AL&+
Eh$Q#P$&-Q$*n+n
+ !-Q$*,Dcx )P$& o'VW$xF
P$&oE>-&-*E$F-Q$**,D+„
W-AzuYCŠ&3*&j.
8?-A#•$&JMHW-A!lE*Z
-V&1+;EB/W&&
ol;-A$*$!lP$&P$&/W-A)*
lf
-cW-A;-A!PP$&.C7) +„W-AK&+
J*-JMH;-A#/P$&.X,l'3*+E
!/! F -cW-A@*$
>?$&$!-!&&1-Q$*/E$FV&7;
*61P$&!?1-Q$*/E$F.
j.l.X.{. !*a77fO36}rX~RC&p@&VH{pHR2nnXOT7VTO3p
RK&+URPP$&U$j><@*-c0<B+
c*.*FCuYf#*$! K&+=
!EB/)'*).[-cE@
P$&-Q$*<$t7lyNw*-*V&lPP$&.
J$^&$!;-AX$/?G
l. q*V&EPP$&
j. h*hVW$x+6*n*F/^&$!-5/
!7
X. yEE1_-*5]E@*n*F/0
0/2>?1
uK&+K&t$F@K&+w$(€!
'@L&+ '$0(@D
E6*hVW$x1&.[-c=7
&<* $'# *:h+E O
j.l.X.~. !*a3k7HlUs3RsBND•
CuYfJMH,,,$xo;-AK&+V,,?,$x
!1-c EW)+,;-AS*<?h
)0t?-A yM%F!-w.[)*-c
)+,d/?ht‡!)!
M&J--j.kw -cW-A•&PVE@
SFo)$0,?1#+„.
j.l.X.lk. !*a3k7Hl{3POA7?OR2TV7mn73NT73€O
^?hCuYf/$jG$?h-c
B};-AL&+!)D+„;-A@-& $
?h&;-AL&+Q$/)/$FFE;-A
lp
-&*@.Eh&'$-!?h
*j &$/)'ˆ$;-AL&+.
K&+%&K&+Š^''$2"7&'
)&'+6)$0-\-7DE
1-c.
K&+%&$d/)@*Q$&&&+„W
-A^M&!)*3*E?o.u-c/))
*FW-A;-AL&+ $0F=B+<$!
;-A.
qQ$**@E3*;CM;@*-Q$*9)
9&-&.u&-&&3*&Œ&&1CM?E{sl+&
K&+%& ?]$j+&t*()w.
80EW;-A&lk kkk7h0c$B
dD#5WŒ0-Q$*>&&.C($/-Q$*&-&;
CMK&+%&dDG
_ CMG{slVlk kkk•{ slk kkk+&•p~ p{k kkk+&&-tppu+w
_ K&+%&GjVlk kkk•jk kkk+&•lpk kkk+&&-tk.lfXe+w
^]F9&-&4()9$*$/;
CM*@.
K&+Š^&)Ehd/-&*-E'*)
*@-&'*).
j.l.X.ll. !*a3k7Hl7mn3_O?OZ€{6pRp7ZUBlOr7•?O3j
CuYf%&&_%&‚&o&)000$FA ;
>?1 +<;l'&&VEF1l
+5/W$&.`''*@%&&_%&‚& )E
*:@!JvJz+,!)G
_ e"M$$$lr*02/W-A+69*)
;-AJvJz.Ž6)*$;-A5#$$$!1
*0@-Q$*.`@*7';CM Voc
0@-Q$*43*3*l,-!&3*&Œ&&tF*9*Œnw.
^$&!lF*9*&3*&/1nE@-Q$*.8<
ls
@S$E6D$Q"$$<$5!
?A;CM<$.
_ e"$$$o-1‰
E@-Q$*5QF*9*-Q$*/‰E
@.q0 r*0/?-=l$&7;
y‚.e-Q$*(/‰15nE@)
3*VW$x5/$$$!.
&%&&_%&‚&t%%‚w/))$!*3*E7.
e)+„%%‚ 1}-Q$*@$&+<;*
9E!lF*9*&3*&.C*& 006
1/*@l$FA ' ;$&.%%‚]6
lF)l@*Q1$&.`+?Q%%‚
$_$$$%%‚/')>-*-c]7E
$$S&.
%6-r*D*@CuYf$$1F@L&+
7$7Q CuYf?$1VD-';-A
-'F@EP&LM&+F-,3*$*-!F@*
@E-*.[^%%X vv3*&
u+$&4<9).[-*2o1$*0 5]
*v3*&u+$&*(*n6M&69)&.
j.j. C736R$HTpoVH{‚`ƒ,3VpTn
9G9G;G,3VpTnX2[„
M&$@EtP&Lw(*n6-c;-A+$&
t&J$wEI% J-- K-LM& N$N& L&+I% N-
%+c$B )$9 +F-,3*$*-!F@*@E
&*.`D$-'(*n6\?1[+B
;-A--\-7#@*.^o
W-ACuY ^%%v);-A.e*;-A
+$&-!/#$+-$t;-A$w.
l{
Hình 1: Sơ đồ tổng quan hóa về cách thức hoạt động của Phonegap
FVZ?3zTbD…yDWV@Xp4op@TnnZ†3@HDTnnZR2T7RpTnnZ
NEjGNE-!;-A+$&
l~
^$/23*@X-!;-A*G
l. Navtive Application: YQ;-A/VD-'&?
Q$0Œ@E-EV*<-3*,t?-AG
I+€&&_^I%vJ-- .[&K-LM& Ow.•*
1-!;-A$E*0
9;1)+,tP$& & & &$&&& Ow.
[/$+,++*@EEV*<.
j. Web Application: Y;-A/VD-'F@EL&+t
$CuYfw ]!F-*1!.@D1x
6$QL&+-c+) !/F@*
DE @*!F
;-A-.•*$E;
jk
-A93*D@E_$P.[/$
/;!*0D*)+,&.
X. Hybrid Application: Y$1j-!;-AF.^*;
-A$G&$]/L&+&LF
-c,-*L&+ L&+)&
3*9*t+-&w$!;!1&L&+.
[0;-A&*C+-J$$*7<
@*.
j.j.j. 5x7RXsO3ZrOjT,3VpTn
M&$-'(*n6\?1[+B
;-A-\-7#@*.M9*F!'
M&q&^6%• M&)A)SE6
^&JL-!I•Š&$$u&-jkk~6,K&+j.kmhjkk~.`@*
(6;-AL&+.e>7pkk kkk
$/E@;-A/-'FM&.J$&(V0
„•&L(/F-*.
*/!+6[+„*M&$'1<@*
Q2;$HNu ŠHuuP.M&4‡,„G
C#n<-= !6 +!/.
•&L M& / W -A +6 @ E ; -A -
K$ ^&u+$V717!
--1#.J-+&?;+*$!1[+
%PL&T+9* lkhjkll.>(M&(
/W-AJ&%PL&•*-+S9*-'#$J&
^-.
‘F+EM&@ $*+S+*$0!;
-AI%9El?!F@*u1J$& $0
*!;-AK-LM&E?!K-L.
*F>*~hjklj -,ARM&N*$-U(/S
o$0E$F(*n1#l+F-,D
+F-,;-A7;>@E !/F@*$!
&*.
jl
j.j.X. …ZTVX…ZrDW,3VpTn„
[)*$$0FQ$$r'#S‡"
)*0QGRK&& *L&&UV*<67
jXŒkfŒl~~f.[?%*u&(*A
$0TQv.vV;SAh
*2;-A)F@*I%VW$x^M‹
*.q0 $0]9);-A+„vB$9 *
W -A ; -A F @* * K-L zM
K-L[ uI% ‹V O&7DGR)$D !6+<ˆD*U.
[0F M&?$*@D*<S1v
}F*?RK&& *K&&U$F9.
j.j.X.j. 3zBUh{3ZrDW,3VpTn„
• M&oBRL&& *&&L&&Ut)$9
!F#)+,w.
• ^]9);@CuYf ^%%X v$$/.
• /P$&Fd@E*3*$
&tJ%& J--u& Ow.
• ^*<@*JMHo?h1)+,t&
yM% •$& ^ Ow
j.j.X.X. 3z3…O3mOjT,3VpTn„
• e!F+$&+L&4d/€0.
• 83*E$x*F1)+,'/G3*E$x
)tn+ +<n+w Ehn#!)tXqw.
• Y*;-A5c/!F)+,D
E* c*d/CuY1-*1)+,.8?
-AG--F)+,*5:oF
--d/+DE*F>$)+,.
• eEh;?h"!)6@E.eB
;-AFJ--M&9*)?h@*
-A/.[F@E?h+,$d.
[F) *1M&<D$P&L
<BF$$SM&$*00
F+ESA!)1.
%*D5*;M&!JMHd/.
jj
j.j.m. ?O373yO,3VpTn3V…7UA
Hình 2: Kiến trúc bên trong 1 ứng dụng Phonegap
!1;-A&$ -$1;-A@
+E<+n-*<4*L&+
&L)-A+1)+,.e;-A/6!
5E&6!1;-At$-&V.$
$0F-\-2w*L&+&L
**@*L&+&Lo-c7;
-AL&+$.e-c7-*t&w1;-A
$F)$(v%!;-AE
-*>P$&*F/;-A *0
3*!&LE-*&>L&+&>&&@.
`@E+$&+- %+L&+I%;-A&
$@+E<?$l;-AL&+$.
Định nghĩa về web view
jX
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.
’-AL&+$!!lL&+&L4+<Q
;-AL&+$B/!+Fl-*L&+1
+$&.[6CuYt&EjGl,7')
F)+,&6>lL&+&&w.v%B+FP$&
(*n1;-A,*'VW$x@*$ }
-*&)*9 7&-P$& 6& '?
0@-*&>&&W-*&&&.y-
1;-A/!>CuY^%%.
u-*L&++$&Eh*09
D*+F)+,Q;-A!')F)+,t
^ J&$&&& ^& ^ u& Ow.`VD-'l;
-A+$&B,;-A9EEh*09+F
1)+, /l-*L&+.M&/B
@*9)+„*<l+v%JMH o
9@W-A!F;-AL&+$!
;-A1M&Eh*091)+,/
3*!QE-*L&+.
el$0FVW$xl?hl;-AW-Al
M&JMH ;-A#JMH+„W-Av*l$
$&+;-A5-,M&JMH #&JMH
?/?h7;.
<E$x*)9F/#CX+F-.%*
5V&Vo)JMH!M&d/F@E+$&.
jm
Hình 3: Cách thức 1 ứng dụng Phonegap tương tác với thiết bị
j.j.f. ?O32,Z2,3VpTn36UT3k7Hl7HSO?O
7PV@Xp
jf