Chương 1 làtổng quan về bài toán xây dựng và phát triển các ứng dụng cho VNUPad. Chương này giới thiệu về thiết bị VNUPad, hệ điều hành Android, phát triển phần mềm cho VNUPad trên Android và miêu tả về các phần mềm hiện tại mà Android đã có. Chương 2 làkhảo sát các yêu cầu nghiệp vụ cho phần mềm ghi chép VNUNote. Chương này trình bày về nhu cầu cần thiết để xây dựng phần mềm VNUNote và lựa chọn nghiệp vụ cho phần mềm VNUNote.
Chương 3 làxây dựng phần mềm ghi chép VNUNote. Chương này trình bày về quá trình phát triển phần mềm VNUNote. Quá trình này bao gồm từ phân tích biểu đồ hoạt động, biểu đồ các ca sử dụng đến thiết kế xây dựng các lớp và lập trình, kiểm thử ứng dụng. Tôi cảm ơn Tiến sĩ Lê Quang Minh, Viện Công nghệ Thông tin, Đại học Quốc gia Hà Nội đã hướng dẫn tôi thực hiện luận văn này.
LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 8 Chƣơng 1. TỔNG QUAN VỀ BÀI TOÁN XÂY DỰNG VÀ PHÁT TRIỂN CÁC ỨNG DỤNG CHO VNUPAD 1. Hệ điều hành Android Android là một hệ điều hành rất phổ biến dành cho các thiết bị di động, từ điện thoại thông minh đến các dòng máy tính bảng. Trong lĩnh vực này Android là hệ điều hành thành công nhất từ trước đến nay với một kho ứng dụng đồ sộ và một mạng lưới các nhà phát triển phần cứng, phần mềm, viễn thông trên khắp thế giới.
Vào tháng 10 năm 2003 hãng phần mềm Android Inc ra đời tại Palo Alto, California do Andy Rubin, Rich Miner và Chris White sáng lập. Những ngày đầu, hoạt động của công ty diễn ra khá âm thầm và không tuyên bố là phát triển hệ điều hành Android mà chỉ nói là họ đang phát triển phần mềm cho điện thoại di động. Tháng 5 năm 2005 công ty Google mua lại công ty Android và biến nó thành một bộ phận trực thuộc của mình. Tại đây các thành viên chủ chốt như Rubin, Miner và Chris tiếp tục làm việc và tạo thành một nhóm chịu trách nhiệm phát triển hệ điều hành Android.
Nhóm phát triển của Andy Rubin sẽ tập trung phát triển Android từ nhân Linux trở thành hệ điều hành mở, dễ nâng cấp và tương thích với các loại phần cứng của các hãng khác nhau. Với Android, Google muốn thành lập một liên minh các thiết bị di động mở bao gồm các nhà phát triển phần mềm, phần cứng và nhà mạng với nhau. Vào tháng 11 năm 2007, giấc mơ của Google đã trở thành sự thật khi liên minh các thiết bị cầm tay mở rộngOHA (Open Handset Alliance) ra đời bao gồm nhiều hãng danh tiếng nhưTexas Instruments,tập đoàn Broadcom, Google, HTC, Intel, LG, tập đoàn Marvell Technology, Motorola, Nvidia, Qualcomm, Samsung Electronics, Sprint Nextel và T-Mobile [17]. Tháng 10 năm 2008 hệ điều hành Android chính thức trở thành phần mềm mã nguồn mở khi chiếc điện thoại đầu tiên chạy Android là HTC Dream được bán ra thị trường.
Biểu tượng của hệ điều hành Android là một con rô bốt màu xanh lá cây do hãng Irina Blok tại California vẽ [5]. Tháng 11 năm 2008 liên minh OHA do Google đứng đầu chính thức cho ra đời bộ công cụ phát triển phần mềm Android. Từ đây bắt đầu thời kỳ phát triển mạnh của các nhà lập trình bao gồm cả các công ty phần mềm ứng dụng và các cá nhân phát triển phần mềm tự do [5]. Tháng 12 năm 2008 có thêm 14 thành viên gia nhập liên minh OHA là ARM Holding, Atheros Communications, Asustek Computer Inc, Garmin Ltd, Softbank, Sony Ericsson, Toshiba Corp và Vodafone Group Plc.
Điều này cho thấy sự bành chướng ngày càng mạnh mẽ của liên minhnày [17]. Phiên bản Android đầu tiên ra đời vào tháng 9 năm 2008 và tháng 2 năm 2009. Phiên bản này không có tên gọi chính thức do hệ điều hành chưa thực sự phổ biến và phát triển thành hệ thống như bây giờ [5]. LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 9 Phiên bản Android có tên đầu tiên là Android Cupcake 1.5 ra đời tháng 4 năm 2009.
Đây là phiên bản thực sự hoàn chỉnh đầu tiên với các chức năng khá đầy đủ. Đó là sự hỗ trợ bàn phím ảo với khả năng đoán chữ, hỗ trợ thành phần giao diện nhúngcủa ứng dụng trên màn hình máy chủ và hỗ trợ bluetooth, chụp ảnh, quay phim [5]. Phiên bản Android Donut 1.6 ra đời tháng 9 năm 2009 với những tính năng mới. Đáng chú ý là kho ứng dụng Android Market, hỗ trợ tuỳ biến giao diện, nâng cấp công cụ tìm kiếm bằng giọng nói Voice Search, nâng cấp công cụ tìm kiếm Google Search cho phép tìm kiếm liên lạc, địa chỉ, trang web nhanh chóng hơn.
Ở phiên bản này đã có sự hỗ trợ các thiết bị màn hình lớn như các máy tính bảng [5]. Phiên bản Android Eclair 2.1 ra đời tháng 10 năm 2009. Phiên bản này Google đã cải thiện giao diện màn hình và tối ưu hoá để tận dụng tốc độ phần cứng và hỗ trợ nhiều kích cỡ màn hình khác nhau. Ngoài ra Google cũng nâng cấp một số phần mềm chủ chốt như Map, Camera và bổ sung đèn flash cho ống kính, nâng cấp bàn phím ảo và chuẩn kết nối Bluetooth 2.
Phiên bản Android Froyo 2.2 ra đời tháng 5 năm 2010. Phiên bản này chú trọng nâng cấp tốc độ xử lý và cải tiến bộ máy lõi phiên bản thứ 8 cho trình duyệt Chrome và hỗ trợ Adobe Flash 10. Ở phiên bản này người dùng đã có thể tạo điểm truy cập wifi trên thiết bị, chuyển đổi ngôn ngữ trên bàn phím ảo. Một trong những dòng điện thoại thông minh đầu tiên chạy Android Froyo 2.2 là LG Optimus One [5].
Phiên bản Android Gingerbread 2.3 ra đời tháng 12 năm 2010. Phiên bản này đã nâng cấp đáng kể giao diện người dùng, cải thiện bàn phím ảo, thêm tính năng sao chép và dán trong các ứng dụng soạn thảo văn bản, hỗ trợ công nghệ giao tiếp tầm gần NFC (viết tắt của Near Field Communication). Với phiên bản này Google cũng cho ra mắt điện thoại đầu tiên của hãng chạy nền tảng này là Google Nexus S [5]. Phiên bản Android Honeycomb 3.0 ra đời tháng 2 năm 2011.
Đây là phiên bản hệ điều hành dành riêng cho máy tính bảng với giao diện được tuỳ chỉnh cho phù hợp với kích thước màn hình và các đặc tính riêng của máy tính bảng. Phiên bản Honeycomb hỗ trợ bộ xử lý đa nhân, bộ xử lý đồ hoạ và cải tiến khả năng tuỳ biến giao diện cao hơn [5].0 Ice Cream Sandwich ra đời cuối năm 2011. Với phiên bản này, Google đã hợp nhất hệ điều hành dành cho điện thoại thông minh và máy tính bảng.0 cũng hướng đến nâng cấp tốc độ duyệt web, tối ưu hoá sử dụng tài nguyên và tăng thời lượng sử dụng pin của thiết bị [5]. Android Jelly Bean 4.
Ở Phiên bản này, Google tập trung cải tiến độ mượt cho hệ điều hành, điều làm cho người dùng phàn nàn về Android là thiếu độ mượt và giật khi vuốt trong màn hình cảm ứng. Để có được sự mượt mà này Google đã tập trung phát triển dự án Butter. Đây là dự án giúp Android hoạt động trơn tru như cách của iOS [5]. Phiên bản Android Jelly Bean 4.3 ra đời tháng 4 năm 2013.3 cải tiến kết nối Bluetooth, thêm khả năng định vị bằng Wifi.
Đặc biệt trong phiên bản này, Google LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 10 đã tích hợp thư viện lập trình đồ hoạ OpenGL ES 3.0 giúp các lập trình viên phát triển các ứng dụng trò chơi đồ hoạ tốt và nhanh chóng hơn [5].4 ra đời tháng 10 năm 2013. Phiên bản này cải tiến giao tiếp NFC (viết tắt của Near Field Communication), cổng hồng ngoại, hỗ trợ các hiệu ứng chuyển cảnh màn hình đẹp hơn.4 cũng cung cấp các thư viện lập trình cho ứng dụng Web và truy cập không gian lưu trữ của thiết bị [5]. Android L hay Lollipop 5.0 ra đời tháng 6 năm 2014. Phiên bản này cải tiến chất lượng sử dụng pin và thay đổi phong cách giao diện theo kiểu giao diện phẳng.
Giao diện phẳng đầu tiên được sử dụng trong hệ điều hành Window Phone của Microsoft. Tuy nhiên cách thiết kế của Microsoft hơi tù túng.0 đã hỗ trợ giao diện phẳng nhưng không thay đổi quá nhiều hình thái biểu tượng của ứng dụng. Điều này giúp giao diện của Android vừa quen thuộc vừa nhẹ nhàng, thanh thoát và cải tiến hiệu năng của bộ xử lý do không phải xử lý các hiệu ứng phức tạp và thừa thãi [5]. Android được xây dựng dựa trên nhân Linux 2.6 từ phiên bản Android đầu tiên đến phiên bản Android 3.
Còn từ phiên bản Android 4.0 trở đi thì được xây dựng trên nhân Linux 3. Ngôn ngữ để viết Android (bao gồm phần mềm hệ thống, thư viện lập trình) là ngôn ngữ C. Trong khi đó ngôn ngữ để viết ứng dụng cho Android là Java. Trong thế giới Java, các ứng dụng được dịch thành các mã Bytecode và chạy thông qua một máy ảo Java.
Ứng dụng trên Android cũng vậy nhưng sử dụng một máy ảo được thiết kế riêng là máy ảo Dalvik. Nền tảng phần cứng chính của Android là kiến trúc ARM (ARM là viết tắt của Acorn RISC Machine trong đó RISC là viết tắt của Reduced Instruction Set Computer) đây là kiến trúc máy tính với tập lệnh được đơn giản hoá [1]. Nhưng ngoài ra cũng hỗ trợ kiến trúc x86 thông qua dự án Android x86. Hiện nay nền tảng Android TV cũng sử dụng một phiên bản Android x86 đặc biệt.
Nền tảng này sẽ hứa hẹn phát triển rộng một số chủng loại thiết bị chạy Android. Hiện nay liên minh OHA (viết tắt của Open Handset Alliance) do Google đứng đầu vẫn đang mở rộng và phát triển, hướng đến nhiều công ty phần cứng, phần mềm và viễn thông. Song hành cùng với liên minh này là một tập hợp các công ty và các cá nhân phát triển ứng dụng di động trên Android đang ngày càng phát triển rộng khắp trên thế giới. Thiết bị VNUPad VNUPad là thiết bị máy tính bảng chạy Android do Viện Công nghệ Thông tin, Đại học Quốc gia Hà Nội thiết kế và quản lý.
Hiện tại thiết bị đang cài Android 4. Cấu hình của thiết bị được lựa chọn để phục vụ cho nhu cầu làm việc, học tập và giải trí (ghi chép, đọc sách, thuyết trình, nghe nhạc, xem phim).1 mô tả cấu hình của thiết bị VNUPad[3]. LUAN VAN CHAT LUONG download : add luanvanchat@agmail.Cấu hình thiết bị VNUPad Đặc điểm Thông số Hệ điều hành Android 4.1 Màn hình Cảm ứng 9,7 inch Độ phân giải 1024x768 điểm ảnh Bộ vi xử lý ARM 1GHz Bộ nhớ 512MB Lưu trữ 8GB Camera mặt trước VGA Camera mặt sau 5MB Kết nối mạng Wifi, Bluetooth, 3G, Ethernet Cổng Mini USB, Micro HDMI, Audio 3.