Bối cảnh và vấn đề nghiên cứu
Lý do chọn đề tài và bối cảnh thực tiễn
Trong bối cảnh công nghệ thông tin phát triển không ngừng, việc ứng dụng tin học hóa vào các hoạt động quản lý, vận hành và đời sống xã hội đã trở thành một xu thế tất yếu. Bên cạnh các ứng dụng phục vụ quản lý kinh tế và bán hàng của doanh nghiệp, nhu cầu giải trí cá nhân của người dùng trên các thiết bị di động ngày càng gia tăng. Trong số các hình thức giải trí số, ứng dụng đọc truyện trên điện thoại thông minh nhận được sự quan tâm và sử dụng thường xuyên từ đông đảo người dùng.
Xuất phát từ thực tiễn đó, đề tài "Xây dựng app đọc truyện trên nền tảng android" được tác giả lựa chọn thực hiện nhằm mục đích xây dựng một ứng dụng đọc truyện tiện lợi, cho phép người dùng giải trí mọi lúc, mọi nơi thông qua thiết bị di động có kết nối internet. Ứng dụng hướng đến tiêu chí dễ sử dụng, cung cấp đa dạng thể loại truyện phù hợp với nhiều lứa tuổi khác nhau.
Mục tiêu và nhiệm vụ nghiên cứu
Đồ án xác định các mục tiêu và nhiệm vụ cụ thể theo từng giai đoạn thực hiện:
- Nghiên cứu tổng quan về hệ điều hành Android, lịch sử phát triển, các phiên bản và kiến trúc phân tầng của hệ điều hành.
- Tìm hiểu và thiết lập môi trường phát triển ứng dụng thông qua bộ công cụ Android Studio và thiết bị ảo giả lập Genymotion.
- Nghiên cứu các thành phần cốt lõi cấu thành ứng dụng Android bao gồm Activity, Service, Broadcast Receiver, Content Provider, Intent, Notification và hệ thống View/Layout.
- Phân tích và thiết kế hệ thống đọc truyện: xác định các tác nhân (Actors), xây dựng biểu đồ và đặc tả các trường hợp sử dụng (Use Cases), thiết kế cấu trúc dữ liệu.
- Triển khai lập trình xây dựng các lớp xử lý đối tượng, quản trị cơ sở dữ liệu SQLite, thiết kế giao diện người dùng và kiểm thử chức năng trên môi trường giả lập.
Đối tượng và phạm vi nghiên cứu
- Đối tượng nghiên cứu: Nền tảng hệ điều hành Android, môi trường lập trình Android Studio, cơ sở dữ liệu nhúng SQLite, kiến trúc ứng dụng di động và quy trình phát triển phần mềm đọc truyện.
- Phạm vi không gian và công nghệ: Ứng dụng được thiết kế và triển khai chạy trên hệ điều hành Android (thử nghiệm trên phiên bản Android 5.0, API 22 với độ phân giải 768x1280 thông qua máy ảo Genymotion).
- Thời gian và thông tin thực hiện: Đồ án tốt nghiệp đại học ngành Công nghệ thông tin, do sinh viên Nguyễn Duy Hoàng thực hiện dưới sự hướng dẫn của cô Đỗ Thị Huyền, hoàn thành vào ngày 21 tháng 06 năm 2022 tại Hà Nội.
Cơ sở lý thuyết và phương pháp
Khung lý thuyết và kiến trúc nền tảng
Tác giả dựa trên nền tảng lý thuyết về hệ điều hành Android và mô hình kiến trúc phân tầng tiêu chuẩn:
| Tầng kiến trúc |
Thành phần và công nghệ chi tiết |
Chức năng chính |
| Linux Kernel (Nhân Linux) |
Nhân Linux phiên bản 2.6 |
Quản lý bộ nhớ (memory management), tiến trình (process management), bảo mật (security), ngăn xếp mạng (network stack) và trình điều khiển phần cứng (driver model). |
| Libraries & Android Runtime |
- Thư viện C/C++: BSD tiêu chuẩn (libc), Media (PacketVideo OpenCORE: MPEG4, H.264, MP3, AAC, AMR, JPG, PNG), LibWebCore, Bề mặt quản lý, SGL (2D), OpenGL ES 1.0 APIs (3D), FreeType. - Android Runtime: Hệ thống thư viện Java lõi và máy ảo Dalvik (Dalvik VM) thực thi tệp tin tối ưu .dex dựa trên thanh ghi (register-based). |
Cung cấp các hàm xử lý đồ họa, đa phương tiện, trình duyệt nhúng và môi trường thực thi ứng dụng tối ưu hóa tài nguyên. |
| Application Framework |
- View System (GridView, TableView, LinearLayout...) - Content Provider - Resource Manager - Notification Manager - Activity Manager |
Cung cấp các khối xây dựng cơ bản, quản lý vòng đời ứng dụng, chia sẻ dữ liệu giữa các ứng dụng và giao tiếp tài nguyên. |
| Applications (Tầng ứng dụng) |
Các ứng dụng gốc và ứng dụng do lập trình viên phát triển (Danh bạ, Trình duyệt, App đọc truyện...) |
Tầng tương tác trực tiếp với người dùng cuối thông qua giao diện cảm ứng chạm, vuốt, kéo giãn. |
Đồ án cũng hệ thống hóa các thành phần cốt lõi và vòng đời của một ứng dụng Android:
- Activity: Đại diện cho một màn hình giao diện, được quản lý thông qua chu trình sống với 6 phương thức cơ bản:
onCreate(), onStart(), onResume(), onPause(), onStop(), onDestroy().
- Service: Thành phần chạy nền không giao diện người dùng, thực thi các tác vụ kéo dài.
- Broadcast Receiver: Thành phần tiếp nhận và xử lý các thông điệp truyền thông (Intent) từ hệ thống hoặc ứng dụng khác.
- Content Provider: Cơ chế chia sẻ và truy xuất dữ liệu dùng chung giữa các ứng dụng.
- Intent: Đối tượng truyền tải thông điệp để khởi chạy Activity, Service hoặc gửi dữ liệu.
- Notification: Cơ chế phát thông báo đến người dùng (sử dụng Toast và AlertDialog).
Phương pháp nghiên cứu và phát triển
- Phương pháp phân tích và thiết kế hướng đối tượng: Sử dụng kỹ thuật mô hình hóa hệ thống bằng Actor và Use Case nhằm xác định vai trò người dùng và chức năng phần mềm.
- Phương pháp phát triển phần mềm: Sử dụng ngôn ngữ lập trình Java, cấu trúc bố cục giao diện bằng XML (FrameLayout, LinearLayout, RelativeLayout) và tích hợp các bộ lắng nghe sự kiện (Event Listeners & Event Handlers).
- Phương pháp lưu trữ dữ liệu: Ứng dụng hệ quản trị cơ sở dữ liệu SQLite cục bộ thông qua lớp xử lý kết nối dữ liệu.
- Phương pháp thực nghiệm kiểm thử: Cài đặt và thực thi kiểm thử giao diện, chức năng trên máy tính thông qua công cụ máy ảo Genymotion tích hợp VirtualBox.
Thiết kế và triển khai
Môi trường phát triển và cấu hình công cụ
- Hệ điều hành máy tính: Hỗ trợ Microsoft Windows (Windows 10, Windows 8, Windows 7 phiên bản 32-bit hoặc 64-bit).
- Môi trường tích hợp (IDE): Android Studio (xây dựng trên nền tảng IntelliJ IDEA) tải từ cổng phát triển chính thức, tích hợp Android SDK và Android Studio Device.
- Công cụ máy ảo giả lập: Genymotion phiên bản tích hợp VirtualBox; cấu hình máy ảo kiểm thử:
Custom Phone - Android 5.0 - API 22 - Độ phân giải 768x1280.
- Cấu trúc quản lý tệp trong Android Studio: Phân chia thành 3 thư mục module chính:
manifests: Chứa tệp cấu hình AndroidManifest.xml (bắt buộc khai báo Activity, Service, Broadcast Receiver, Content Provider).
java: Chứa các tệp mã nguồn Java.
res: Chứa tài nguyên giao diện, tệp layout XML và hình ảnh.
Mô hình phân tích tác nhân và trường hợp sử dụng
Hệ thống được thiết kế phục vụ hai tác nhân chính với các quyền hạn cụ thể:
| Tác nhân (Actor) |
Mô tả vai trò |
Danh sách trường hợp sử dụng (Use Cases) liên quan |
| Admin (Quản trị viên) |
Đăng nhập hệ thống, đăng tải bài viết/truyện mới, cập nhật thông tin bài đăng (thêm, xóa, sửa), cập nhật thông tin quản trị và xem tổng quan đánh giá từ người dùng. |
- UC01: Đăng nhập - UC02: Đăng bài - UC05: Cập nhật bài đăng |
| User (Người dùng/Độc giả) |
Đăng ký tài khoản, đăng nhập, tìm kiếm truyện, lựa chọn đọc truyện, gửi đánh giá sau khi đọc, lưu truyện vào danh sách yêu thích, chia sẻ bài đọc và tải truyện đọc ngoại tuyến. |
- UC01: Đăng nhập - UC03: Tìm kiếm - UC04: Đọc truyện - UC06: Đánh giá - UC07: Chia sẻ - UC08: Thêm vào yêu thích - UC09: Tải xuống |
Đặc tả luồng xử lý chức năng chính
- UC01 - Đăng nhập (Login):
- Tác nhân: Admin và User.
- Điều kiện kích hoạt: Người dùng nhấn nút đăng nhập.
- Luồng sự kiện chính: Người dùng nhập tên đăng nhập và mật khẩu tại màn hình
MainDangNhap -> Hệ thống kiểm tra tính hợp lệ -> Điều hướng đến màn hình mặc định tương ứng với vai trò (Role).
- Thông báo lỗi hệ thống (MS01): Hiển thị thông báo "Tên Đăng Nhập và/hoặc Mật Khẩu của bạn không chính xác. Vui lòng kiểm tra và thử lại." khi nhập sai thông tin.
- UC02 - Đăng bài:
- Tác nhân: Admin (sau khi đã đăng nhập thành công).
- Luồng sự kiện chính: Admin chọn nút đăng truyện -> Nhập thông tin tiêu đề và nội dung truyện cần đăng -> Hệ thống xác nhận và hiển thị kết quả bài đăng lên màn hình giao diện.
Cấu trúc dữ liệu và các lớp xử lý đối tượng
Hệ thống được tổ chức thông qua các thành phần mã nguồn hướng đối tượng:
- Các lớp thực thể (Model Classes):
TaiKhoan (quản lý thông tin tài khoản, phân quyền), Truyen (lưu trữ tiêu đề, nội dung, chuyên mục), DanhGia (lưu trữ thông tin nhận xét, phản hồi) và chuyenmuc (phân loại thể loại truyện).
- Lớp xử lý cơ sở dữ liệu: Xây dựng lớp
SQLite Database Handler đảm nhiệm việc tạo bảng, truy vấn, chèn, xóa và sửa đổi dữ liệu cục bộ trên thiết bị.
- Lớp cầu nối dữ liệu (Adapter): Xây dựng các Adapter để ánh xạ tập dữ liệu từ danh sách đối tượng lên các thành phần hiển thị giao diện danh sách (
ListView, ListItem).
- Lớp điều khiển giao diện: Lớp
MainDangNhap.java và các Activity/Fragment liên kết với các thành phần điều khiển (TextView, EditText, Button, ImageView) và xử lý sự kiện người dùng thông qua các interface sự kiện.
Nội dung chính theo từng chương
CHƯƠNG 1: GIỚI THIỆU HỆ ĐIỀU HÀNH ANDROID
Chương 1 trình bày tổng quan về lịch sử hình thành, tiến trình phát triển và kiến trúc kỹ thuật của hệ điều hành Android. Tác giả nêu rõ Android có nguồn gốc dựa trên nền tảng Linux, được thành lập bởi Tổng công ty Android, sau đó được Google mua lại vào năm 2005. Phiên bản thương mại đầu tiên Android 1.0 phát hành vào tháng 9 năm 2008 gắn liền với thiết bị T-Mobile G1 (bán ra tháng 10/2008).
Chương này phân tích các bước phát triển quan trọng của Android qua các thời kỳ: thanh thông báo vuốt xuống (Notification bar), màn hình chính tùy biến widget (Home Screen phát triển cùng công ty thiết kế TAT), tích hợp giao thức POP/IMAP của Gmail, và sự ra đời của chợ ứng dụng Android Market. Tác giả cũng phân tích cấu trúc 4 tầng của Android, cơ chế thực thi của máy ảo Dalvik trên định dạng tệp tin .dex, và các phiên bản Android theo bảng chữ cái bánh kẹo từ Cupcake đến Android 8.0 Oreo (phát hành tháng 8/2017 với các tính năng như sideload, giới hạn ứng dụng nền, Picture-in-picture, Project Treble).
CHƯƠNG 2: MÔI TRƯỜNG LẬP TRÌNH ANDROID STUDIO
Chương 2 hướng dẫn thiết lập môi trường phát triển ứng dụng di động. Nội dung bao gồm yêu cầu phần cứng, phần mềm hỗ trợ hệ điều hành Windows (Windows 10/8/7 32-bit hoặc 64-bit), quy trình tải và cài đặt Android Studio cùng bộ Android SDK. Tác giả giới thiệu chi tiết cách cài đặt và cấu hình máy ảo Genymotion kết hợp phần mềm VirtualBox để phục vụ chạy thử ứng dụng.
Bên cạnh đó, chương 2 phân tích 6 vùng làm việc chính trên giao diện Android Studio, cấu trúc tổ chức mã nguồn theo 3 module (manifests, java, res), cũng như lý thuyết về các thành phần cốt lõi của Android. Phần cuối chương dành để phân loại các dạng bố cục giao diện (FrameLayout, LinearLayout theo chiều ngang horizontal hoặc chiều dọc vertical, RelativeLayout), các View cơ bản (TextView, EditText, ImageView, Button, ListView) và bảng tổng hợp các cơ chế bắt/xử lý sự kiện giao diện (Event Listeners & Event Handlers).
CHƯƠNG 3: PHÂN TÍCH THIẾT KẾ HỆ THỐNG
Chương 3 tập trung vào công tác phân tích yêu cầu phần mềm cho ứng dụng đọc truyện. Nội dung xác định rõ hai tác nhân là Admin và User, đồng thời mô tả chi tiết 9 Use Case từ UC01 đến UC09. Tác giả tiến hành đặc tả chi tiết các trường hợp sử dụng trọng tâm gồm Đăng nhập (UC01) và Đăng bài (UC02), bao gồm tên Use Case, mã định danh, tác nhân thực hiện, điều kiện tiên quyết, điều kiện sau thực hiện, luồng sự kiện chính và thông điệp cảnh báo lỗi của hệ thống. Chương này đặt nền tảng cho việc thiết kế mô hình dữ liệu lưu trữ.
CHƯƠNG 4: TỔNG QUAN THIẾT KẾ, XÂY DỰNG VÀ KẾT QUẢ GIAO DIỆN ỨNG DỤNG
Chương 4 trình bày chi tiết các bước kỹ thuật xây dựng ứng dụng đọc truyện:
- Xây dựng các lớp thực thể Java:
TaiKhoan, Truyen, DanhGia, chuyenmuc.
- Tạo lớp
SQLite Database Handler phục vụ quản lý và thao tác dữ liệu.
- Thiết kế giao diện người dùng bằng các View và Layout XML.
- Xây dựng lớp
Adapter để binding dữ liệu lên giao diện hiển thị danh sách.
- Khởi tạo và liên kết các biến tham chiếu đến View trong lớp
MainDangNhap.java.
Chương này cũng tổng hợp kết quả thiết kế các màn hình giao diện của ứng dụng, bao gồm: giao diện đăng nhập, giao diện đăng ký, giao diện activity main đánh giá, giao diện main yêu thích, giao diện thông tin đánh giá, giao diện fragment đăng bài, giao diện activity main chia sẻ, giao diện activity main.
CHƯƠNG 5: KẾT QUẢ CHẠY ỨNG DỤNG
Chương 5 ghi nhận kết quả thực thi và vận hành các chức năng của ứng dụng đọc truyện trên môi trường kiểm thử thực tế/giả lập, đánh giá sự hoạt động của các luồng nghiệp vụ đăng nhập, hiển thị danh mục truyện, đọc nội dung và các tính năng tương tác người dùng.
CHƯƠNG 6: KẾT LUẬN
Chương 6 tổng kết toàn bộ kết quả đạt được của đồ án tốt nghiệp, khẳng định việc hoàn thành các mục tiêu nghiên cứu và xây dựng ứng dụng trên nền tảng Android. Đồng thời, tác giả nêu ra định hướng phát triển nhằm nâng cấp và mở rộng ứng dụng trong tương lai.
Kết quả và đóng góp
Kết quả kỹ thuật đạt được
- Hoàn thiện cấu trúc phần mềm: Xây dựng thành công ứng dụng đọc truyện hoạt động trên nền tảng Android, triển khai đầy đủ các lớp nghiệp vụ đối tượng (
TaiKhoan, Truyen, DanhGia, chuyenmuc) và cấu trúc lưu trữ SQLite Database Handler.
- Hoàn thành hệ thống giao diện người dùng: Thiết kế hoàn chỉnh hệ thống các màn hình ứng dụng phục vụ đầy đủ chu trình tương tác:
- Giao diện đăng nhập (
MainDangNhap) và đăng ký tài khoản.
- Giao diện chính (
Activity Main) hiển thị danh sách truyện.
- Giao diện đọc truyện và phân loại chuyên mục.
- Giao diện đánh giá, xem thông tin đánh giá và quản lý danh sách yêu thích.
- Giao diện chia sẻ liên kết qua mạng xã hội/email.
- Giao diện dành riêng cho quản trị viên (Fragment đăng bài, cập nhật bài đăng).
- Hiện thực hóa chức năng theo phân quyền:
- Quyền Admin: Thực hiện đăng nhập, đăng tải truyện mới, cập nhật chỉnh sửa bài đăng và quản lý phản hồi đánh giá.
- Quyền User: Đăng nhập, tìm kiếm truyện, đọc truyện trực tuyến, đánh giá truyện, lưu vào mục yêu thích và hỗ trợ tải truyện đọc ngoại tuyến (offline).
Đóng góp của đồ án
Đồ án đã hệ thống hóa quy trình phát triển một ứng dụng di động Android hoàn chỉnh từ khâu nghiên cứu lý thuyết nền tảng, thiết lập công cụ phát triển (Android Studio, Genymotion), phân tích thiết kế hệ thống theo mô hình Use Case, đến lập trình xây dựng cơ sở dữ liệu SQLite cục bộ và xử lý sự kiện giao diện. Đây là sản phẩm học thuật ứng dụng thực tiễn, phản ánh năng lực phân tích, thiết kế và lập trình phần mềm của sinh viên chuyên ngành Công nghệ thông tin.
Hạn chế và hướng nghiên cứu tiếp
Hạn chế của đề tài
Dựa trên phạm vi và nội dung trình bày trong đồ án, hệ thống còn một số điểm giới hạn:
- Cơ sở dữ liệu của ứng dụng được xây dựng dựa trên SQLite cục bộ trên thiết bị, chưa tích hợp hệ thống máy chủ cơ sở dữ liệu trực tuyến (Web Service / Cloud Database) để đồng bộ dữ liệu thời gian thực giữa nhiều người dùng và quản trị viên.
- Một số biểu đồ tuần tự (Sequence Diagram) và biểu đồ hoạt động (Activity Diagram) trong phần thiết kế Use Case mới dừng lại ở mức mô tả khung cho các luồng chính.
Hướng phát triển tiếp theo
Như tác giả đã đề cập trong định hướng phát triển ở Chương 6:
- Tiếp tục hoàn thiện và nâng cấp các tính năng hiện có của ứng dụng nhằm nâng cao trải nghiệm đọc truyện.
- Mở rộng kiến trúc hệ thống, hướng tới việc kết nối cơ sở dữ liệu đám mây để quản lý dữ liệu tập trung, hỗ trợ cập nhật kho truyện trực tuyến tự động và mở rộng cộng đồng người dùng.
Giá trị tham khảo
Đối tượng sử dụng tài liệu
- Sinh viên ngành Công nghệ thông tin, Kỹ thuật phần mềm: Là tài liệu tham khảo trong quá trình học tập các học phần lập trình thiết bị di động, lập trình Java trên Android, hoặc thực hiện đồ án tốt nghiệp, bài tập lớn chuyên ngành.
- Lập trình viên mới bắt đầu với Android: Hữu ích cho người học cần tài liệu hướng dẫn từng bước về cài đặt công cụ, cấu hình máy ảo, tổ chức mã nguồn và làm việc với hệ thống View/Layout trong Android Studio.
Các nội dung có giá trị tham khảo cao
- Hướng dẫn môi trường và công cụ (Chương 2): Chi tiết về 6 vùng làm việc trong Android Studio, cách cấu hình máy ảo Genymotion kết hợp VirtualBox, và bảng đối chiếu các cặp
Event Listener - Event Handler chuẩn trong Android.
- Mô hình phân tích Use Case (Chương 3): Khung biểu mẫu đặc tả trường hợp sử dụng (UC Description) rõ ràng, bao gồm mã UC, Trigger, Pre-condition, Post-condition, Main Flow và thông báo hệ thống (System Message).
- Mẫu cấu trúc mã nguồn ứng dụng SQLite (Chương 4): Cung cấp cách tiếp cận xây dựng các lớp Model, lớp SQLite Database Handler và Adapter để liên kết dữ liệu với giao diện danh sách (
ListView).
Câu hỏi thường gặp
1. Ứng dụng đọc truyện trong đồ án phân chia quyền hạn của hai tác nhân Admin và User như thế nào?
Theo nội dung đặc tả trong đồ án, hệ thống phân chia rõ ràng hai vai trò:
- Admin: Có quyền đăng nhập hệ thống, đăng tải bài viết/truyện mới (UC02), cập nhật thông tin bài đăng bao gồm thêm, xóa, sửa (UC05), cập nhật lại thông tin cá nhân của admin và xem tổng quan các đánh giá từ phía người dùng.
- User: Có quyền đăng ký, đăng nhập (UC01), tìm kiếm truyện (UC03), chọn và đọc truyện (UC04), gửi đánh giá sau khi đọc (UC06), chia sẻ truyện qua Facebook/email (UC07), thêm truyện vào danh sách yêu thích (UC08) và tải truyện về thiết bị để đọc ngoại tuyến (UC09).
2. Vòng đời của một Activity trong Android được tác giả trình bày gồm những phương thức nào?
Vòng đời Activity được mô tả gồm 6 phương thức cơ bản:
onCreate(): Phương thức đầu tiên được gọi khi khởi tạo Activity.
onStart(): Được gọi khi Activity bắt đầu hiển thị với người dùng.
onResume(): Được gọi khi người dùng bắt đầu tương tác trực tiếp với ứng dụng.
onPause(): Tạm dừng Activity hiện tại khi một Activity khác chuẩn bị hiển thị, không nhận dữ liệu nhập mới.
onStop(): Được gọi khi Activity hoàn toàn bị che khuất và không còn nhìn thấy trong thời gian dài.
onDestroy(): Được gọi ngay trước khi hệ thống giải phóng và hủy bỏ hoàn toàn Activity.
3. Tác giả đã sử dụng môi trường giả lập nào để kiểm thử ứng dụng và cấu hình chi tiết ra sao?
Tác giả sử dụng công cụ máy ảo Genymotion (bản tích hợp sẵn Oracle VM VirtualBox) để chạy thử nghiệm ứng dụng trên máy tính. Cấu hình thiết bị máy ảo được lựa chọn cụ thể là: tên thiết bị Custom Phone, chạy phiên bản hệ điều hành Android 5.0, cấp độ API 22, và độ phân giải màn hình đạt 768x1280.
4. Hệ thống dữ liệu của ứng dụng bao gồm những lớp thực thể Java nào và được quản lý bằng công nghệ gì?
Hệ thống dữ liệu được xây dựng dựa trên 4 lớp thực thể Java chính gồm: TaiKhoan, Truyen, DanhGia và chuyenmuc. Việc khởi tạo bảng, truy vấn, lưu trữ và thao tác dữ liệu cục bộ trên ứng dụng được thực hiện thông qua lớp SQLite Database Handler kết hợp cơ chế hiển thị dữ liệu bằng các lớp Adapter.
5. Kiến trúc hệ điều hành Android được phân chia thành những tầng nào theo nội dung phân tích trong đồ án?
Kiến trúc Android được trình bày gồm 5 thành phần chính nằm trong 4 lớp:
- Tầng nhân Linux (Linux Kernel 2.6): Đảm nhiệm các dịch vụ cốt lõi về bảo mật, bộ nhớ, tiến trình, mạng và trình điều khiển phần cứng.
- Tầng thư viện gốc (Libraries) và Android Runtime: Gồm các thư viện C/C++ (libc, Media OpenCORE, LibWebCore, SGL, OpenGL ES, FreeType) và máy ảo Dalvik chạy định dạng tệp
.dex.
- Tầng khung ứng dụng (Application Framework): Cung cấp các dịch vụ hệ thống như View System, Content Provider, Resource Manager, Notification Manager và Activity Manager.
- Tầng ứng dụng (Applications): Tầng giao tiếp trực tiếp với người dùng, chứa các ứng dụng cài đặt trên thiết bị.
Kết luận
Đồ án tốt nghiệp "Xây dựng app đọc truyện trên nền tảng android" của tác giả Nguyễn Duy Hoàng là một công trình nghiên cứu và phát triển phần mềm di động có cấu trúc rõ ràng, bám sát quy trình kỹ thuật phần mềm. Đề tài đã hệ thống hóa toàn diện kiến thức nền tảng về hệ điều hành Android, môi trường phát triển Android Studio và cơ sở dữ liệu SQLite, đồng thời hiện thực hóa thành công các chức năng đọc truyện, quản trị nội dung và tương tác người dùng. Tài liệu mang lại giá trị tham khảo thực tiễn cao cho sinh viên chuyên ngành Công nghệ thông tin trong việc nghiên cứu và triển khai các dự án phần mềm di động.