Trường ĐH Khoa Học Tự Nhiên Tp. Hồ Chí Minh
TRUNG TÂM TIN HỌC
Bài 1: Giới thiệu về Web Service cho ứng dụng trên thiết bị di động
Ngành Mạng & Thiết bị di động
www.t3h.vn
2015
ộ
N i dung
ớ ề ̣ ệ ̣
1. Gi
́ơ
i thi u v dich vu Web (Web Service)
• Gi
i thiêu dich vu Web
́
́
ơ
ự
̣ ̣ ̣
• Gi
i thiêu ca c công nghê xây d ng dich vu Web
̣ ̣ ̣ ̣
• Đăc điêm cua dich vu Web
́
́
̣ ̉ ̉ ̣ ̣
• Kiê n tru c cua dich vu Web
́
̀
̀
́
̉ ̣ ̣
• Ca c tha nh phâ n chi nh cua dich vu Web
̀
̉ ̣ ̣
• An toa n cho dich vu Web
ự
̣ ̣
• Xây d ng môt dich vu Web
́
ợ
̣ ̣ ̣
• Ti ch h p dich vu Web theo chuân
̣ ̣ ̉
́ ̀ Internet Information Service) ơ ̣
1. Gi
Xây dựng và triển khai Web Service cho ứng dụng di động
i thiêu vê IIS (
2
́
ớ
ệ
̣ ̣ ̣
1.1 Gi
i thi u ca c loai dich vu Web
Dich
̣ ̣ (Web
vu Web ̀ ̀ Service) la gi ?
́ ̀ ́ ́ ự ợ ư ̣
́ ́ La s kê t h p ca c ng dung ́ trên ma y ti nh ca nhân,
́ ́ ̣ ̣ ng
̣ ̣ thiê t bi di đông trên ca c ́
́ ơ ư v i ́ thiê t bi ̃ ̣
ơ ở ư ́ ́ ̀ ̣
́ dung kha ć , ca c ́ ́ mang ma y ti nh va ca c ́ ̀ ̣ ơ ̣
̀ ́ ̀ ươ ̉
c s d liêu đê ̉ tao tha nh môt c câ u ti nh ̀ toa n hoa n hao ma ng i ́ ̀ ử ̣ ̉ ̣ s dung co thê la m viêc,
̀ ́ yêu câ u, phân ti ch, khai
́ ̣ ̣
Xây dựng và triển khai Web Service cho ứng dụng di động
́ ́ ơ ̣ tha i, câp nhât,…thông tin v i no thông qua mang
3
̣ Internet hoăc Wifi.
́
ớ
ệ
̣ ̣ ̣
1.1 Gi
i thi u ca c loai dich vu Web
̣ ̉
ượ ệ ề ầ ố ộ ̣ ̣ c thi ế ế ể ỗ ợ t k đ h tr
à m t h th ng ph n m m đ ứ ươ ụ ữ ả ̃ Theo đinh nghi a cua W3C (World Wide Web Consortium): •Dich vu Web l kh năng t ng tác gi a các ng d ng trên các máy tính khác nhau
ế ủ ự ắ ạ ượ ệ thông qua m ng Internet, giao di n chung và s g n k t c a nó đ c
ả ằ mô t b ng XML.
ị ị ằ ầ ề ể
ệ ứ ự ườ ư i dùng yêu
•Là tài nguyên ph n m m có th xác đ nh b ng đ a ch URL. ỉ •Th c hi n các ch c năng và đ a ra các thông tin ng c u.ầ •Ứng d ngụ cơ bản của Dịch vụ Web là tích hợp các hệ thống. •Các ứng dụng được tích hợp với cơ sở dữ liệu và các ứng dụng khác, người sử dụng sẽ giao tiếp với CSDL để tiến hành phân tích và
Xây dựng và triển khai Web Service cho ứng dụng di động
lấy dữ liệu.
4
́
ự
̣ ̣ ̣
1.2 Ca c công nghê xây d ng dich vu Web
Phân loai theo Công nghê s dung đê xây d ng dich vu Web cho
̣ ử ự ̣ ̣ ̉ ̣ ̣
́ ̀ ư ̣ ̣ ̉ ̣ ng dung di đông du ng .NET Framwork (phiên ban 4.5.3), hiên
́ ́ ̣ nay co ca c công nghê chi nh sau:
Xây dựng và triển khai Web Service cho ứng dụng di động
́ • Web Service • WCF Service • WCF REST Service • Web API Service
5
̣ ̉ ̉ ̣ ̣
1.3 Đăc điêm cua dich vu Web
Ư
̉
u điêm
ấ
ụ
ứ
ề
ầ
ạ
ả
ớ
ộ
ớ
ộ
ề ả
ạ
•Cung c p kh năng ho t đ ng r ng l n v i các ng d ng ph n m m ữ khác nhau ch y trên nh ng n n t ng khác nhau.
ẩ
ứ
ử ụ
ả
ử ụ
ệ ố
ề
ầ các h th ng ph n m m đã t n t
ồ ạ . i
ệ ươ
ữ
ề
ẻ
ạ
ẫ
ố
ầ
ng tác l n nhau và m m d o gi a các thành ph n
ứ
ụ
ể
ễ
ệ
•S d ng các giao th c và chu n m . ở •Nâng cao kh năng tái s d ng. •Thúc đ y đ u t ầ ư ẩ •T o m i quan h t ệ ố trong h th ng, d dàng cho vi c phát tri n các ng d ng phân tán.
ẩ
ứ ạ
ự
ủ
ệ
ệ
ạ
ả
ố
ố
ợ
ệ ố
ạ ộ
ươ
ể
ệ
•Thúc đ y h th ng tích h p, gi m s ph c t p c a h th ng, h giá ả ớ ệ ng tác hi u qu v i h thành ho t đ ng, phát tri n h th ng nhanh và t
ủ
ệ
ố
th ng c a các doanh nghi p khác.
Xây dựng và triển khai Web Service cho ứng dụng di động
6
̣ ̉ ̉ ̣ ̣
1.3 Đăc điêm cua dich vu Web
̉
́ ̃ ờ ả ̃ư ế ủ ̃ se dâ n đê n kho ng th i gian ch t c a Web service
́ ̃ ư ̣ ơ ̣
ể ỗ ế ượ ấ c nâng c p
ệ ế ậ
ườ ế ề ẩ ắ Service khi n ng i dùng khó n m
ề ề ấ ả ả ơ
́ Khuyê t điêm •Vào nh ng nh ng thiêt hai l n: Giao di n không thay đ i ổ ệ Có th l ộ i n u m t máy khách không đ Thi u các giao th c cho vi c v n hành ứ •Có quá nhi u chu n cho Web b t.ắ •Ph i quan tâm nhi u h n đ n v n đ an toàn và b o m t. ậ ế
Xây dựng và triển khai Web Service cho ứng dụng di động
7
́
́
̉ ̣ ̣
1.4 Kiê n tru c cua dich vu Web
Xây dựng và triển khai Web Service cho ứng dụng di động
̀ ̣ ̣ ̉ ̣ ̣ Mô hi nh hoat đông cua dich vu Web
8
́
́
̉ ̣ ̣
1.4 Kiê n tru c cua dich vu Web
ị
ẩ
ụ
D ch v Web g m có 4 chu n chính: ồ • SOAP (Simple Object Access Protocol) • WSDL (Web Service Description Language) • UDDI (Universal Description, Discovery, and
Integration)
• REST (Representational State Tranfer)
Xây dựng và triển khai Web Service cho ứng dụng di động
9
́
́
̉ ̣ ̣
1.4 Kiê n tru c cua dich vu Web
Xây dựng và triển khai Web Service cho ứng dụng di động
10
́
́
̉ ̣ ̣
1.4 Kiê n tru c cua dich vu Web
Dich vu Web 1.0: du ng SOAP
Xây dựng và triển khai Web Service cho ứng dụng di động
̀ ̣ ̣
11
́
́
̉ ̣ ̣
1.4 Kiê n tru c cua dich vu Web
SOAP ?
ứ ư ấ ộ
ổ ớ ụ ạ ị
• SOAP là m t giao th c giao ti p có c u trúc nh XML và mã hóa ế ứ thành đ nh d ng chung cho các ng d ng trao đ i v i nhau.
ắ ầ ừ ề ưở ng b t đ u t ầ Microsoft và ph n m m Userland .
ộ ặ ả ệ ử ụ ệ ạ vi c s d ng các tài li u XML theo d ng các thông
ặ ả ề ổ ữ ệ ự ộ ị v SOAP đ nh nghĩa m t mô hình trao đ i d li u d a
• Ý t • M t đ c t đi p.ệ • Đ c t
ơ ả ệ ệ ệ trên 3 khái ni m c b n: Các thông đi p là các tài li u XML,
ượ ừ ử ế ậ chúng đ ề c truy n đi t ể ậ bên g i đ n bên nh n, bên nh n có th
Xây dựng và triển khai Web Service cho ứng dụng di động
ể ế ế ơ ữ ệ chuy n ti p d li u đ n n i khác.
12
́
́
̉ ̣ ̣
1.4 Kiê n tru c cua dich vu Web
ư ̣ ̉ Đăc tr ng cua SOAP
́ ́ ̀ ̃ ượ ở ơ ̉ ̣ SOAP đ c thiê t kê đ n gian va dê m rông.
́ ́ ̀ ̃ ượ ử ̉ ̣ Tâ t ca ca c message SOAP đê u đ ́ c ma ho a s dung
XML.
ữ ệ ứ ử ề SOAP s dùng giao th c truy n d li u riêng.
́ ́ Không co garbage collection phân ta n, và cũng không có c ơ
ế ế ữ ấ ỳ ộ ế ch tham chi u. Vì th SOAP client không gi b t k m t tham
ố ượ ủ ề ế ầ ở chi u đ y đ nào v các đ i t ng xa.
̀ ́ ̀ ̃ ̀ ư ̣ ̣ ̣ SOAP không bi ra ng buôc b i bâ t ky ngôn ng lâp tri nh ở
Xây dựng và triển khai Web Service cho ứng dụng di động
̀ ̣ ̣ na o hoăc công nghê nào.
13
́
́
̉ ̣ ̣
1.4 Kiê n tru c cua dich vu Web
ệ ố ơ ả H th ng Soap đ n gi n
Sender
Receiver
Transport
Xây dựng và triển khai Web Service cho ứng dụng di động
ệ ́ Câ u trúc thông đi p SOAP
14
́
́
̉ ̣ ̣
1.4 Kiê n tru c cua dich vu Web
̀ ̣ ̣ Dich vu Web 2.0: du ng REST
́ ́ ơ ̉
́ ̃ ̀ ư ử ̣ ng th c HTTP ro ra ng.
̣
́ ư ̉ ̣ ̣
Xây dựng và triển khai Web Service cho ứng dụng di động
̉ ̉ ̣ ̉ ́ 4 nguyên tă c thiê t kê c ban: •S dung ph ươ •Phi trang tha i.́ •Hiên thi câ u tru c th muc URIs ́ •Chuyên đôi JSON/ XML hoăc ca hai.
15
́
́
̉ ̣ ̣
1.4 Kiê n tru c cua dich vu Web
REST ?
́ ́ ̀ ̣ REST (Representational State Tranfer) la ̀ môt kiê n tru c phâ n ̀ mê m
̂ ́ ́ ́ ̀ ư ượ ẹ cho ca c h thô ng phân ta n siêu truyê n thông nh WWW, đ c
ử ụ ự ộ ọ ch n s d ng r ng rãi thay cho Web service d a trên SOAP và
̣ ̉
ạ
̃ ̉ ư ̣ ̉ ̣
̃ ̀ ́ ̉ ̣ ̣
̉
̃ ̃ ̀ ́ ̀ ̀ ư ̉ ̉ ̉ ư Đăc tr ng cua REST WSDL. • Là d ng client – server. • Phân ta ch giao diên cua client ra khoi d liêu. ́ • Cho phe p mô i tha nh phâ n pha t triên đôc lâp. ́ ̀ • Hô tr đa nê n tang. ̀ ợ • Mô i yêu câ u t
́ ̀ ̉ ư ư ̉ ̉ ́ client phai co đu thông tin câ n thiê t đê ̃ ̀ thêm
́ ̛ơ
̛ợ server co thê hiêu đu c ma không câ n phai l u tr ́ ̀ thông tin na o tru c đo . ̛ợ ̉ ̣ ̣
• Tâ t ca ta i nguyên đu c truy câp thông qua môt interface
́ ́ ̀ ́
thô ng nhâ t (HTTP GET, PUT, POST, DELETE, ...). Xây dựng và triển khai Web Service cho ứng dụng di động
16
́
̀
́
̉ ̣ ̣
̀ 1.5 Ca c tha nh phâ n chi nh cua dich vu Web
XML – eXtensible Markup Language/ JSON
(JavaScript Object Notation)
WSDL – Web Service Description Language
Universal Description, Discovery, and Integration
(UDDI)
SOAP – Simple Object Access Protocol
RSS – Really Simple Syndication
RDF – Resource Description Framework
RESTful Representational State Transfer
Xây dựng và triển khai Web Service cho ứng dụng di động
WADL - Web Application Description Language
17
́
̀
́
̉ ̣ ̣
̀ 1.5 Ca c tha nh phâ n chi nh cua dich vu Web
ả ữ ệ
ứ
ư
ẩ
ở
d li u
ữ ệ
ể ị
ầ đ đ nh nghĩa các thành ph n d li u trên trang web và
XML – eXtensible Markup Language
• M t chu n m do W3C đ a ra cho cách th c mô t ộ • Du ng̀
ữ
ệ
cho nh ng tài li u B2B.
ế
ự
ề
ả
ộ
ẽ ượ
ẻ
ể
ạ
̣
• Ki n trúc n n t ng cho vi c xây d ng m t Web service, d ữ ệ ị c chuy n sang đ nh d ng th XM
L hoăc JSON
ệ li u s đ
.
ữ
ị
ẩ
ữ liêụ
theo ngôn ng JavaScript, tiêu chu n ECMA262
ộ ị
ấ
ả
ả
ơ
ớ
ườ
ữ ệ
ng d li u
JSON (JavaScript Object Notation) • Đ nh nghĩa d năm 1999.
• C u trúc là m t đ nh d ng văn b n đ n gi n v i các tr ạ
ượ ồ
đ
c l ng vào nhau.
́
̀
́
̣ ̉ ̣ ̣
• La câ u tru c d liêu phô dung hiên nay.
̃ư Xây dựng và triển khai Web Service cho ứng dụng di động
18
́
̀
́
̉ ̣ ̣
̀ 1.5 Ca c tha nh phâ n chi nh cua dich vu Web
WSDL – Web Service Description Language Universal
ộ ị Description, Discovery, and Integration (UDDI): đ nh nghĩa m t
Xây dựng và triển khai Web Service cho ứng dụng di động
ệ ả ủ ụ ệ ị tài li u XML mô t giao di n c a các d ch v web.
19
́
̀
́
̉ ̣ ̣
̀ 1.5 Ca c tha nh phâ n chi nh cua dich vu Web
RESTful Representational State Transfer
̀ ̀ ́ ử ơ ̣ ̣ ̣ ̉ ̣ La môt dich vu web đ n gian s dung HTTP va ti nh
́ ̉ châ t cua REST.
́ ̀ ̀ ̀ ̀ ̛ợ ̣ ̣ ̣ La môt tâp ta i nguyên ca c tha nh phâ n đu c đinh
nghi a:̃
́ ̣ ̣ o URI gô c cho dich vu web.
̃ ợ ở ̣ ̣ o MIME type hô tr b i dich vu web.
̀ ̃ ử ̣ ̣ ̣ ̣ ̣ o Tâp ha nh đông hô tr b i dich vu web s dung ợ ở
Xây dựng và triển khai Web Service cho ứng dụng di động
́ ươ ư ph ng th c HTTP (GET, POST, PUT, DELETE).
20
̀
̣ ̣
1.5 An toa n cho dich vu Web
ộ ấ ụ ệ ề ả ả Vi c đ m b o an toàn cho d ch v Web là m t v n đ quan ị
tr ngọ .
̉ ̉
ả ẩ chu n an toàn bao Đam bao an toa n cho Web Service: ̀ • WSSecurity (b o m t cho Web service) ậ
ượ ự ữ ố trùm cho SOAP, nó đ c dùng khi mu n xây d ng nh ng Web
ậ ẹ service toàn v n và tin c y.
́ ̀ ̀ ượ c thêm va o: WSSecure Conversation
• Ca c tha nh phâ n đ ̀
Describes, WSAuthentication Describes, WSPolicy Describes
Xây dựng và triển khai Web Service cho ứng dụng di động
hay WSTrust Describes, ...
21
ự
̣ ̣ ̣
1.6 Xây d ng môt dich vu Web
ộ ị ự ụ
phát triển và chạy thử ứng dụng ự ̣ Có 4 giai đo n chính đ xây d ng m t d ch v Web ạ ể • Giai đoan xây d ng:
dịch vụ Web, xây dựng các chức năng và định nghĩa dịch
vụ. Có 2 cách :
o Red-path- solod
o Blue-path-dashed
̣ ̉
́ ̣
̣ ̉
• Giai đoan triên khai • Giai đoan tiê n ha nh ̀ • Giai đoan quan lý
Xây dựng và triển khai Web Service cho ứng dụng di động
22
ự
̣ ̣ ̣
1.6 Xây d ng môt dich vu Web
ộ ị ự ụ
ự ̣
ố ị ị ụ ̣ ̉ công b đ nh nghĩa d ch v , xây Có 4 giai đo n chính đ xây d ng m t d ch v Web ạ ể • Giai đoan xây d ng • Giai đoan triên khai
ủ ự ự ụ ể ị d ng WSDL và tri n khai mã th c thi c a d ch v Web.
̀ ́ ự ế ọ ị ̣ ụ tìm ki m và g i th c thi d ch v
• Giai đoan tiê n ha nh
ữ ườ ử ụ ị ụ i s d ng d ch v .
ụ ả ả ị ̣ ̉ ự ị qu n lý và qu n tr d ch v , duy trì s
ở Web b i nh ng ng • Giai đoan quan ly ́ ủ ổ ụ ậ ử ỗ ậ ớ ị ị n đ nh c a d ch v , c p nh t thông tin m i, s a l i khi
Xây dựng và triển khai Web Service cho ứng dụng di động
ả nó x y ra.
23
ự
̣ ̣ ̣
1.6 Xây d ng môt dich vu Web
ự ụ ồ ướ Qui trình xây d ng m t d ch v Web bao g m các b ộ ị c sau:
ự ứ ụ ị ị 1. Đ nh nghĩa và xây d ng các ch c năng, các d ch v mà
ụ ẽ ấ ị d ch v s cung c p.
ạ ị ụ 2. T o WSDL cho d ch v .
ự ̣ 3. Xây d ng SOAP hoăc REST server
ể ớ 4. Đăng ký WSDL v i UDDI registry đ cho phép các client có
ể ấ ấ th tìm th y và truy xu t.
ậ ừ ự ̣ ̣ 5. Client nh n tâp tin WSDL và t đó xây d ng SOAP hoăc
ể ế ố ớ ể ̣ REST client đ có th k t n i v i SOAP hoăc REST server
ụ ự ứ ự ệ ọ ị 6. Xây d ng ng d ng phía client và sau đó g i th c hi n d ch
Xây dựng và triển khai Web Service cho ứng dụng di động
ế ố ớ ụ ệ ̣ v thông qua vi c k t n i t i SOAP hoăc REST server.
24
́
ợ
̣ ̣ ̉
1.7 Ti ch h p dich vu Web theo chuân
Giám sát (monitoring)
ư ế ộ ạ ụ ạ ị ừ Giám sát các d ch v Web ch y nh th nào qua toàn b m ng, t
ủ ạ ộ ộ ớ m t chi nhánh con c a m t công ty trên m ng t i các chi nhánh khác
ệ ớ ế trong công ty hay giao ti p v i doanh nghi p khác.
ườ ữ ệ ị Xác đ nh đ ng đi d li u (Data routing)
́ươ ử ụ ả H ớ ố t i t ng i đa hóa kh năng s d ng l ạ . i
ể ệ ể ễ ủ ữ ầ ộ ượ Nh ng th hi n c a cùng m t thành ph n có th d dàng đ ử c s
ụ ạ ụ ứ ở d ng l i trong các ng d ng phân tán khác b i vì chúng hoàn toàn
Xây dựng và triển khai Web Service cho ứng dụng di động
ộ ẫ ộ ậ ụ đ c l p và không ph thu c l n nhau.
25
́
ợ
̣ ̣ ̉
1.7 Ti ch h p dich vu Web theo chuân
ể Tri n khai (Deployment)
ụ ể ề ể ấ ấ ị ả Tri n khai các d ch v Web có kh năng nâng c p, đi u khi n và c u
ầ ừ ạ hình các thành ph n t xa thông qua m ng phân tán.
ả Qu n lý (Management)
ự ể ế Có th xây d ng theo ki n trúc P2P (PeertoPeer)
ấ ả
ả C u hình và qu n lý phiên b n (Configuration and version management)
ạ ể ử ụ ụ ả ả S d ng các công c linh ho t đ qu n lý các phiên b n khác nhau
ụ ả ị ượ ề ủ c a d ch v Web, cho phép các phiên b n đ ấ c nâng c p và đi u
Xây dựng và triển khai Web Service cho ứng dụng di động
ể ừ ộ ụ ả ậ khi n t m t công c qu n lý t p trung.
26
́
ợ
̣ ̣ ̉
1.7 Ti ch h p dich vu Web theo chuân
ậ ả B o m t (Security)
ị ữ ế ệ ậ ả ả ớ ợ ụ D ch v Web k t h p v i nh ng công ngh có kh năng b o m t
Xây dựng và triển khai Web Service cho ứng dụng di động
cao.
27
ộ
N i dung
ớ
ề ̣
ệ
̣
1. Gi
i thi u v dich vu Web (Web Service)
́
Internet
Information
ơ
̣
2. Gi
i
̀ thiêu vê
IIS
(
Service)
́ ̃ ̀ ́ ươ ̣ ● H ng dâ n ca ch ca i đăt IIS
́ ̃ ́ ̀ ́ ươ ̉ ư ● H ng dâ n ca ch câ u hi nh đê đ a Web Service lên
Xây dựng và triển khai Web Service cho ứng dụng di động
IIS
28
̃
̀
Internet Information
ng dâ n ca i IIS (
́ ươ 2.1 H Service)
̀ ́ ́ ơ Đô i v i Windows 7 va Windows
8:
Va o ̀ Control Panel → Programs
and Features
→ Turn Windows features on or
off
̣ → Chon Internet Information
Service
ấ ờ → Nh n OK và ch vài phút đ ể
Xây dựng và triển khai Web Service cho ứng dụng di động
ệ ố ậ ạ ậ h th ng c p nh t l i.
29
́
̀
́
̃
̉ ư
ng dâ n ca ch câ u hi nh đê đ a Web
2.2 H
́ ươ Service lên IIS
ở ộ Kh i đ ng IIS
Vào Control Panel → System and Security → Administrative Tools ch n ọ
Internet Information Services (IIS) Manager.
ọ ạ Ch n Application Pools → t o thêm 2 Application Pools là: ASP.NET
ọ ọ v4.0 (ch n Integrated) và ASP.NET v4.0 Classic (ch n Classic) t ấ ả t c
Xây dựng và triển khai Web Service cho ứng dụng di động
ầ ọ ph n .NET Framework ch n v4.0.30319.
30
̀
́
́
̃
̉ ư
ng dâ n ca ch câ u hi nh đê đ a Web
2.2 H
́ ươ Service lên IIS
Add Web service
ộ ả Chu t ph i vào Sites → Add Website...
̣ ̣ ̉ ̣ ứ dich vu web cua ban.
̣ ̣ ̉ ̣
ọ
́ ̀ ́ ́ ́ ư ặ ị ̉ ̉
Xây dựng và triển khai Web Service cho ứng dụng di động
́ ̀ ́ ượ ươ ơ ̉ ̉ ̣ Trong đo :́ •Physical path: th m c ch a ư ụ •Site name: tên dich vu web cua ban. •Application pool: ch n .Net 4.0 •Port: m c đ nh là 80, co thê thay thê bă ng ca c công kha c nh ng ́ c cua ban. c tru ng v i ca c công website/ web service tr không đ
31
́
̀
́
̃
̉ ư
ng dâ n ca ch câ u hi nh đê đ a Web
́ ươ 2.2 H Service lên IIS
̣
ộ ư ụ Web service v a từ ạo ra trong th m c site → nhấp
Xây dựng và triển khai Web Service cho ứng dụng di động
́ ̀ ầ ộ ọ ̣ ̉ ̣ ạ → ch n tri nh duyêt đê chay. Chay Web service •Nhâ ṕ chu t vào vào Content View. •Nhâ p chu t ph i vào trang c n ch y ả
32
Xây dựng và triển khai Web Service cho ứng dụng di động