Tài liệu khóa luận tốt nghiệp khóa 20092014 Tác giả: Nguyễn Than Hai Đề tài: Tìm hiểu và xây dựng ứng dụng đa nền tảng dựa trên framework PhoneGap Nội dung chính: CHƯƠNG 1: Tìm hiểu về framework PhoneGap CHƯƠNG 2: Tìm hiểu về kiến trúc dịch vụ web CHƯƠNG 3: Phân tích ứng dụng chia sẻ học ngoại ngữ CHƯƠNG 4: Xây dựng ứng dụng CHƯƠNG 5: Triển khai ứng dụng
TRƯỜNG ĐẠI HỌC ĐÀ LẠT KHOA CÔNG NGHỆ THÔNG TIN NGUYỄN THANH HAI – 0912687 TÌM HIỂU VÀ XÂY DỰNG ỨNG DỤNG ĐA NỀN TẢNG DỰA TRÊN FRAMEWORK PHONEGAP KHÓA LUẬN TỐT NGHIỆP KỸ SƯ CÔNG NGHỆ THÔNG TIN GIÁO VIÊN HƯỚNG DẪN LÊ NGỌC LUYỆN Báo cáo khóa luận tốt nghiệp Đà Lạt, Năm 2013 Trang2 Báo cáo khóa luận tốt nghiệp NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN Đà Lạt, ngày….tháng…. năm 2013 Giáo viên hướng dẫn [Ký và ghi rõ họ tên] Trang3 Báo cáo khóa luận tốt nghiệp NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN Khóa luận đáp ứng yêu cầu của Khóa luận kỹ sư Công nghệ thông tin. Đà Lạt, ngày….tháng…. năm 2013 Giáo viên phản biện [Ký và ghi rõ họ tên] Trang4 Báo cáo khóa luận tốt nghiệp LỜI CAM KẾT Tôi xin cam đoan rằng nội dung bài báo cáo nghiên cứu về đề tài “Tìm hiểu và xây dựng ứng dụng đa nền tảng dựa trên framework PhoneGap” là do chính chúng tôi Nguyễn Thanh Hai viết ra với sự hướng dẫn của giáo viên hướng dẫnkỹ sư Lê Ngọc Luyện. Nội dung của bài nghiên cứu và sản phẩm là do chính chúng tôi viết ra, trong hệ thống chúng tôi có sử dụng một số thư viện mã nguồn mở và riêng một số công cụ của Microsoft được sử dụng với bản quyền MSDN Việt Nam cung cấp. Chúng tôi hoàn toàn chịu trách nhiệm trước nhà trường về bài báo cáo và sản phẩm của mình. Đà Lạt, tháng 12 năm 2013 Sinh viên thực hiện Nguyễn Thanh Hai Trang5 Báo cáo khóa luận tốt nghiệp LỜI CẢM ƠN Em xin chân thành cảm ơn ban giám hiệu, quý thầy cô trường Đại học Đà Lạt, đặc biệt là các thầy cô trong khoa Công nghệ thông tin đã tận tình giảng dạy và truyền đạt trang bị cho em những kiến thức cần thiết và bổ ích trong suốt những năm tháng học tập tại trường. Em cũng xin chân thành cảm ơn thầy Lê Ngọc Luyện đã tận tình quan tâm hướng dẫn, giúp đỡ chúng em trong suốt thời gian làm luận văn vừa qua. Con xin chân thành cảm ơn sâu sắc và sự kính trọng đến cha mẹ, gia đình đã nuôi dạy chúng con trưởng thành như ngày hôm nay. Tôi xin chân thành cảm ơn sự giúp đỡ, động viên, khích lệ, nhận xét, đóng góp ý kiến của anh chị, bạn bè trong suốt thời gian thực hiện khóa luận này. Trong quá trình làm em chắc chắn sẽ có những thiếu sót, sai lầm mong thầy cô góp ý để em có thể hoàn thiện mình hơn. Em xin chân thành cảm ơn! Đà Lạt, tháng 12 năm 2013 Sinh viên thực hiện Nguyễn Thanh Hai Trang6 Báo cáo khóa luận tốt nghiệp TRƯỜNG ĐẠI HỌC ĐÀ LẠT KHOA CÔNG NGHỆ THÔNG TIN ĐỀ CƯƠNG NGHIÊN CỨU KHÓA LUẬN TỐT NGHIỆP Đề tài: TÌM HIỂU VÀ XÂY DỰNG ỨNG DỤNG ĐA NỀN TẢNG DỰA TRÊN FRAMEWORK PHONEGAP Chuyên ngành: Kỹ thuật phần mềm Sinh viên thực hiện: Nguyễn Thanh Hai MSSV: 0912687 Khóa: 2009– 2014 Giáo viên hướng dẫn:KS. Lê Ngọc Luyện 1. Mục tiêu đề tài Ngày nay với sự ra đời và phát triển vũ bảo của hàng loạt nền tảng di động, việc phát triển ứng dụng đa nền tảng được xem là cơ hội và ưu thế của những công ty về phần mềm. Với Framework PhoneGap người lập trình có thể xây dựng nhanh chóng các ứng dụng có thể chạy trên được nhiều nền tảng hệ điều hành di động khác nhau như Android, iOS, Window Phone, BlackBerry… Từ những lợi ích như vậy đề tài tập trung tìm hiểu kiến trúc của nền tảng PhoneGap và tiến hành xây dựng ứng dụng chia sẻ học ngoại ngữ nhằm nâng cao khả năng học hỏi, trao đổi theo nhóm, nâng cao hiểu quả học tập. 2. Nội dung đề tài Tìm hiểu về framework PhoneGap o Cài đặt cấu hình o Kiến trúc ứng dụng PhoneGap o Phương thức xây dựng phát triển ứng dụng vói PhoneGap Trang7 Báo cáo khóa luận tốt nghiệp Tìm hiểu về kiến trúc dịch vụ web o Tổng quan về truyền thông giao tiếp trên nền dịch vụ web o Mô hình kiến trúc trong dịch vụ web và ứng dụng đa nền tảng Ứng dụng chia sẻ học ngoại ngữ o Phân tích chức năng và đối tượng sử dụng ứng dụng Đối tượng sử dụng ứng dụng Chức năng của ứng dụng Phân tích đưa ra hệ quản lý cơ sơ dữ liệu o Xây dựng ứng dụng Xây dựng giao diện ứng dụng Xây dựng hệ thống từ vựng tiếng anh kèm hình ảnh Xây dựng chức năng tạo nhóm Xây dựng chức năng chia sẻ, trao đổi, bình luận nội dung học theo từng nhóm o Triển khai ứng dụng Cài đặt triển khai thử nghiệm ứng dụng trên các nền tảng Android, IOS, Window Phone. 3. Phần mềm và công cụ sử dụng PhoneGap Framework 2.8.1 HTML, CSS, Java Script Microsoft Visual Studio 2012 Eclipse Classic 4.2.2 Xcode Windows Phone SDK Android SDK iOS SDK Adobe Photoshop CS6 4. Dự kiến kết quả Kiến thức về PhoneGap framework Xây dựng thành công ứng dụng chia sẽ học tiếng anh và chạy tốt trên các nền tảng Window phone 8, Android, iOS 5. Tài liệu tham khảo chính [1] Adrian Kosmaczeuski, Mobile JavaScript Application Development, O'Reilly, 2012 [2] Dino Esposito, Architecting Mobile Solutions for the Enterprise, O'Reilly, 2012 • [3] Jon Flanders, Restful .NET, O‘Reilly, 2008 • [4] Atul Gupta, Sudhanshu Hate & Andrew Siemer, Asp.NET 4 Social Networking, 2011 Trang8 Báo cáo khóa luận tốt nghiệp Đà Lạt, ngày……tháng……năm 2013 Giáo viên hướng dẫn SV Thực hiện (Ký tên) (Ký tên) KS Lê Ngọc Luyện Nguyễn Thanh Hai Trưởng khoa Tổ trưởng Bộ môn (Ký tên) (Ký tên) Th.S Trần Tuấn Minh Th.S Nguyễn Minh Hiệp Trang9 Báo cáo khóa luận tốt nghiệp MỤC LỤC CHƯƠNG 1: Tìm hiểu về framework PhoneGap 16 1.1 Tổng quan về Phonegap 16 1.2 Tại sao sử dụng PhoneGap? 17 1.3 Kiến trúc PhoneGap 18 1.3.1 Tổng quan kiến trúc PhoneGap 18 1.3.2 Hệ thống API PhoneGap 19 1.4 Cài đặt cấu hình PhoneGap cho windows phone 8 48 1.4.1 Yêu cầu cấu hình 48 1.4.2 Cài đặt SDK + Cordova 49 1.4.3 Tạo project mới sử dụng PhoneGap trong Visual studio 2012 51 1.4.4 Tạo project mẫu HelloWord 53 1.4.5 Chạy chương trình trên nền Windows phone Emulator 53 CHƯƠNG 2: Tìm hiểu về kiến trúc dịch vụ web 56 2.1 Tổng quan về truyền thông giao tiếp trên nền dịch vụ web 56 2.2 Giao thức truyền thông trong dịch vụ web 57 2.2.1 SOAP 57 2.2.2 REST 58 2.3 Ứng dụng của mô hình dịch vụ web 59 2.4 Mô hình kiến trúc trong dịch vụ web và ứng dụng đa nền tảng 59 CHƯƠNG 3: Phân tích ứng dụng chia sẻ học ngoại ngữ 61 3.1 Mục đích của ứng dụng 61 3.2 Đối tượng sử dụng ứng dụng 61 3.3 Xác định yêu cầu hệ thống 61 3.3.1 Xác định yêu cầu chức năng 61 3.3.2 Xác định yêu cầu phi chức năng 65 3.4 Danh sách ca sử dụng của ứng dụng 66 3.5 Sơ đồ Ca sử dụng 67 3.5.1 Sơ đồ tổng quát hệ thống 67 3.5.2 Sơ đồ hệ thống quản trị 70 3.5.3 Hệ thống học tập 73 3.6 Danh sách quy định 79 Trang10 [...]... ứng dụng bản ngữ(native), có thể chia sẻ lên các kho ứng dụng; sử dụng công nghệ web tiêu chuẩnHTML, CSS, Javascripts Kiểu ứng dụng đa nền tảng xứng đáng là một sự lựa chọn cho nhà lập trình củng như khách hàng Hiện nay có rất nhiều Framework hỗ trợ phát triển ứng dụng đa nền tảng như PhoneGap, Appspresso, AppFurnace, Application Craft, iUI, NS Basic/App Studio, WorkLight… Vậy tại sao lại sử dụng PhoneGap? ... vụ PhoneGap Build” đã được ra mắt và cho phép nhà lập trình tải lên mã nguồn của họ tới 1 hệ thống biên dịch đám mây , và nhờ đó biên dịch ra các ứng dụng tương ứng cho từng nền tảng hệ điều hành được hỗ trợ Trang16 Báo cáo khóa luận tốt nghiệp Hình 1-1: Tổng quan mô hình xây dựng ứng dụng với PhoneGap 1.2 Tại sao sử dụng PhoneGap? Với những ưu thế vượt trội như viết một lần, chạy trên nhiều nền tảng; ... VẼ Trang15 Báo cáo khóa luận tốt nghiệp CHƯƠNG 1: TÌM HIỂU VỀ FRAMEWORK PHONEGAP 1.1 Tổng quan về Phonegap Phonegap là 1 framework mã nguồn mở dùng cho việc xây dựng các ứng dụng native Applications đa nền tảng bằng cách sử dụng các công nghệ web tiêu chuẩn như HTML, CSS, Javascripts.Ban đầu là một dự án mã nguồn mở của Nitobi giúp việc phát triển ứng dụng dễ dàng hơn đối với mọi hệ điều hành Phát triển... năng tìm kiếm bài học 109 3.8.53 Sơ đồ tuần tự của chức năng xem chi tiết bài học .109 3.8.54 Sơ đồ tuần tự của chức năng phát âm bài học 110 CHƯƠNG 4: Xây dựng ứng dụng 111 4.1 Xây dựng giao diện ứng dụng 111 4.2 Xây dựng hệ thống từ vựng tiếng anh kèm hình ảnh 119 4.3 Xây dựng nhóm chức năng cho người quản lý 120 4.4 Xây dựng nhóm chức năng cho người sử dụng ... application framework1 1 http://en.wikipedia.org/wiki/Multiple_phone_web_based_application _framework Trang17 Báo cáo khóa luận tốt nghiệp 1.3 Kiến trúc PhoneGap 1.3.1 Tổng quan kiến trúc PhoneGap Hình 1-2: Kiến trúc ứng dụng PhoneGap Framework PhoneGap chủ yếu là một thư viện Javascript cho phép các ứng dụng viết bằng HTML/Javascript truy cập sâu vào những tính năng của thiết bị .Framework PhoneGap cũng... này đã được phê duyệt Tuy được tạo ra bởi Nitobi nhưng đằng sau Phonegap là sự đóng góp của rất nhiều tổ chức lớn như IBM, RIM và Microsoft Phonegap cũng khẳng định rằng: Họ có một cộng đồng phát triển hấp đẫn, hoạt động mở, minh bạch và hợp tác Framework PhoneGap được sử dụng bởi một số nền tảng ứng dụng di động như Worklight , Convertigo và appMobi như là xương sống của động cơ phát triển điện thoại... cũng là một thành phần bản ngữ, do đó các ứng dụng được viết bằng PhoneGap cũng có thể làm việc như một ứng dụng viết bằng ngôn ngữ chính thống Xem hình trên, một ứng dụng xây dựng bằng PhonGap sẽ gồm hai thành phần chí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ị Trang18 Báo cáo... Francisco, PhoneGap tiếp tục giành chiến thắng giải thưởng Choice Award tại O’Reilly Media 2009 ở hội nghị Web 2.0 tháng 4 năm 2009 ( 4 sản phẩm khác cũng dành chiến thắng bao gồm: 80 legs, zealLog, Bantam Network, Dubmenow) mở ra hướng đi mới cho các nhà phát triển ứng dụng web Kể từ đó có 600.000 lượt tải về và hàng ngàn ứng dụng được phát triển dựa trên Phonegap Apple đã xác nhận rằng Framework này... 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 ta dễ dàng sử dụng và kết hợp những chức năng này 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át triển Lưu ý rằng các phương thức... chạy nền( ví dụ như chuyển sang chạy một ứng dụng khác) • resume: khi người dùng chuyển một ứng dụng từ trạng thái chạy nền sang chạy chính trên màn hình Hỗ trợ trên : o Android o BlackBerry WebWorks (OS 5.0 trở lên) o iOS Trang30 Báo cáo khóa luận tốt nghiệp o Windows Phone 7 and 8 • online: khi ứng dụng chuyển sang trạng thái trực tuyến( kết nối internet) Hỗ trợ trên : o Android o BlackBerry WebWorks . Tìm hiểu về framework PhoneGap 16 1.1 Tổng quan về Phonegap 16 1.2 Tại sao sử dụng PhoneGap? 17 1.3 Kiến trúc PhoneGap 18 1.3.1 Tổng quan kiến trúc PhoneGap 18 1.3.2 Hệ thống API PhoneGap 19 1.4. trúc ứng dụng PhoneGap Framework PhoneGap chủ yếu là một thư viện Javascript cho phép các ứng dụng viết bằng HTML/Javascript truy cập sâu vào những tính năng của thiết bị .Framework PhoneGap cũng. 83 Trang14 Báo cáo khóa luận tốt nghiệp DANH MỤC HÌNH VẼ Trang15 Báo cáo khóa luận tốt nghiệp CHƯƠNG 1: TÌM HIỂU VỀ FRAMEWORK PHONEGAP 1.1 Tổng quan về Phonegap Phonegap là 1 framework mã nguồn mở dùng cho