1. Trang chủ
  2. » Luận Văn - Báo Cáo

Nghiên cứu và phát triển ứng dụng tra cứu trao đổi thông tin tổng hợp cho sinh viên hàng hải trên nền tảng di động

54 703 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 54
Dung lượng 5,1 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Nghiên cứu và phát triển ứng dụng tra cứu trao đổi thông tin tổng hợp cho sinh viên hàng hải trên nền tảng di động

Trang 1

Mục lục

Lời mở đầu .5

Chương 1: Giới thiệu đề tài .6

Mục tiêu: .8

Nhiệm vụ nghiên cứu .9

Phương thức nghiên cứu .9

Chương 2: Giới thiệu công cụ cài đặt .11

2 : Tìm hiểu về Native Application, Mobile Application, Hybrid Application 11

2.1 :Native Application : .11

Điểm mạnh và yếu của Native application: .11

Điểm mạnh .11

Điểm yếu 12

2.2 : Mobile Application 13

Điểm mạnh và yếu của Mobile web application 13

Điểm mạnh: 13

Điểm yếu 14

2.3 : Hybrid .14

2.4 Lập trình PhoneGap 19

khái niệm: .19

PhoneGap có thể trở thành người bạn tốt nhất của bạn nếu bạn: 20

PhoneGap làm việc như thế nào? 20

Kiến trúc ứng dụng PhoneGap 21

Giới thiệu tổng quan về các API PhoneGap : .22

làm việc với Contacts (danh bạ điện thoạiS): 22

Làm việc với Camera .23

Làm việc với Geolocation: .23

Làm việc với Media File: .23

Làm việc với tùy chọn lưu trữ: .23

Trang 2

Điểm khó khăn khi sử dụng PhoneGap: 23

: Những ưu nhược điểm của PhoneGap 24

Ưu điểm: 24

Nhược điểm: .24

Cài đặt phonegap .25

Chương 3 Phân tích thiết kế hệ thống 39

3.1Sơ đồ phân rã chức năng 39

3.2 : Sơ đồ mức ngữ cảnh: .40

3.3 Sơ đồ mức đỉnh .41

3.4 : Sơ đồ mức dưới đỉnh của hệ thống .42

3.5 : Sơ đồ mức dưới đỉnh của tra cứu thông tin 43

3.6 : Sơ đồ mức dưới đỉnh của trao đổi thông tin .44

3.7 : Sơ đồ mức dưới đỉnh của tìm kiếm .45

Danh mục hình ảnh .24

Lời mở đầu .35

Chương 1: giới thiệu đề tài .46

Chương 2 giới thiệu công cụ cài đặt .88

1: tìm hiểu về native application, mobile application, hybrid application .88

1.1:Native Application : .89

Điểm mạnh và yếu của Native application: .89

1.2:Mobile Application .1010

Điểm mạnh và yếu của Mobile web application .1010

1.3: Hybrid .1111

2 Lập trình phonegap .1614

2.1.khái niệm: .1614

PhoneGap làm việc như thế nào? 1716

: Sơ đồ ứng dụng PhoneGap làm việc: .1817

2.2: Giới thiệu tổng quan về các API PhoneGap : 1917

Trang 3

Làm việc với Media File: ……… 2019

Làm việc với tùy chọn lưu trữ: .2019

Điểm khó khăn khi sử dụng PhoneGap: .2019

2.3: Những ưu nhược điểm của PhoneGap 2119

2.4: Cài đặt phonegap 2220

Chương 3 phân tích thiết kế hệ thống 3531

3.1 sơ đồ phân rã chức năng 3532

3.3:Sơ đồ mức đỉnh .3834

3.4: sơ đồ mức dưới đỉnh của hệ thống .3935

3.5: sơ đồ mức dưới đỉnh của tra cứu thông tin .4036

3.6: sơ đồ mức dưới đỉnh của trao đổi thông tin .4136

Danh mục hình ảnh

Trang 4

Hình 1: .6

Sinh viên tra cứu được sinh viên khác mà mình quan tâm trên website 6

Hình 2: Sự phát triển của điện thoại di động .7

Hình 3: Ứng dụng di động .8

Hình 4: Các môi trường di động .10

Hình 5: Sơ đồ so sánh .16

Hình 6: Bảng so sánh .17

Hình 8 .18

: Hoạt động trong PhoneGap .18

Hình 9: So sánh .18

Hình 10: Ứng dụng chạy trên các nền tảng khác nhau .19

Hình 11: Ngôn ngữ sử dụng .19

Hình 12: Kiến trúc PhoneGap .19

Hình 13: Sơ đồ ứng dụng của PhoneGap .20

hình 14: Giới thiệu tổng quan về PhoneGap .21

Hình 15: Cách t ạo 1 Android Project trong Eclips e IDE 26

Hình 16: Cách thi ết l ập các thông s ố để tạo 1 Android Project 28

Hình17: Chỉnh sửa để chạy PhoneGap .30

Hình 18 : Cách chỉnh sửa bên tr ong file java chính 31

Hình 19: Code chèn để chạy PhoneGap .34

Hình 20: Chạy chương trình trên nền tảng Android .36

Hình21: Hình c hạy chương trình trên n ền Android Emulator .37

Hình 22: Sơ đồ phân rã chức năng .38

Hình 23: Sơ đồ mức ngữ cảnh .39

Hình 24: Sơ đồ mức đỉnh .40

Hình 25: Sơ đồ mức dưới đỉnh của hệ thống .42

Hình 26: Sơ đồ mức dưới đỉnh của tra cứu thông tin .42

Hình 27: Sơ đồ mức dưới đỉnh của trao đổi thông tin .43

Hình 28: Sơ đồ dưới đỉnh của tìm kiếm 44

Tài liệu tham khảo:

- Trang wed học trực tuyến:http://www.w3schools.com/

-Tài liệu phonegap cho người mới học của Ngô Quang Trung

http://www.slideshare.net/myloveforyounqt/phonegap-cho-nguoi-moi-hoc

“lập trình hướng đối tượng trong javascript và các kiểu mẫu thiết kế”:

http://www.slideshare.net/myloveforyounqt/lap-trinh-huong-doi-tuong-trong-javascript-va-cac-kieu-mau-thiet-ke?related=1

Tìm hiểu mã nguồn mở phonegap và xây dựng ứng dụng:

http://www.slideshare.net/myloveforyounqt/tim-hieu-ma-nguon-mo-phonegap-va-xay-dung-ung-dung?related=3

Trang 5

tiện giao tiếp và làm việc chủ yếu của con người Và phần cốt lõi để tạo ra sứchấp dẫn từ những chiếc smartphone chính là hệ điều hành và các ứng dụng mà

Trang 6

Hiện tại, các ứng dụng dành cho thiết bị di động đang bị phân mảnh rấtlớn do các hãng công nghệ lớn cạnh tranh, ganh đua nhau tạo ra các nền tảng

hệ điều hành di động của riêng mình Do đó PhoneGgap ra đời với mục đích

“viết một lần, biên dịch qua cloud và chạy khắp nơi – tương thích với hầu hếtcác nền tảng hệ điều hành di động hiện tại”, đã nhận được sự đóng góp củarất nhiều tổ chức và cộng đồng công nghệ lớn PhoneGgap giúp giảm nhẹgánh nặng - cần phải nắm bắt và hiểu rõ về các công nghệ bên trong mỗi nềntảng – đối với nhà lập trình trong việc tạo ra ứng dụng có thể chạy trên đa nềntảng di động Giờ đây, với sự hỗ trợ đắc lực của PhoneGgap, nhà lập trình chỉcần nắm bắt và chuyên sâu về 1 công nghệ duy nhất

Đề tài “nghiên cứu và phát triến ứng dụng tra cứu trao đổi thông tin tổnghợp cho sinh viên Hàng Hải trên nền tảng di động” giúp cho sinh viên có thể cócách vào mạng khác không phải thông qua máy tính

Chương 1: Giới thiệu đề tài

Trong những năm gần đây, mạng Internet đã trở thành nền tảng chính chi

sự trao đổi thông tin trên toàn cầu Có thể thấy một cách rõ ràng là Internet đã vàđang tác động lên nhiều mặt của đời sống chúng ta từ việc tìm kiếm thông tin,trao đổi dữ liệu đến việc hoạt động thương mại, học tập nghiên cứu và lam việctrực tuyến… Nhờ Internet mà việc trao đổi thông tin cũng ngày càng tiện lợi,nhanh chóng hơn, khái niệm thư điện tử (email) cũng không còn xa lạ với mọingười

Trang 7

cuộc cách mạng cho các thiết bị di động, trong thời kì mà công nghệ số pháttriển

với tốc độ chóng mặt như hiện nay Nhu cầu sử dụng thiết bị di động đã trở

thông tin trên di động ngày nay càng phổ biến hơn

Đối với sinh viên Hàng Hải việc tra cứu thông tin trên các trang wed:www.vimaru.edu.vn

Hình 1:

Ssinh viên tra cứu được sinh viên khác mà mình quan tâm trên webdsite Sinh viên tra cứu những văn bản biểu mẫu cần thiết giúp sinh viên có thểnắm bắt thông tin như: học bổng, điều kiện xét tốt nghiệp, học phí, các khoa,phòng ban, thông tin tuyển sinh của trường trong năm nay và năm tới, các đề tàinghiên cứu khoa học

Những bạn sinh viên nhà có điều kiện mua máy tinh có thể vào mạng thườngxuyên sẽ nhanh chóng có thông tin trên webdsite Những sinh viên chưa có máytính phải ra quán nét mới có được thông tin cần thiết Máạy tính không thể mangtheo bên mình suốt ngày được Những thông tin khẩn cấp, lúc không có máytính ở bên cạnh, sinh viên không thể cập nhật dược thông tin nhanh chóng được.Những lúc có sự cố về mạng, sinh viên không thể tra cứu được trên bất kỳ

Trang 8

phương tiện nào cả.

Những lúc có sự cố về máy tính, sinh viên không thể tra cứu được ngoàichiếc điện thoại có thể kết nối internet sinh viên có thể vào mạng qua phươngtiện kết nối internet nào cả.Những sinh viên ở quê không có điều kiện vào mạnginternet cũng không thể nào xem được thông tin trên wedsite củatrường.Ngooàai việc tra cứu internet sinh viên hỏi thông tin qua cán bộ lớp vềviệc học, sinh hoạt đầu tuần, học phí, văn bản liêen quan.Với chiếc điện thoại diđộng thông minh có kết nối internet,bạn có thể tìm được thông tin cần thiết Trong những năm gần đây điện thoại thông minh phát triển vượt bậc.trongnăm

Hình 2: Sự phát triển của điện thoại di động

Và ứng dụng trên di động

Hình 3: Ứng dụng di động

Trang 9

Với đề tài “ Nnghiên cứu phát triển ứng dụng tra cứu thông tin cho sinh viêntrên nền tảng di động” giúp sinh viên đi đâu cũng có thể vào mạng lây thông tinqua ứng dụng Khi chưa có ứng dụng di động sinh viên thường dùng điện thoạikết nối vào ứng dụng như facebook, googlechome trên điện thoại di động

Mục tiêu:

Xây dựng ứng dụng di động cho phép sinh viên tra cứu, tìm kiếm và nhậncác thông tin chính xác kịp thời từ nhà trường Các thông tin này bao gồm (tintức từ nhà trường, các thông báo, lịch học, lịch thi, văn bản biểu mẫu dành chosinh viên, hướng dẫn cho sinh viên về công tác đào tạo, công tác sinh viên, tracứu kết quả học tập, ….) Có khả năng cài đặt đa nền tảng (Windows Phone,IOS, Android ) Toàn bộ các thông tin này đều được lấy thông qua dịch vụWebservice do site nhà trường cung cấp hoặc lấy thông tin qua RSS hoặcXML…

Nhiệm vụ nghiên cứu.

• Đọc tài liệu về lập trình ứng dụng trên phonegap

• - Tham gia thảo luận, hỏi đáp các diễn đàn chuyên môn, tham khảo code

ví dụ, hướng dẫn trên mạng Internet về thuật toán, cách xử lý các vấn đềgặp phải

Do lĩnh vực của đề tài này tương đối rộng, và bản thân kiến thức còn cónhiều hạn chế nên đồ án không tránh khỏi nhiều sai sót Em mong được sự

Trang 10

góp ý và chỉ bảo của các thầy cô và các bạn sinh viên để nội dung đồ án đượchoàn thiện và phong phú hơn.

Một lần nữa, em xin chân thành cảm ơn các thầy cô giáo trong khoa CôngNghệ Thông Tin, đặc biệt là thầy giáo Đinh Đức Thiện đã tận tình giúp đỡ, chỉbảo giúp em hoàn thành đồ án

Trang 11

Chương 2: Giới thiệu công cụ cài đặt

2 1: Ttìm hiểu về Nnative Aapplication, Mmobile Aapplication,

Hhybrid Aapplication

2.11.1:Native Application :

Mmột ứng dụng được thiết kế đặc biệt chỉ chạy trên một hệ điều hành của mộtthiết bị nào đó và thường phải điều chỉnh để chạy được trên các thiết bị khácnhau

• Được phát triển dành riêng cho từng nền tảng cụ thể

• Được phát hành thông qua các kho ứng dụng

• Được xây dựng dược trên các công nghệ và các môi trường phát triểndành riêng

Trang 12

tiếp thị và chào bán trên các chợ ứng dụng như App Store và Google market.Các chợ ứng dụng thúc đẩy nhu cầu tiêu dùng và đảm bảo công việc kinhdoanh của nhà phát triển thứ 3 Với Mobile web app thì việc kinh doanh vàtrả thanh toán cho ứng dụng vẫn còn nhiều thủ tục, không nhất quán, không

an toàn và không thúc đẩy mạnh mẽ tiêu dùng

• - Về mặt performance thì native app chạy nhanh hơn mobile app tronghầu hết trường hợp Tuy nhiên sự chênh lệch ở các ứng dụng có thể là nhỏ,chấp nhận được và khó nhận biết bởi người dùng Hiện tại, với game thìnative app vượt bậc và thắng tuyệt đối

• Về tính năng thì native app có khả năng truy cập các phần cứng (nhưcamera, GPS, thiết bị thu âm … ) và có thể truy cập đến các quyền localnhư : sao chép, tạo, ghi, đọc tập tin (trên bộ nhớ của mobile), các thông tindanh bạ, thông tin cá nhân, thực hiện cuộc gọi, nhắn tin … Trong khi MobileWeb app thì không thể (có trường hợp có thể đọc file, như upload)

• Ở chế độ offline: Native app có lợi thế so với mobile web app (luôn phảichạy online) Ở offline-mode, native app sẽ dùng những dữ liệu đã cachetrước đó ở lần cuối cùng mà người dùng truy cập online

Điểm yếu

You understand and agree that all of our multi-player poker games are publicand therefore may be reviewed and published by other players, either at thetime http://www.sacramentosirens.net/ of the game or thereafter

• Không thể cross platform: một native app chỉ có thể chạy trên một hệ điềuhành nhất định

• Với mỗi HDH thì người lập trình phải viết riêng native code cho nó , dẫnđến không nhất quán giữa các phiên bản ứng dụng, chi phí phát triển cao vàđòi hỏi khả năng thành thạo nhiều ngôn ngữ ở lập trình viên Đôi khi đòi hỏilập trình viên phải sử dụng những công cụ độc quyền và chỉ được làm việc

Trang 13

trên một môi trường duy nhất như: dùng xcode trên Mac OS (nếu bạn muốnphát triển ứng dụng cho iOS).

• Hơn nữa, việc bảo trì hay nâng cấp sẽ làm mất nhiều thời gian Do phảisửa chữa từng app trên từng HDH, thủ tục đưa lên chợ ứng dụng và chờ đợiapproval (đôi khi bị reject vì vi phạm một số điều lệ của nhà phát triển chợứng dụng), nên bản cập nhật không đến tay người dùng ngay lập tức, hơn nữa

họ phải tự update khi vào chợ ứng dụng

• Tính đa dạng phiên bản của HDH làm cản trở việc phổ dụng các nativeapp Các thiết bị chạy phiên bản HDH cũ hơn sẽ không cài đặt được

2.21.2: Mobile Applicationn

Mmột phần mềm được viết cho một thiết bị di động như điện thoại hoặctablet, thực hiện một tác vụ đặc biệt cho một nhu cầu của người dùng như:game, lịch, trình chơi nhạc, bản đồ Google map … Mobile app mang một kháiniệm chung và rộng lớn cho tất cả các ứng dụng chạy trên thiết bị mobile (kể cảnative app và web app)

• Quá trình phát triển dễ dàng, nhanh chóng và đơn giản

• Phải chạy trong trình duyệt browser của mobile

• Được xây dựng dựa trên các công nghệ theo chuẩn W3C

• Bị giới hạn truy cập tới các tính năng của thiết bị

Đi m m nh và y u c a Mobile web application ểm mạnh ạnh ếu của Mobile web application ủa Mobile web application

Đi m m nh: ểm mạnh ạnh

• Cross platform: Có thể chạy trên tất cả trình duyệt của mobile hỗ trợphiên bản HTML và javascript

• Không cần cài đặt trên máy

• Thuận lợi cho các nhà phát triển:

• Với một phiên bản duy nhất cho tất cả, nên giảm chi phí và thời gian chophát triển, bảo trì, cũng như nâng cấp sau này

Trang 14

• Ngôn ngữ lập trình phổ dụng là HTML và Javascript mà hầu hết các lậptrình viên đều biết.

• Không giới hạn môi trường lập trình, lập trình viên có thể làm việc trênhầu hết các HDH

• Ứng dụng không cần phải được build lại qua SDK hoặc một công cụ pháttriển độc quyền khác như xCode (chỉ cần deploy lên server và chạy)

• Việc cập nhật phiên bản sẽ đến ngay lập tức và trong suốt với người dùng(ngay sau khi deploy) mà không cần thông qua thủ tục và chờ đợi approvalnhư các chợ ứng dụng

• Có thể được đánh dấu bởi search engines (tốt cho SEO)

• Dễ dàng quảng bá: người dùng có thể tìm thấy thông qua search engine,share link từ email, từ social netwoks hoặc từ các dich vụ quảng cáo trựctuyến như Google Ads

Đi m y u ểm mạnh ếu của Mobile web application

• Về performance, không chạy nhanh , không thích hợp cho các ứng dụnggame

• Luôn phải chạy online, không thể phát triển ở chế độ offline

• Thích hợp cho các ứng dụng, dich vụ thường là miễn phí, vì thủ tục thanhtoán không an toàn và nhanh chóng, dẫn đến thu hút tiêu dùng kém

2.31.3: Hybrid

Ttheo định nghĩa là bất cứ điều gì từ các nguồn không đồng nhất, hoặc baogồm các yếu tố của các loại khác nhau hoặc không thích hợp Một ứng dụnghybrid là một trong đó được viết với cùng một công nghệ được sử dụng cho cáctrang web và triển khai web di động, và được lưu trữ hoặc chạy bên trong mộtcontainer có nguồn gốc trên một thiết bị di động Đây là cuộc hôn nhân của côngnghệ web và thực hiện bản địa

Trang 15

Ứng dụng hybrid sử dụng một điều khiển xem web (UIWebView trên iOS,WebView trên Android và những người khác) để trình bày HTML và JavaScripttập tin trong một định dạng toàn màn hình, bằng cách sử dụng một trình duyệt tựrendering động cơ (không phải là bản thân trình duyệt) WebKit là công cụ trìnhduyệt dựng hình được sử dụng trên iOS, Android, Blackberry và những ngườikhác Điều đó có nghĩa là HTML và JavaScript được sử dụng để xây dựng mộtứng dụng lai là ra / xử lý bởi các công cụ rendering WebKit (cho bạn Windows

8 folks, đây là những gì động cơ IE10 không cho các ứng dụng phong cáchMetro sử dụng WinJS) và hiển thị cho người sử dụng một toàn màn hình điềukhiển xem web, không phải trong một trình duyệt Không còn là bạn buộc phải

sử dụng HTML và JavaScript chỉ trong trình duyệt triển khai thực hiện trên cácthiết bị di động

Các ứng dụng lai là việc thực hiện một lớp trừu tượng đó cho thấy nhiềukhả năng thiết bị (đọc: API bản địa) đến các ứng dụng lai như một APIJavaScript Đây là điều không thể với di động triển khai Web vì ranh giới anninh giữa các trình duyệt và các API thiết bị Apache Cordova (trước đây làPhoneGap) là một ví dụ của một lớp trừu tượng JavaScript trên các API bản địa(đối với Windows 8 bạn folks, WinJS là một ví dụ của một lớp trừu tượngJavaScript trên đầu trang của API bản địa) Thông qua lớp trừu tượng này mộttập hợp chung các API được tiếp xúc trong JavaScript, và các JavaScript APIlàm việc trên bất kỳ thiết bị hỗ trợ bởi khuôn khổ (cho WinJS đó là chỉ dành choWindows 8, nhưng cho Cordova đó là bảy nền tảng di động bao gồm iOS,Android, Blackberry và Windows Điện thoại 7) Khi wrapper bản địa được biêndịch xung quanh HTML, CSS và JavaScript tài nguyên, có một lớp Interop thêmkết nối các API JavaScript với các API nền tảng cụ thể

Điều này thực sự có nghĩa là, ví dụ nếu tôi xây dựng một ứng dụng điện

Trang 16

thoại di động với Apache Cordova, tôi có thể sử dụng JavaScript để truy cập vàomột API bản địa, như máy ảnh, sử dụng một cuộc gọi API duy nhất bất kể nềntảng ứng dụng sẽ chạy trên

10.function onCameraSuccess (imageData) {

11 var image = document.getElementById('myImage');

12 image.src = "data:image/jpeg;base64," + imageData;

13.}

14

15.function onCameraError (message) {

16 alert('Failed because: ' + message);

17.}

Tóm tắt :

Ứng dụng lai là một lựa chọn tuyệt vời cho bạn nếu bạn:

ảnh

Trang 17

• Không cần hiệu năng đồ họa cao cấp mà bạn chỉ có thể nhận được từ mộtứng dụng bản địa

Ứng dụng lai được xây dựng với công nghệ web có nghĩa là có hàng triệu nhàphát triển web, những người đã có kỹ năng thiết lập cơ sở để xây dựng các ứngdụng di động

Hình 54: Sơ đồ so sánh

Trang 18

ứng dụng bản địa nếu cần

Vậy em chọn hybrib app là ngôn ngữ phát triển trên mobile

Ứng dụng lai được xây dựng với công nghệ web có nghĩa là có hàng triệu nhà

Trang 19

phát triển web, những người đã có kỹ năng thiết lập cơ sở để xây dựng các ứngdụng di động

2.42 Lập trình PphoneGgap

2.1.khái niệm:

PhoneGap là một nền tảng mã nguồn mở dùng để phát triển ứng dụngmobile cho cả iOS, Android, Windows Phone, BlackBerry, webOS, Bada,Symbian cùng lúc, viết một lần, biên dịch qua cloud và chạy trên nhiều nền tảngsmartphone khác nhau Đây là một dự án nguồn mở miễn phí của Nitobi giúpviệc phát triển ứng dụng di động dễ dàng hơn đối với mọi hệ điều hành, hiện đã

có 40.000 lượt tải về mỗi tháng, tổng cộng là 600.000 lượt tải, đội ngũ phát triển

ổn định Phiên bản hiện tại PhoneGap 2.7.0 vừa được phát hành, cho phép nhàphát triển sử dụng HTML, CSS và JavaSript để viết và triển khai ứng dụng

Hình 86

: Hoạt động trong PhoneGap

Phát triển ứng dụng truyền thống sẽ giống như thế này:

Hhình 97: So sánhNếu bạn muốn pháttriển ứng dụng trên nhiềunền tảng khác nhau như

Trang 20

iOS, Android, Symbian, Windows, BlackBerry ????

Hình 108: Ứng dụng chạy trên các nền tảng khác nhau

i. PhoneGap có th tr thành ngể trở thành người bạn tốt nhất của bạn nếu bạn: ở thành người bạn tốt nhất của bạn nếu bạn: ười bạn tốt nhất của bạn nếu bạn: ạn tốt nhất của bạn nếu bạn: ốt nhất của bạn nếu bạn:i b n t t nh t c a b n n u b n:ất của bạn nếu bạn: ủa bạn nếu bạn: ạn tốt nhất của bạn nếu bạn: ếu bạn: ạn tốt nhất của bạn nếu bạn:

Trang 21

PhoneGap làm việc như thế nào?

Xem hình trên, một ứng dụng xây dựng bằng PhonGap sẽ gồm hai thành phầnchính yếu:

1 JavaScript Business Logic Part: thành phần điểu khiển về giao diện và chức

năng của chương trình

2 JavaScript Part: thành phần truy cập và điều khiển thiết bị (điện thoại hoặc

máy tính bảng)

Lấy minh họa về một ứng dụng như Facebook Thành phần chính đầu tiêncủa ứng dụng là trang đăng nhập và sau đó là tải các hình ảnh, các bài đăng.Tiếp theo, khi người dùng muốn chụp và đăng ảnh của mình lên Facebook Lúc

Trang 22

đó, ứng dụng sẽ gọi Camera API của PhoneGap để truy cập vào Camera điệnthoại, chụp hình, lưu hình và truy xuất hình đó Tiếp đó nữa, Ajax sẽ gọiFacebook Server để tải ảnh lên

: Sơ đồ ứng dụng PhoneGap làm việc:

Hhình 13: Sơ đồ ứng dụng của PhoneGap1

Hình 142: Giới thiệu tổng quan về PhoneGap

Trang 23

àm việc với Contacts (danh bạ điện thoại S)):

Danh bạ là một tính năng đáp ứng trên tất cả các dòng diện thoại thông minh.

Với PhoneGap, chúng ta có thể dễ dàng sử dụng những tính năng dưới đây cósẳn trong danh bạ điện thoại:

• Ø Tạo một liên hệ (contact) mới, sử dụng phương thức create()

• Ø Lưu một liên hệ, sử dụng phương thức save()

• Ø Tìm một liên hê, sử dụng phương thức find()

• Ø Sao chép một liên hệ, sử dụng phương thức clone()

• Ø Xóa một liên hệ, sử dụng phương thức remove()

Chẳng hạn, để tạo một tài khoản mới, chúng ta phải thông qua một đối tượngJavaScript Object Notation (JSON) là contacts.create(), đối tượng này chỉ đượclưu trữ trong bộ nhớ của ứng dụng Sau đó, để muốn lưu trữ xuống cơ sở dữliệu, chúng ta phải dùng phương thức save() PhoneGap API hỗ trợ các thuộctính khác nhau giúp hỗ trợ tìm kiếm (chẳng hạn như tên, bí danh, số điện thoại,e-mail, địa chỉ, sinh nhật, hình ảnh,…) Ta có thể tìm kiếm thông quacontacts.find() Tương tự như thế, đối với những hàm khác như clone(),remove(); chúng ta dễ dàng sử dụng và kết hợp những chức năng đó tùy vào ýtưởng khác nhau mà có tạo ra những ứng dụng như mong muốn ở các nhà pháttriển

Làm việc với Camera

thông qua đối tượng Camera có sẳn Thứ hai, bằng cách sử dụng Media CaptureAPI Cụ thể hơn là sử dụng qua phương thức camera.getPicture() Ta cũng cóthể lấy một bức ảnh từ thư viện hình ảnh, một đường dẫn lưu trữ tập tin

Làm việc với Geolocation:

Hầu hết các điện thoại thông minh đều hỗ trợ GPS, qua đó bạn có thể sử

dụng nó, hoặc cũng có thể sử dụng một số công nghệ khác để xác định vị tríthông qua kinh độ, vĩ độ PhoneGap Geolocation API sẽ cho phép chúng ta lấy

Trang 24

vị trí hiện tại qua kinh độ, vĩ độ (các yếu tố khác như độ cao, vẫn là điều có thể)cũng như sự thay đổi tọa độ Điều này rất hữu ích cho việc chúng ta muốn theodỏi sự duy chuyển của thiết bị.

Làm việc với Media File:

Trong PhoneGap, Media Capture API không chỉ đơn thuần là chụp một bức

ảnh (trong Media), chúng ta cũng có thể sử dụng nó để ghi lại âm thanh, hìnhảnh (audio, video) Thật vậy, Media Capture API cho phép ghi âm, ghi hình,chơi một tập tin media (bao gồm: play, pause, stop) từ một đường dẫn

Làm việc với tùy chọn lưu trữ:

Với HTML5, PhoneGap cũng hỗ trợ cơ sở dữ liệu Web SQL Và tất nhiên, khilàm việc cục bộ, SQLite cũng đủ làm cho ứng dụng của bạn trở nên phong phú

và hữu ích hơn

Điểm khó khăn khi sử dụng PhoneGap:

tốc độ chậm

quản lý các tiến trình(đồng bộ, bất đồng bộ), khả năng đồ họa hạn chế (3D)

phân giải khác nhau, và tùy thuộc vào độ hỗ trợ của trình HTML của thiết bị

vd các apps cho android trên các thiết bị khác nhau thì sẽ không rõ nét vì trênandroids hỗ trợ các bộ icon cho các độ phân giải khác nhau nên rõ nét hơn

track ball, tapping,rocker …

khi phát triển ứng dụng bị stuck là điều có thể xảy ra

Trang 25

2.3: Những ưu nhược điểm của PhoneGap

ư u Ưu u đi m ểm mạnh :

PhoneGap là một nền tảng mã nguồn mở dùng để phát triển ứng dụng mobile

cho cả iOS, Android, Windows Phone, BlackBerry, webOS, Bada, Symbiancùng lúc, viết một lần, biên dịch qua cloud và chạy trên nhiều nền tảngsmartphone khác nhau

Điểm nổi bật của PhoneGap đầu tiên ở đây như đã được đề cập trước đó là việc

sử dụng các ngôn ngữ chuẩn HTML, CSS và Javascript Và tất cả những gìchúng ta cần là tìm hiểu về các thành phần API mà PhoneGap đã cung cấp Tiếp

đó nữa, việc sử dụng PhoneGap giúp chúng ta có thể dễ dàng truy cập nhanhhơn vào các tính năng của điện thoại cung cấp như la bàn, camera,… Đặc biệt,nếu ứng dụng của ta cần kết nối tới các Web Service (thông thường là một WebService hoặc là một RESTful API), thì sẽ dễ dàng hơn với các bộ công cụ hỗ trợnhư jQuery, tạo sức mạnh hơn trong việc xử lý Ajax

Nhược điểm:

Mặc dù vậy, nhưng vẫn còn những vướn mắc trong việc xây dụng mộtứng dụng chạy trên mọi nền tảng Chẳng hạn, khi xây dựng một ứng dụng bằngPhoneGap viết cho iPhone, thì khi biên dịch cho các nền tảng khác như Android,Windows Phone,… cũng cần phải có những tinh chỉnh thích hợp để ứng dụng

đó có thể chạy hoàn toàn tính năng Cũng như việc phát triển ứng dụng thôngthường, thì ứng dụng sử dụng PhoneGap cũng cần phải quan tâm đến môitrường phát triển trên các nền tảng riêng biệt

Khó hoạt động trên các mobile browser cũ vì không hỗ trợ javascript và tốc

độ chậm

Việc quản lý các tài nguyên sâu của thiết bị không thực hiện được như: quản

lý các tiến trình(đồng bộ, bất đồng bộ), khả năng đồ họa hạn chế (3D)

Layout ứng dụng sẻ không phù hợp khi qua các màn hình thiết bị có độ phângiải khác nhau, và tùy thuộc vào độ hỗ trợ của trình HTML của thiết bị vd các

Trang 26

apps cho android trên các thiết bị khác nhau thì sẽ không rõ nét vì trên androids

hỗ trợ các bộ icon cho các độ phân giải khác nhau nên rõ nét hơn

Các bộ nhập liệu trên từng thiết bị không điều khiển được như: keypad, trackball, tapping,rocker …

Khó trong việc phát triển vì debug khó khăn

Tài liệu khá ít, Phonegap đang trên đà hoàn thiện vì thế nguy cơ tiềm ẩn khiphát triển ứng dụng bị stuck là điều có thể xảy ra

2.4: Cài đặt phonegap

Cách thiết lập cài đặt Phonegap cho Android Project bằng Eclipse

Yêu cầu cài đặt

Android SDK và Android ADT Plugin cho eclipse: Tải

Trang 27

Phonegap Framework : Tại bản phonegap mới nhất tại

Tạo project mới sử dụng Phonegap trong Eclipse IDE

 Mở Eclipse, chọn New > Android Project

Hình 153: Cách tạo 1 Android Project trong Eclipse IDE

Ngày đăng: 21/05/2016, 13:32

HÌNH ẢNH LIÊN QUAN

Hình 2: Sự phát triển của điện thoại di động - Nghiên cứu và phát triển ứng dụng tra cứu trao đổi thông tin tổng hợp cho sinh viên hàng hải trên nền tảng di động
Hình 2 Sự phát triển của điện thoại di động (Trang 7)
Hình 3: Ứng dụng di động - Nghiên cứu và phát triển ứng dụng tra cứu trao đổi thông tin tổng hợp cho sinh viên hàng hải trên nền tảng di động
Hình 3 Ứng dụng di động (Trang 8)
Bảng so sánh giữa - Nghiên cứu và phát triển ứng dụng tra cứu trao đổi thông tin tổng hợp cho sinh viên hàng hải trên nền tảng di động
Bảng so sánh giữa (Trang 17)
Hình 108: Ứng dụng chạy trên các nền tảng khác nhau - Nghiên cứu và phát triển ứng dụng tra cứu trao đổi thông tin tổng hợp cho sinh viên hàng hải trên nền tảng di động
Hình 108 Ứng dụng chạy trên các nền tảng khác nhau (Trang 19)
Hình 120: Kiến trúc PhoneGap - Nghiên cứu và phát triển ứng dụng tra cứu trao đổi thông tin tổng hợp cho sinh viên hàng hải trên nền tảng di động
Hình 120 Kiến trúc PhoneGap (Trang 20)
Hình 19: Code chèn để chạy PhoneGap - Nghiên cứu và phát triển ứng dụng tra cứu trao đổi thông tin tổng hợp cho sinh viên hàng hải trên nền tảng di động
Hình 19 Code chèn để chạy PhoneGap (Trang 35)
Hình 201: Chạy chương trình trên nền tảng Android7 - Nghiên cứu và phát triển ứng dụng tra cứu trao đổi thông tin tổng hợp cho sinh viên hàng hải trên nền tảng di động
Hình 201 Chạy chương trình trên nền tảng Android7 (Trang 37)
Hình2118: Hình chạy chương trình trên nền Android Emulator - Nghiên cứu và phát triển ứng dụng tra cứu trao đổi thông tin tổng hợp cho sinh viên hàng hải trên nền tảng di động
Hình 2118 Hình chạy chương trình trên nền Android Emulator (Trang 38)
Hình 263: Sơ đồ mức dưới đỉnh của tra cứu thông tin - Nghiên cứu và phát triển ứng dụng tra cứu trao đổi thông tin tổng hợp cho sinh viên hàng hải trên nền tảng di động
Hình 263 Sơ đồ mức dưới đỉnh của tra cứu thông tin (Trang 50)
Hình 285: Sơ đồ dưới đỉnh của tìm kiếm. - Nghiên cứu và phát triển ứng dụng tra cứu trao đổi thông tin tổng hợp cho sinh viên hàng hải trên nền tảng di động
Hình 285 Sơ đồ dưới đỉnh của tìm kiếm (Trang 52)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w