Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 58 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
58
Dung lượng
1,9 MB
Nội dung
ĐẠI HỌC ĐÀ NẴNG TRƢỜNG ĐẠI HỌC SƢ PHẠM KHOA TIN HỌC Tel (84-511)3841323 - 3841513, Fax (84-511) 3842953 Website: www.ued.edu.vn E-mail: Education@dng.vnn.vn KHÓA LUẬN TỐT NGHIỆP NGÀNH CỬ NHÂN CÔNG NGHỆ THÔNG TIN ĐỀ TÀI: NGHIÊN CỨU VÀ PHÁT TRIỂN ỨNG DỤNG TRÊN NỀN ANDROID Sinh viên : Nguyễn Tấn Quốc Lớp : 09CNTT1 Giáo viên hƣớng dẫn : ThS Lê Văn Mỹ Đà Nẵng, tháng năm 2013 Nghiên cứu phát triển ứng dụng hệ điều hành Android LỜI CẢM ƠN Đầu tiên em xin chân thành cảm ơn thầy cô trƣờng Đại học Sƣ phạm Đà Nẵng, truyền đạt kinh nghiệm quý báu cho chúng em năm học vừa qua Đặc biệt xin chúng em xin chân thành cảm ơn thầy Lê Văn Mỹ nhiệt tình hƣớng dẫn em hoàn thành đề tài luận văn tốt nghiệp Tuy nhiên, q trình hồn thành đề tài khơng thể tránh khỏi thiếu sót Em mong nhận đƣợc nhiều đóng góp q thầy để đề tài đƣợc hoàn thiện Em xin chân thành cảm ơn Đà Nẵng, tháng 5/2013 Sinh viên thực hiện: Nguyễn Tấn Quốc SVTH: Nguyễn Tấn Quốc – Lớp 09CNTT1 Trang Nghiên cứu phát triển ứng dụng hệ điều hành Android LỜI CAM ĐOAN Tôi xin cam đoan: Những nội dung luận văn thực hướng dẫn trực tiếp thầy thầy Lê Văn Mỹ Mọi chép không hợp lệ, vi phạm quy chế đào tạo, hay gian trá, chúng tơi xin chịu hồn tồn trách nhiệm Sinh viên thực Nguyễn Tấn Quốc SVTH: Nguyễn Tấn Quốc – Lớp 09CNTT1 Trang Nghiên cứu phát triển ứng dụng hệ điều hành Android MỤC LỤC DANH MỤC CÁC HÌNH DANH MỤC CÁC BẢNG DANH MỤC CÁC TỪ VIẾT TẮT MỞ ĐẦU 10 Lý chọn đề tài 10 Mục đích nghiên cứu 10 Đối tƣợng phạm vi nghiên cứu 10 3.1 Đối tƣợng nghiên cứu 10 3.2 Phạm vi nghiên cứu 10 Phƣơng pháp nghiên cứu 10 4.1 Cơ sở lý thuyết 11 4.2 Công cụ thiết kế chƣơng trình 11 4.3 Dự kiến kết đạt đƣợc 11 Ý nghĩa khoa học thực tiễn đề tài 11 Cấu trúc luận văn 12 Chƣơng 1: CƠ SỞ LÝ THYẾT 13 1.1 Tổng quan Android 13 1.1.1 Android gì? 13 1.1.2 Lịch sử Android 13 1.1.3 Nền tảng Android 14 1.1.4 Kiến trúc ứng dụng Android 17 1.1.5 Một số gói Android 22 1.2 Cài đặt SDK 23 1.2.1 Giới thiệu SDK 23 1.2.2 Cài đặt Plugin cho Eclipse 24 1.3 Giới thiệu Dịch vụ Web (Web service) 26 1.3.1 Giới thiệu công nghệ 26 1.3.2 Đặc điểm Dịch vụ Web 26 1.3.3 Các thành phần Dịch vụ Web 28 Chƣơng 2: PHÂN TÍCH THIẾT KẾ HỆ THỐNG 33 SVTH: Nguyễn Tấn Quốc – Lớp 09CNTT1 Trang Nghiên cứu phát triển ứng dụng hệ điều hành Android 2.1 Thiết kế thành phần ứng dụng 33 2.2 Phân tích thiết kế hệ thống 36 2.3 Giải pháp xây dựng ứng dụng 40 2.3.1 Phân tích thiết kế CSDL 40 2.3.2 Các kỹ thuật sử dụng ứng dụng 42 2.4 Thiết kế mã nguồn 45 CHƢƠNG 3: CÀI ĐẶT CHƢƠNG TRÌNH VÀ KẾT QUẢ THỰC HIỆN 48 3.1 Cài đặt chƣơng trình 48 3.2 Kết chƣơng trình 49 KẾT LUẬN 56 Kết đạt đƣợc 56 1.1 Về lý thuyết 56 1.2 Về thực nghiệm 56 Hƣớng phát triển đề tài 57 TÀI LIỆU THAM KHẢO 58 SVTH: Nguyễn Tấn Quốc – Lớp 09CNTT1 Trang Nghiên cứu phát triển ứng dụng hệ điều hành Android DANH MỤC CÁC HÌNH Hình 1 Biểu tƣởng hệ điều hành Android 13 Hình Kiến trúc hệ điều hành Android 15 Hình Các thành phần ứng dụng Android 18 Hình Vịng đời ứng dụng Android 19 Hình Hình ảnh device emulator 23 Hình Biểu diễn bƣớc cài đặt plugin 24 Hình Hình biểu diễn địa trang web cài đặt plugin 25 Hình Hình biểu diễn qua trình cài đặt tự động plugin 25 Hình Mơ hình tổng quát ứng dụng 33 Hình 2 Sơ đồ luồng thành phần Du lịch 33 Hình Sơ đồ luồng thành phần Ẩm thực 34 Hình Sơ đồ luồng thành phần Khách sạn 34 Hình Sơ đồ luồng thành phần Taxi 35 Hình Sơ đồ luồng thành phần Mua sắm 35 Hình Sơ đồ luồng thành phần ATM 36 Hình Mơ hình Use Case Khạch sạn 36 Hình Mơ hình Use Case Ẩm thực 37 Hình 10 Mơ hình Use Case Mua Sắm 37 Hình 11Mơ hình Use Case Du lịch 38 Hình 12 Mơ hình Use Case ATM 38 Hình 13 Mơ hình Use Case Taxi 39 Hình 14 Sơ đồ triển khai ứng dụng 39 Hình 15 Các lớp packet Map 45 Hình 16 Tổng hợp packet thƣ mục ứng dụng 45 SVTH: Nguyễn Tấn Quốc – Lớp 09CNTT1 Trang Nghiên cứu phát triển ứng dụng hệ điều hành Android Hình Giao diện kho ứng dụng Google Play 48 SVTH: Nguyễn Tấn Quốc – Lớp 09CNTT1 Trang Nghiên cứu phát triển ứng dụng hệ điều hành Android DANH MỤC CÁC BẢNG Bảng 2.1 Cấu trúc bảng ATM 40 Bảng 2.2 Cấu trúc bảng Ẩm thực 40 Bảng 2.3 Cấu trúc bảng Khách sạn 41 Bảng 2.4 Cấu trúc bảng Mua sắm 41 Bảng 2.5 Cấu trúc bảng Taxi 41 Bảng 2.6 Cấu trúc bảng Du lịch 41 \ SVTH: Nguyễn Tấn Quốc – Lớp 09CNTT1 Trang Nghiên cứu phát triển ứng dụng hệ điều hành Android DANH MỤC CÁC TỪ VIẾT TẮT APK : Android application package file API : Application Programming Interface SDK: Software Development Kit ADT: Adroid Development Tool SVTH: Nguyễn Tấn Quốc – Lớp 09CNTT1 Trang Nghiên cứu phát triển ứng dụng hệ điều hành Android MỞ ĐẦU Lý chọn đề tài Ngày nhu cầu đời sống ngƣời ngày đƣợc nâng cao, có hiểu biết rộng rãi hơn, công nghệ tính điện thoại đƣợc ngƣời ý đặt mối qua tâm Thêm vào nhu cầu giải trí,du lịch ngƣời đƣợc quan tâm, xuất phát từ nhu cầu ứng dụng di động trở thành công cụ thiếu sống ngƣời thời đại Từ thƣc tế đó, với kiến thức học kết hợp với tảng Android di động em chọn đề tài tốt nghiệp cho là: Nghiên cứu phát triển ứng dụng điện thoại di động Android: “ Sổ tay du lịch Đà Nẵng ” Mục đích nghiên cứu Với phát triển cơng nghệ nhƣ hiên nay, giới đƣợc ví giới cơng nghệ thơng tin Thêm vào nhu cầu du lịch ngƣời ngày tăng lên, địa điểm vị trí đồ giấy khơng cịn tiện lợi Android đời làm tăng khả tiện dụng đƣa đồ, địa điểm du lịch vào điện thoại thơng minh Đối tƣợng phạm vi nghiên cứu 3.1 Đối tƣợng nghiên cứu Android hệ điều hành mở cho tảng di động chọn lựa đắn ngƣời tiêu dùng Với đề tài chúng em nghiên cứu công nghệ, tảng ứng dụng Android thiết bị di động kỹ thuật để xây dựng ứng dụng 3.2 Phạm vi nghiên cứu Phạm vi nghiên cứu đề tài kiến thức liên quan đến Android kĩ thuật liên quan đến mạng Trên sở xây dựng thành cơng ứng dụng “Sổ tay du lịch Đà Nẵng” Android Đây ứng dụng thay đồ giấy, giúp du khách dễ dàng tra cứu thơng tin, tìm đƣờng đến điểm du lịch, nhà hàng, khách sạn, v/v… Phƣơng pháp nghiên cứu SVTH: Nguyễn Tấn Quốc – Lớp 09CNTT1 Trang 10 Nghiên cứu phát triển ứng dụng hệ điều hành Android while ((length = myInput.read(buffer)) > 0) { myOutput.write(buffer, 0, length); } myOutput.flush(); myOutput.close(); myInput.close(); } Đầu tiên tạo output tới chỗ lƣu CSDL ứng dụng Android, sau đọc tệp “DaNangTravel.db” từ thƣ mục assets cho vào input, tạo vòng lặp lƣu theo byte từ input sang output cuối input Hồn thành phƣơng thức ta có đƣợc CSDL cho ứng dụng xCheck network public class Context public checknetwork { context ; ch ecknetwork(Context context) { this context = context; // TODO Auto - generated constructor stub } public boolean isOnline() { ConnectivityManager connectivity = (ConnectivityManager) context getSystemService(Context CONNECTIVITY_SERVICE); if (connectivity == null ) { return false ; } else { NetworkInfo[] info = connectivity.getAllNetworkInfo(); if (info != null ) { for ( int i = 0; i < info length ; i++) { if (info[i].getState() == NetworkInfo.State CONNECTED ){ return tru e; } } } } return false ; } } Kiểm tra tất cổng kêt nối internet: 3G, Wifi, GPRS SVTH: Nguyễn Tấn Quốc – Lớp 09CNTT1 Trang 44 Nghiên cứu phát triển ứng dụng hệ điều hành Android xSử dụng API Google Map: tính khoảng cách, tìm đƣờng ngắn nhất, hiển thị điểm đứng Hình 15 Các lớp packet Map 2.4 Thiết kế mã nguồn Để dễ dàng quản lý source code lập trình em chia ứng dụng thành 12 gói khác Hình 16 Tổng hợp packet thư mục ứng dụng x com.exam.danangtranel.adapter SVTH: Nguyễn Tấn Quốc – Lớp 09CNTT1 Trang 45 Nghiên cứu phát triển ứng dụng hệ điều hành Android Gói chứa lớp để xây dựng thành phần listview danh mục Mua sắm, Du lịch, Ẩm thực, Taxi, Khách sạn x com.exam.danangtranel.filed Gói chứa lớp đối tƣởng danh mục x com.example.danangtravel Gói chứa lớp phƣơng thức đồ , mạng , CSDL … x com.exam.danangtranel.Shopping Gói chứa thành phần giao diện Shopping x com.example.danangtravel.ATM Gói chứa thành phần giao diện ATM x com.example.danangtravel.GioiThieu Gói chứa giao diện Activity giới thiệu x com.example.danangtravel.Hotel Gói chứa thành phần giao diện Khách sạn x com.example.danangtravel.Restaurant Gói chứa thành phần giao diện Ẩm thực x com.example.danangtravel.Taxi Gói chứa thành phần giao diện Taxi x com.example.danangtravel.Travel Gói chứa thành phần giao diện Du lịch x com.example.danangtravel.map Gói chứa thành phần phƣơng thức đồ, tính khoảng cách x com.example.danangtravel.pager SVTH: Nguyễn Tấn Quốc – Lớp 09CNTT1 Trang 46 Nghiên cứu phát triển ứng dụng hệ điều hành Android Gói chứa thành phần giao diện ứng dụng src: chứa mã nguồn class java ứng dụng, gói đáp ứng cho chức assets: chứa hình ảnh khách sạn, ẩm thực,du lịch, phân theo mục chứa tệp CSDL “DaNangTravel.sqlite” res/drawable: chứa tệp hình ảnh, liệu dùng cho ứng dụng res/layout: chứa layout của ứng dụng res/values: chứa style chuỗi dùng cho tạo theme ứng dụng layouts res/layout SVTH: Nguyễn Tấn Quốc – Lớp 09CNTT1 Trang 47 Nghiên cứu phát triển ứng dụng hệ điều hành Android CHƢƠNG 3: CÀI ĐẶT CHƢƠNG TRÌNH VÀ KẾT QUẢ THỰC HIỆN 3.1 Cài đặt chƣơng trình Có nhiều cách khác để cài đặt file APK thiết bị Android Một số cách cài đặt file APK nhƣ sau: truy cập Google Play để tải cài ứng dụng APK, tải file APK thông qua trình duyệt web điện thoại lƣu file vào nhớ trong/thẻ nhớ, tải file APK từ Google Play xuống máy tính sau chép file APK vào nhớ trong/thẻ nhớ cài đặt Do có nhiều cách cài đặt APK khác nên tùy tình kinh nghiệm, lựa chọn cách phù hợp Truy cập Google Play để tải ứng dụng: Hình Giao diện kho ứng dụng Google Play Đây cách nhất, nhanh dễ dàng nên thực đƣợc Chỉ cần bấm vào biểu tƣợng Google Play (hoặc CH Play), đăng nhập tài khoản Gmail (nếu chƣa đăng nhập trƣớc đó) nhìn thấy giao diện kho ứng dụng Google Tiếp theo nhập từ khóa cần tìm kiếm vào Search nhấn nút Search bên cạnh để tìm kiếm ứng dụng có từ khóa liên quan Chọn ứng dụng cần cài đặt, nhấn nút "Cài đặt" đồng ý tải xuống, trình tải bắt đầu sau hồn tất Để chạy ứng dụng, mở menu ứng dụng tìm tới ứng dụng cài đặt để chạy Cách tải đơn giản tiện lợi nhƣng có hạn chế SVTH: Nguyễn Tấn Quốc – Lớp 09CNTT1 Trang 48 Nghiên cứu phát triển ứng dụng hệ điều hành Android không lƣu lại đƣợc file APK cho lần cài đặt sau máy chƣa Root (máy Root lƣu lại file APK với trợ giúp từ phần mềm quản lý file nhƣ File Expert) Tải file APK qua trình duyệt web điện thoại Cách đơn giản nhƣng cần phải thao tác nhiều bƣớc so với cách Bạn kết nối internet, mở trình duyệt web vào Google search với từ khóa "tên ứng dụng apk" để tìm link tải file APK đƣợc chia sẻ mạng Các file APK sau tải đƣợc lƣu vào nhớ trong/thẻ nhớ máy, bạn dùng trình quản lý file chạy Android nhƣ File Expert, Astro File Manager hay OI File Manager để mở thƣ mục chứa file APK tải cài đặt bình thƣờng Tải file APK từ máy tính Chúng ta tải file APK từ Google Play máy tính theo hƣớng dẫn bên tải qua trình duyệt web Sau tải xong, bạn kết nối thiết bị Android với máy tính qua USB cable, bật chế độ USB Mass Storage điện thoại, mở My Computer chép file APK vào nhớ trong/thẻ nhớ máy Tiếp theo bạn dùng trình quản lý file Android nhƣ Astro để cài đặt 3.2 Kết chƣơng trình Danh mục tổng quát Khách sạn SVTH: Nguyễn Tấn Quốc – Lớp 09CNTT1 Trang 49 Nghiên cứu phát triển ứng dụng hệ điều hành Android SVTH: Nguyễn Tấn Quốc – Lớp 09CNTT1 Trang 50 Nghiên cứu phát triển ứng dụng hệ điều hành Android Du lịch SVTH: Nguyễn Tấn Quốc – Lớp 09CNTT1 Trang 51 Nghiên cứu phát triển ứng dụng hệ điều hành Android Ẩm thực SVTH: Nguyễn Tấn Quốc – Lớp 09CNTT1 Trang 52 Nghiên cứu phát triển ứng dụng hệ điều hành Android Mua sắm SVTH: Nguyễn Tấn Quốc – Lớp 09CNTT1 Trang 53 Nghiên cứu phát triển ứng dụng hệ điều hành Android Taxi ATM SVTH: Nguyễn Tấn Quốc – Lớp 09CNTT1 Trang 54 Nghiên cứu phát triển ứng dụng hệ điều hành Android Bản đồ SVTH: Nguyễn Tấn Quốc – Lớp 09CNTT1 Trang 55 Nghiên cứu phát triển ứng dụng hệ điều hành Android KẾT LUẬN Xây dựng ứng dụng cho di động lĩnh vực không mẻ với sinh viên nhƣng đầy khó khăn thách thức Nhƣng niềm đam mê, hứng thú u thích lập trình ứng dụng cho di động để đƣa giới giải trí vào tầm tay Sau thời gian tìm hiểu, nghiên cứu đề tài, chúng em đạt đƣợc kết sau: Kết đạt đƣợc 1.1 Về lý thuyết x Qua việc nghiên cứu thực đề tài, em hiểu rõ nắm bắt đƣợc công nghệ Android, công nghệ dành cho thiết di động đƣợc phát triển google x Biết cách sử dụng Eclipse plugin để phát triển ứng dụng Android x Biết kĩ thuật để làm việc với API Google maps x Biết cách giải vấn đề đặt x Học thêm đƣợc nhiều kiến thức lập trình hƣớng đối tƣợng x Biết cách sử dụng photoshop để thiết kế ảnh 1.2 Về thực nghiệm Dựa vào yêu cầu đề tài, em xây dựng đƣợc ứng dụng có tính sau: x Giao diện đẹp mắt, đơn giản, dễ sử dụng x Tạo đƣợc sổ tay địa điểm cho khách du lịch tham khảo x Chƣơng trình đáp ứng đƣợc yêu cầu đề SVTH: Nguyễn Tấn Quốc – Lớp 09CNTT1 Trang 56 Nghiên cứu phát triển ứng dụng hệ điều hành Android x Chƣơng trình chạy đƣợc thiết bị di động sử dụng hệ điều hành Android Tuy nhiên, thời gian có hạn nên chƣơng trình cịn nhiều hạn chế nhƣ: x Các chức chƣơng trình cịn thiếu x Chƣa tận dụng hết mạnh công nghệ Andoid x Chƣa kiểm thử thiết bị di động khác sử dụng hệ điều hành Andoid Hƣớng phát triển đề tài x Tiếp tục hoàn thiện để chƣơng trình hoạt động tốt x Cải thiện dung lƣợng ứng dụng x Các hình ảnh liệu đƣợc đƣa vào lƣu trữ server x Hồn thiện tốt chức chƣơng trình SVTH: Nguyễn Tấn Quốc – Lớp 09CNTT1 Trang 57 TÀI LIỆU THAM KHẢO Tiếng việt [1] Đoàn Văn Ban (2005), Lập trình hướng đối tượng với Java, NXB Khoa học kỹ thuật Tiếng Anh [2] Mark L Murphy (2009), Beginning Android, Apress [3] Frank Ableson (2009), Unlocking Android, Dick Wall Trang Web [4] http://developers.google.com [5] http://stackoverflow.com [6] http://vietandroid.com [7] http://www.edu4java.com [8] http://wikipedia.org [9] http://android4vn.com ... với tảng Android di động em chọn đề tài tốt nghiệp cho là: Nghiên cứu phát triển ứng dụng điện thoại di động Android: “ Sổ tay du lịch Đà Nẵng ” Mục đích nghiên cứu Với phát triển cơng nghệ nhƣ... Nghiên cứu phát triển ứng dụng hệ điều hành Android 4.1 Cơ sở lý thuyết Tìm hiểu cơng nghệ tảng di động mở Android Google, cách thức sử dụng GoogleMap, nhằm xây dựng thành công ứng dụng di động Android. .. Quốc – Lớp 09CNTT1 Trang 49 Nghiên cứu phát triển ứng dụng hệ điều hành Android SVTH: Nguyễn Tấn Quốc – Lớp 09CNTT1 Trang 50 Nghiên cứu phát triển ứng dụng hệ điều hành Android Du lịch SVTH: Nguyễn