Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 25 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
25
Dung lượng
634 KB
Nội dung
ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG VIỆT - HÀN ĐỒ ÁN CHUYÊN NGÀNH ĐỀ TÀI: Ứng dụng “App ôn thi trắc nghiệm tiếng anh” Sinh viên thực hiện: Giảng viên hướng dẫn : THÁI VĂN LÂM – 17IT151 HOÀNG ĐĂNG KHÁNH – 17IT150 TS HUỲNH NGỌC THỌ Lớp: 17IT3 Đà nẵng, tháng 12 năm 2020 ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG VIỆT - HÀN ĐỒ ÁN CHUYÊN NGÀNH Ứng dụng “App ôn thi trắc nghiệm tiếng anh” Đà Nẵng, tháng 12 năm 2020 MỞ ĐẦU Theo xu hướng phát triển xã hội ngày nay, ngành công nghệ thông tin ngành thiếu, mạng lưới thông tin giới ngày phát triển, người muốn lưu trữ thông tin cách nhanh xác Dựa vào nhu cầu thực tiễn đó, nhóm chúng em xây dựng nên ứng dụng trả lời câu hỏi trắc nghiệm tiếng anh Việc ứng dụng cơng nghệ thơng tin vào xí nghiệp, quan, trường học yếu tố quan trọng để đưa nước ta sánh vai cường quốc năm châu Đất nước ngày phát triển với nhiều chuyển biến giới nên tin học với người xu tất yếu để hội nhập với công nghiệp Để đảm bảo nguồn thông tin sẵn sàng đáp ứng kiệp thời cho nhu cầu truy xuất Vì ta phải lưu lại trực tiếp thông tin cách khoa học thống giúp người dễ dàng trao đổi truy xuất thơng tin Nhóm chúng em định chọn đồ án Xây dựng ứng dụng “App ôn thi trắc nghiệm tiếng Anh” Bởi đồ án thực tế, phù hợp với tình hình Giúp chúng em có thêm kinh nghiệm, hiểu biết rõ cách xây dựng ứng dụng android Hiện tiếng Anh xem ngôn ngữ quốc tế số giới, người cần đến tiếng Anh dù hay nhiều, đa phần chưa thật am hiểu đến tính quan trọng tiếng Anh nên trình độ cịn chưa tốt Nên em muốn xây dựng app trắc nghiệm tiếng Anh đa tảng để người rèn luyện cải thiện trình độ vào thời gian rảnh đâu Ứng dụng phù hợp với tất người, quen dần với câu trả lời level thấp người nâng cao khả qua level cao Đó lí chúng em chọn đề tài “Câu Hỏi Trắc Nghiệm Tiếng Anh” dành cho Android - Phục vụ tốt nhu cầu người sử dụng - Người dùng cần thao tác đơn giản điện thoại di động (hoặc website) trả lời câu hỏi ôn tập khác với đa dạng đề tài LỜI CẢM ƠN Để hoàn thành đề tài đồ án kết thúc học phần, với tình cảm chân thành, tơi xin bày tỏ lịng biết ơn sâu sắc tới Khoa CNTT Truyền Thông tạo điều kiện cho tơi có mơi trường học tập tốt suốt thời gian học tập, nghiên cứu trường Nhóm xin gửi lời cảm ơn tới TS Huỳnh Ngọc Thọ giúp đỡ nhóm suốt q trình nghiên cứu trực tiếp hướng dẫn tơi hồn thành đề tài đồ án Đồng thời, nhóm xin bày tỏ lịng cảm ơn tới tới thầy Khoa giúp đỡ nhiệt tình chúng em trình học học phần để có đầy đủ kiến thức thực đồ án Nhóm chúng em xin chân thành cảm ơn! NHẬN XÉT (Của giảng viên hướng dẫn) ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… MỤC LỤC Trang Chương Giới thiệu 1.1 Tổng quan .9 1.2 Phương pháp, kết .9 1.3 Cấu trúc đồ án .10 Chương Cơ sở lý thuyết .11 2.1 Lịch sử android: 11 2.2 Application framework 12 2.3 Library 12 2.4 ANDROID EMULATOR .13 2.5 Hệ quản trị SQLite 13 2.6 Service 14 Chương Phân tích thiết kế hệ thống .15 3.1 Biểu đồ use case 15 3.2 Đặc tả use case sử dụng 15 3.3 Biểu đồ hoạt động 17 Chương Xây dựng triển khai chương trình .18 4.1 Các module chương trình .18 4.2 Kết 23 Chương KẾT LUẬN 23 5.1 Kết đạt 23 5.2 Hạn chế 24 5.3 Hướng phát triển 24 DANH MỤC CÁC BẢNG Trang Bảng Làm 15 Bảng Xem kết .16 Bảng Xem đáp án xác 16 Bảng Làm lại kiểm tra 16 DANH MỤC HÌNH Trang Hình Biểu đồ Use case 15 Hình Biểu đồ hoạt động làm thi .17 Hình Giao diện 18 Hình Làm kiểm tra 19 Hình Xem điểm 19 Hình Thời gian làm 20 Hình Hồn tất câu trả lời 20 Hình Level 21 Hình Đề tài 21 Hình 10 Resposive 22 Hình 11 Database 22 DANH MỤC CỤM TỪ VIẾT TẮT STT 10 11 12 13 14 15 Cụm từ Android Deverloper Tool short for Quick EMUlator Interprocess Communication Viết tắt ADT QEMU IPC Chương Giới thiệu 1.1 Tổng quan • Hiện tiếng Anh xem ngôn ngữ quốc tế số giới, người cần đến tiếng Anh dù hay nhiều, đa phần chưa thật am hiểu đến tính quan trọng tiếng Anh nên trình độ cịn chưa tốt Nên em muốn xây dựng app trắc nghiệm tiếng Anh đa tảng để người rèn luyện cải thiện trình độ vào thời gian rảnh đâu Ứng dụng phù hợp với tất người, quen dần với câu trả lời level thấp người nâng cao khả qua level cao Đó lí chúng em chọn đề tài “Câu Hỏi Trắc Nghiệm Tiếng Anh” dành cho Android Phục vụ tốt nhu cầu người sử dụng Khách hàng cần thao tác đơn giản điện thoại di động trả lời câu hỏi ôn tập môn học khác • Vấn đề cần giải quyết: Xác định nhu cầu sử dụng Xác định công cụ hỗ trợ Xây dựng ý tưởng giao diện • Đề xuất nội dung thực hiện: Tìm hiểu cách thức xây dựng ứng dụng android Xây dựng thành công ứng “Câu Hỏi Trắc Nghiệm Tiếng Anh” android Tìm hiểu Android Development Tool (Android Studio) 1.2 Phương pháp, kết • Phương pháp Xây dựng hệ thống bao gồm ứng dụng chạy điện thoại android cần nhiều thời gian, tâm huyết cơng sức Vì phạm vi báo cáo đồ án sở lần này, nhóm em định thực phần đến phần nâng cao theo bước sau: Khảo sát lấy yêu cầu người sử dụng điện thoại ứng dụng ghi mobile để xây dựng ý tưởng Tiếp đến, em nghiên cứu công nghệ phát triển ứng dụng chạy hệ điều hành Android Xây dựng phía client app cài đặt điện thoại chạy Android đáp ứng yêu cầu hệ thống Sau hoàn thành phần ứng dụng chạy điện thoại, em nghiên cứu đến việc lấy liệu vừa ghi để lưu vào Seved Recording Sau danh sách công nghệ sử dụng để xây dựng ứng dụng: Android SDK RecordSevice RecycleView Fragment Java SQLITE • Kết quả: Ứng dụng “Câu Hỏi Trắc Nghiệm Tiếng Anh” hoàn thiện Các câu hỏi gần gũi Ứng dụng dễ dàng sử dụng Sau hoàn thành kiểm tra biết kết hay sai Giao diện đơn giản, dễ sử dụng 1.3 Cấu trúc đồ án • Chương 2: Cơ sở lí thuyết Tập trung tìm hiểu sở lý thuyết liên quan đến đề tài Tìm hiểu cơng cụ hỗ trợ đề tài • Chương 3: Phân tích thiết kế hệ thống Giới thiệu ứng dụng Giới thiệu chức ứng dụng Phân tích thiết kế hệ thống Thiết kế sở liệu • Chương 4: Xây dựng triển khai Tập trung chủ yếu vào modul chương trình Cài đặt xây dựng ứng dụng • Chương 5: Kết luận hướng phát triển Kết luận Hướng phát triển 10 Chương Cơ sở lý thuyết 2.1 Lịch sử android: Ban đầu, Android hệ điều hành cho thiết bị cầm tay dựa lõi Linux công ty Android Inc (California, Mỹ) thiết kế Công ty sau Google mua lại vào năm 2005 bắt đầu xây dựng Android Platform Các thành viên chủ chốt Android Inc gồm có: Andy Rubin, Rich Miner, Nick Sears, and Chris White Và sau tiếp, vào cuối năm 2007, thuộc Liên minh Thiết bị Cầm tay Mã Nguồn mở (Open Handset Alliance) gồm thành viên bật ngành viễn thông thiết bị cầm tay như: Texas Instruments, Broadcom Corporation, Google, HTC, Intel, LG, Marvell Technology Group, Motorola, Nvidia, Qualcomm, Samsung Electronics, Sprint Nextel, T-Mobile, ARM Holdings, Atheros Communications, Asustek Computer Inc, Garmin Ltd, Softbank, Sony Ericsson, Toshiba Corp, and Vodafone Group… Mục tiêu Liên minh nhanh chóng đổi để đáp ứng tốt cho nhu cầu người tiêu dùng kết tảng Android Android thiết kế để phục vụ nhu cầu nhà sản xuất thiết, nhà khai thác lập trình viên thiết bị cầm tay Phiên SDK lần phát hành vào tháng 11 năm 2007, hãng TMobile công bố điện thoại Android T-Mobile G1, smartphone dựa tảng Android Một vài ngày sau đó, Google lại tiếp tục cơng bố mắt phiên Android SDK release Candidate 1.0 Trong tháng 10 năm 2008, Google cấp giấy phép mã nguồn mở cho Android Platform Khi Android phát hành số mục tiêu kiến trúc cho phép ứng dụng tương tác với sử dụng lại thành phần từ ứng dụng khác Việc tái sử dụng không áp dụng cho dịch vụ mà cịn áp dụng cho thành phần liệu giao diện người dùng Vào cuối năm 2008, Google cho phát hành thiết bị cầm tay gọi Android Dev Phone chạy ứng dụng Android mà khơng bị ràng buộc vào nhà cung cấp mạng điện thoại di động Mục tiêu thiết bị cho phép nhà phát triển thực thí nghiệm thiết bị thực chạy hệ điều hành Android mà ký hợp đồng Vào khoảng thời gian Google cho phát hành phiên vản vá lỗi 1.1 hệ điều hành Ở hai phiên 1.0 1.1 Android chưa hỗ trợ soft-keyboard mà địi hỏi thiết bị phải sử dụng bàn phím vật lý Android cố định vấn đề cách phát hành SDK 1.5 vào tháng Tư năm 2009, với số tính khác Chẳng hạn nâng cao khả ghi âm truyền thông, vật dụng, live folder 11 2.2 Application framework Bằng cách cung cấp tảng phát triển mở, Android cung cấp cho nhà phát triển khả xây dựng ứng dụng phong phú sáng tạo Nhà phát triển tự tận dụng thiết bị phần cứng, thông tin địa điểm truy cập, dịch vụ chạy nền, thiết lập hệ thống báo động, thêm thông báo để trạng thái, nhiều, nhiều Nhà phát triển truy cập vào API khuôn khổ sử dụng ứng dụng lõi Các kiến trúc ứng dụng thiết kế để đơn giản hóa việc sử dụng lại thành phần; ứng dụng xuất khả ứng dụng khác sau sử dụng khả (có thể hạn chế bảo mật thực thi khuôn khổ) Cơ chế cho phép thành phần tương tự thay người sử dụng Cơ tất ứng dụng dịch vụ hệ thống, bao gồm: - Một tập hợp nhiều View có khả kế thừa lẫn dùng để thiết kế phần giao diện ứng dụng như: gridview, tableview, linearlayout… Một “Content Provider” cho phép ứng dụng truy xuất liệu từ ứng dụng khác (chẳng hạn Contacts) chia sẻ liệu ứng dụng - Một “Resource Manager” cung cấp truy xuất tới tài nguyên mã nguồn, chẳng hạn như: localized strings, graphics, and layout files - Một “Notifycation Manager” cho phép tất ứng dụng hiển thị custom alerts status bar Activity Manager dùng để quản lý chu trình sống ứng dụng điều hướng activity 2.3 Library • Android bao gồm tập hợp thư viên C/C++ sử dụng nhiều thành phần khác hệ thống Android Điều thể thông qua tảng ứng dụng Android Một số thư viện liệt kê đây: System C library: a BSD-derived implementation of the standard C system library (libc), tuned for embedded Linux-based devices Media Libraries - based on PacketVideo's OpenCORE; the libraries support playback and recording of many popular audio and video formats, as well as static image files, including MPEG4, H.264, MP3, AAC, AMR, JPG, and PNG Surface Manager– Quản lý việc truy xuất vào hệ thống hiển thị LibWebCore - a modern web browser engine which powers both the Android browser and an embeddable web view SGL - the underlying 2D graphics engine 3D libraries - an implementation based on OpenGL ES 1.0 APIs; the libraries use either hardware 3D acceleration (where available) or the included, highly optimized 3D software rasterizer FreeType - bitmap and vector font rendering SQLite - a powerful and lightweight relational database engine available to all applications 12 2.4 ANDROID EMULATOR • Android SDK Plugin Eclipse gọi Android Deverloper Tool (ADT) Các Android coder cần phải sử dụng công cụ IDE (Integrated Development Enveronment) để phát triển, debugging testing cho ứng dụng Tuy nhiên, coder khơng cần phải sử dụng IDE mà thay vào sử dụng command line để biên dịch tất nhiên có Emulator thường • Android Emulator trang bị đầy đủ hầu hết tính thiết bị thật Tuy nhiên, số bị giới hạn kết nối qua cổng USB, camera video, nghe phone, nguồn điện giả lập bluetooth • Android Emulator thực công việc thông qua xử lý mã nguồn mở, công nghệ gọi QEMU (http://bellard.org/qemu/) phát triển Fabrice Bellard 2.5 Hệ quản trị SQLite SQLite hệ quản trị sở liệu quan hệ, khác với hệ quản trị CSDL khác khơng cần client–server database engine (một dịch vụ, ứng dụng cài đặt đầy đủ thơng qua kết nối, tương tác với CSDL), nhúng vào nhiều chương trình khác nhau, từ destop, mobile đến website Hầu hết ngôn ngữ lập trình có thư viện hỗ trợ kết nối, truy vấn đến SQLite như: PHP C, Java, C#, JavaScript Nó nhúng vào trình duyệt, vào hệ thống nhúng, hệ điều hành Android, IOS nhúng mặc định • Lịch sử SQLite 2000 - D Richard Hipp thiết kế SQLite cho mục đích khơng u cầu quản trị để vận hành chương trình 2000 - Vào tháng 8, SQLite 1.0 phát hành với trình quản lý sở liệu GNU 2011 - Hipp tuyên bố bổ sung giao diện UNQl vào SQLite DB phát triển UNQLite (Cơ sở liệu hướng tài liệu - Document oriented database) • Vì chọn SQLite SQLite khơng u cầu quy trình hệ thống máy chủ riêng biệt để hoạt động SQLite khơng cần cấu hình, có nghĩa khơng cần thiết lập quản trị Một sở liệu SQLite hoàn chỉnh lưu trữ file disk đa tảng (cross-platform disk file) SQLite nhỏ trọng lượng nhẹ, 400KiB cấu hình đầy đủ 250KiB với tính tùy chọn bị bỏ qua SQLite khép kín (self-contained), có nghĩa khơng có phụ thuộc bên Các transaction SQLite hoàn toàn tuân thủ ACID, cho phép truy cập an toàn từ nhiều tiến trình (process) luồng (thread) 13 SQLite hỗ trợ hầu hết tính ngơn ngữ truy vấn (query language) tìm thấy tiêu chuẩn SQL92(SQL2) SQLite viết ANSI-C cung cấp API đơn giản dễ sử dụng SQLite có sẵn UNIX (Linux, Mac OS-X, Android, iOS) Windows (Win32, WinCE, WinRT) 2.6 Service • Một Service thành phần (component) thực hoạt động lâu dài background khơng cung cấp giao diện người dùng Một thành phần khác ứng dụng start nó, tiếp tục chạy background người dùng chuyển sang ứng dụng khác Ngồi thành phần liên kết (bind) với Service để tương tác với Service đó, chí thực truyền thơng liên tiến trình IPC (interprocess communication - IPC bạn hiểu hoạt động chia liệu qua nhiều tiến trình, thơng thường sử dụng giao thức truyền thơng phải có Client Server) • Phân loại Service Foreground Service o Một Foreground Service thực số thao tác mà người dùng ý, thấy rõ ràng Ví dụ ứng dụng nghe nhạc chơi nhạc control Foreground Service Một điều bắt buộc Foreground Service phải thị Notification Foreground Service tiếp tục chạy người dùng không tương tác với ứng dụng Background Service o Một Background Service thực hoạt động mà không người dùng ý trực tiếp Ví dụ ứng dụng sử dụng service để thu gom nhớ chẳng hạn service Background Service, hoạt động mà người dùng không cần thiết phải để ý Bound Service o Một service gọi Bound thành phần ứng dụng ràng buộc với lời gọi bindService () Một Bound Service cung cấp giao diện Client - Server cho phép thành phần tương tác với nó: gửi yêu cầu, nhận kết chí IPC Một Bound Service chạy miễn có thành phần ràng buộc với Có thể có nhiều thành phần ràng buộc với Bound Service lúc, tất tháo bỏ ràng buộc (unbound) Destroy Trước Service thường chia Started Service Bound Service 14 Chương Phân tích thiết kế hệ thống 3.1 Biểu đồ use case Hình Biểu đồ Use case 3.2 Đặc tả use case sử dụng • Làm Tên Use Case Use Case làm thi Actor Người dùng Tóm tắt Use Case giúp người dùng tiến hành làm thi Dòng kiện Use Case bắt đầu actor muốn làm thi + Dịng kiện chính: Khi actor mở ứng dụng để làm bài, hình hiển thị câu hỏi mà đáp án để actor lựa chọn câu trả lời trả lời câu trả lời mà actor cho + Dịng kiện khác: Khơng có Bảng Làm 15 • Xem kết Tên Use Case Use Case xem kết Actor Người dùng Tóm tắt Use Case giúp actor xem kết • Dịng kiện • Use Case bắt đầu actor muốn xem kết thi • + Dịng kiện chính: • Khi actor hồn thành xong thi actor muốn xem kết click vào button “Kết thúc” để xem kết điểm số thi • + Dịng kiện khác: Khơng có • Xem đáp án xác Bảng Xem kết Tên Use Case Use Case xem đáp án xác Actor Người dùng Tóm tắt Use Case giúp actor xem đáp án xác thi Dòng kiện Use Case bắt đầu actor muốn xem đáp án + Dịng kiện chính: Khi actor muốn xem đáp án xác, cần click vài button “Xem đáp án “, đáp án xác câu hỏi rõ chi tiết đế actor so sánh chúng với thi + Dịng kiện khác: Khơng có • Làm lại kiểm tra Bảng Xem đáp án xác Tên Use Case Use Case làm lại thi Actor Người dùng Tóm tắt Use Case giúp người dùng muốn làm lại thi Dòng kiện Use Case bắt đầu actor muốn làm lại thi + Dòng kiện chính: Sau làm xong thi xem kết quả, actor lựa chọn làm lại thi để rèn luyện + Dòng kiện khác: Khơng có Bảng Làm lại kiểm tra 16 3.3 Biểu đồ hoạt động Làm thi Khi bắt đầu làm bài, người dùng chọn cho mơn học mà thích sau trả lời câu hỏi dựa theo chủ đề mơn học đó, muốn kết thúc phần làm bài, người dùng cần nhấn vào biểu tượng dấu tích nằm góc bên phải hình, đây, người dùng biết trả lời bao nhiêu, sai bảo nhiêu câu hỏi mfinh chưa trả lời Ngoài người dùng cịn chọn xem đáp án xác (là đáp án đúng) làm lại (các câu hỏi xếp theo ngẫu nhiên) kết thúc thi Hình Biểu đồ hoạt động làm thi 17 Chương Xây dựng triển khai chương trình 4.1 Các module chương trình • Giao diện chương trình Hình Giao diện • Làm kiểm tra Chức cho phép người dùng chọn nội dung thích để làm kiểm tra cách tốt nhất, người dùng chọn nhiều mơn học hình để lựa chọn câu hỏi A, B, C D mà họ cho 18 Hình Làm kiểm tra • Kết thúc xem điểm Sau trả lời xong câu hỏi câu hỏi ứng dụng, người dùng xem số điểm dựa số câu trả lời sai Hình Xem điểm • Thời gian câu hỏi Chức cho phép người dùng xem thời gian trả lời cho câu hỏi làm 19 Hình Thời gian làm • Hồn tất câu trả lời • Chọn đề tài level Hình Hồn tất câu trả lời 20 Hình Level Hình Đề tài 21 • Resposive Hình 10 Resposive • Database Hình 11 Database 22 4.2 Kết Ứng dụng chạy điện thoại android thực tất chức mà nhóm đặt mục tiêu lúc ban đầu Sử dụng ứng dụng “App ôn thi trắc nghiệm tiếng anh” để củng cố kiến thức học từ lớp, giúp rèn luyện trí nhớ, khả tư để nắm kiến thức học Tính năng, đặc điểm: • Thiết kế đơn giản • Dễ sử dụng • Giao diện đơn giản dễ nhìn • Câu hỏi gần gũi • Quản lý tập tin dễ dàng • Nguồn mở • Khơng quảng cáo Chương 5.1 KẾT LUẬN Kết đạt • Về kiến thức Sau thời gian thực đồ án nhóm em đạt nhiều tiến mặt tìm hiểu, nghiên cứu lý thuyết lẫn kỹ lập trình Có thể nói, thơng qua đồ án sở, nhóm em đạt được: Hiểu biết nhiều kỹ thuật kỹ xảo lập trình Java Phân tích thiết kế theo hướng đối tượng theo hướng chuyên nghiệp Nâng cao tinh thần tự học, tự nghiên cứu • Về chương trình Chương trình thực yêu cầu đề đề tài đồ án sở Ứng dụng “App ôn thi trắc nghiệm tiếng anh” có giao diện đơn giản, dễ sử dụng đáp ứng số chức chính: Giúp cho học sinh có kiến thức gần gũi với học lớp Giao diện đơn giản, dễ sử dụng 23 5.2 Hạn chế Do thời gian thực phân tích thiết kế hệ thống tương đối hạn chế so với đề tài tương đối rộng phong phú nên khơng tránh khỏi thiếu sót định Bên cạnh đó, chương trình chưa có chức tìm kiếm để giúp người dùng dễ tìm tập tin có thời gian lưu trữ lâu 5.3 Hướng phát triển • • • • Phát triển chương trình tảng IOS, Windowphone Thêm chức tạo độ khó Thêm chức … Đưa ứng dụng lên CHPlay Tài liệu tham khảo https://viettimes.vn/kham-pha-lich-su-cua-he-dieuhanh-android-nguon-goc-bieu-tuong-va-ten-goi-toankeo-banh-post83632.html https://www.howkteam.vn/course/khoa-hoc-lap-trinhandroid-co-ban/luu-tru-du-lieu-voi-sqlite-1215 https://vncoder.vn/bai-hoc/sqlite-la-gi-uu-va-nhuocdiem-cua-sqlite-182 https://www.howkteam.vn/course/phan-tich-thiet-kephan-mem/tao-luoc-do-use case-trong-pttkpm-1415 https://trainghiemso.vn/android-automotive-emulatorla-gi 24