Môn học Phát triển ứng dụng cho thiết bị di động. Android là nền tảng di động phổ biến nhất. Nội dung báo cáo gồm: Giới thiệu nền tảng Android Phát biểu bài toán Phân tích thiết kế hệ thống Cài đặt cà kiểm thử ứng dụng Đồ án, đồ án môn học, bài tập lớn, project.
BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC CÔNG NGHỆ ĐÔNG Á BÀI TẬP LỚN HỌC PHẦN: PHÁT TRIỂN ỨNG DỤNG CHO THIẾT BỊ DI ĐỘNG BÀI TẬP LỚN: THIẾT KẾ ỨNG DỤNG TRUYỆN CƯỜI TRÊN TRÊN ANDROID Sinh viên thực Nguyễn Văn An Nguyễn Xuân Bách Sử Ngọc Duy Khóa 9 Lớp DCCNTT9.10.IT2 DCCNTT9.10.IT2 DCCNTT9.10.IT2 Bắc Ninh, tháng 10 năm 2021 Mã sinh viên 187480201109 187510301222 187480201025 BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC CÔNG NGHỆ ĐÔNG Á BÀI TẬP LỚN HỌC PHẦN: PHÁT TRIỂN ỨNG DỤNG CHO THIẾT BỊ DI ĐỘNG Nhóm: 04 BÀI TẬP LỚN: THIẾT KẾ ỨNG DỤNG TRUYỆN CƯỜI TRÊN ANDROID STT Sinh viên thực Nguyễn Văn An Nguyễn Xuân Bách Sử Ngọc Duy Khóa Lớp Mã sinh viên IT2 187480201109 9 IT2 IT2 187510301222 187480201025 Điểm số Điểm chữ CÁN BỘ CHẤM CÁN BỘ CHẤM (Ký ghi rõ họ tên) (Ký ghi rõ họ tên) Bắc Ninh, tháng 10 năm 2021 Ký tên SV LỜI MỞ ĐẦU Cùng với phát triển vượt bậc công nghệ số phát triển vượt bậc số thiết bị di động Với chức liên lạc, thiết bị di động gần thiếu sống người, phổ biến toàn giới Ngoài ra, thiết bị di động cịn có nhiều tính giúp ích cho người dùng sống Nó cơng cụ làm việc máy tính mini, cơng cụ giải trí,… Sự bùng nổ smartphone ngày phát triển hệ điều hành điện thoại, điển hình Android iOS tạo nên thị trường đa dạng cho xu hướng từ App Mobile để phát triển mạnh mẽ Từ năm 2011 đến nay, xu hướng người đọc sách chuyển từ sách vật lý sang sách điện tử ngày gia tăng mạnh mẽ nhờ lợi ích tiện lợi giải trí nhanh chóng Thì sách nói chung truyện cười nói riêng phát triển theo - ứng dụng nhẹ nhàng, thân thiện, dễ sử dụng tiện lợi, giống chức điện thoại di động Để giải trí lúc nơi tùy theo nhu cầu thư giãn nhẹ nhàng tiêu dùng Với tốc độ phát triển công nghệ ngày nay, thói quen đọc sách thay đổi, đặc biệt điện thoại thông minh trở nên phổ biến Nắm bắt xu hướng này, nhà xuất nhà sách lựa chọn phát triển sách điện tử để khai thác thị trường màu mỡ với 55 triệu người dùng internet ngày Việt Nam Để không trôi xa trào lưu đọc sách điện tử độc giả, nhóm định tìm hiểu thực đề tài “Thiết kế ứng dụng truyện cười Android”.Trong chủ đề này, nhóm trình bày nhìn lập trình ứng dụng Android Studio demo ứng dụng MỤC LỤC LỜI MỞ ĐẦU MỤC LỤC DANH MỤC HÌNH ẢNH MỞ ĐẦU Lý chọn đề tài: Mục đích yêu cầu đề tài: Đối tượng nghiên cứu: Phạm vi nghiên cứu: Phương pháp nghiên cứu: Bố cục đề tài: CHƯƠNG CƠ SỞ LÝ THUYẾT 1.1 Tổng quan Android 1.1.1.Tầng hạt nhân Linux 1.1.2.Tầng hạt nhân Library: 1.1.3 Android runtime: 10 1.1.4 Tầng Application Framework: 10 1.1.5 Tầng Application: 11 1.2 Tổng quan Android Studio: 12 1.2.1 Khái niệm: 12 1.2.2 Mục đích: 12 1.2.3 Tính năng: 12 CHƯƠNG 2: PHÁT TRIỂN ỨNG DỤNG 13 2.1 Thiết kế ứng dụng: 13 2.1.1 Tạo ứng dụng: 13 2.1.2 Cách biên dịch file APK Android Studio: 17 KẾT QUẢ VÀ HƯỚNG PHÁT TRIỂN 18 Cài đặt: 18 1.1 Link demo sản phẩm: 18 Kết quả: 19 2.1 Ưu điểm: 19 2.2 Nhược điểm: 19 TÀI LIỆU THAM KHẢO 20 DANH MỤC HÌNH ẢNH Hình 2.2 Tạo Project 14 Hình 2.4 Tạo Emty Activity 15 Hình 2.5 Project tổng thể 16 Hình 2.6 Biên dịch file APK 17 Hình 2.7 Thông báo sau bên dịch công file APK 18 Hình 2.8 File APK 18 MỞ ĐẦU Lý chọn đề tài: Cùng với phát triển vượt bậc công nghệ số phát triển vượt bậc số thiết bị di động Với chức liên lạc, thiết bị di động gần thiếu sống người, phổ biến toàn giới Ngoài ra, thiết bị di động cịn có nhiều tính giúp ích cho người dùng sống Nó cơng cụ làm việc máy tính mini, cơng cụ giải trí,… Sự bùng nổ smartphone ngày phát triển hệ điều hành điện thoại, điển hình Android iOS tạo nên thị trường đa dạng cho xu hướng từ App Mobile để phát triển mạnh mẽ Từ năm 2011 đến nay, xu hướng người đọc sách chuyển từ sách vật l{ sang sách điện tử ngày gia tăng mạnh mẽ nhờ lợi ích tiện lợi giải trí nhanh chóng Thì sách nói chung truyện cười nói riêng phát triển theo - ứng dụng nhẹ nhàng, thân thiện, dễ sử dụng tiện lợi, giống chức điện thoại di động Để giải trí lúc nơi tùy theo nhu cầu thư giãn nhẹ nhàng tiêu dùng Với tốc độ phát triển công nghệ ngày nay, thói quen đọc sách thay đổi, đặc biệt điện thoại thông minh trở nên phổ biến Nắm bắt xu hướng này, nhà xuất nhà sách lựa chọn phát triển sách điện tử để khai thác thị trường màu mỡ với 55 triệu người dùng internet ngày Việt Nam Để không trôi xa trào lưu đọc sách điện tử độc giả, nhóm định tìm hiểu thực đề tài “Thiết kế ứng dụng Truyện cười Android”.Trong chủ đề này, nhóm trình bày nhìn lập trình ứng dụng Android Studio demo ứng dụng Mục đích yêu cầu đề tài: - Xây dựng chức app đọc truyện - Ứng dụng hiển thị chức thông tin đầy đủ truyện Đối tượng nghiên cứu: - App phù hợp với lứa tuổi Phạm vi nghiên cứu: - Khái niệm đặc điểm, mơ hình hướng dịch vụ, cách thức hoạt động, mơ hình triển khai ưu nhược điểm - Khái niệm, kiến trúc hoạt động, thành phần chức ứng dụng Phương pháp nghiên cứu: - Phương pháp nghiên cứu lý thuyết: tiến hành thu thập tài liệu, thông tin liên quan tới đề tài - Xây dựng chương trình theo mục tiêu đề - Phân tích, thiết kế hệ thống chương trình phù hợp - Tìm hiểu cơng cụ lập trình cách sử dụng Bố cục đề tài: Nội dung báo cáo gồm thành phần sau: MỞ ĐẦU - Chương Cơ sở lý thuyết - Chương Thiết kế ứng dụng KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN TÀI LIỆU THAM KHẢO CHƯƠNG CƠ SỞ LÝ THUYẾT 1.1 Tổng quan Android Android hệ điều hành dựa tảng Linux thiết kế dành cho thiết bị di động có hình cảm ứng điện thoại thơng minh máy tính bảng Ban đầu, Android phát triển Android, Inc với hỗ trợ tài từ Google sau Google mua lại vào năm 2005 Vào năm 2007 android mắt với tuyên bố thành lập Liên minh thiết bị cầm tay mở: hiệp hội gồm công ty phần cứng, phần mềm, viễn thông với mục tiêu đẩy mạnh tiêu chuẩn mở cho thiết bị di động Tháng 10 năm 2008, điện thoại chạy Android đưa vào thị trường tiêu dùng Kiến trúc hệ điều hành Android gồm có tầng từ lên tầng hạt nhân Linux, tầng Libraries & Android runtime, tầng Application Framework tầng Application 1.1.1.Tầng hạt nhân Linux Hệ điều hành Android phát triển dựa hạt nhân Linux, cụ thể hạt nhân phiên Linux phiên 2.6, điều thể lớp Tất hoạt động điện thoại muốn thi hành thực mức cấp thấp Ở lớp bao gồm quản lý nhớ (memory management), giao tiếp với phần cứng (driver model), thực bảo mật (security), quản lý tiến trình (process) Tuy phát triển dựa vào nhân Linux thực nhân Linux nâng cấp chỉnh sửa nhiều để phù hợp với tính chất thiết bị cầm tay, hạn chế vi xử l{, dung lượng nhớ, kích thước hình, nhu cầu kết nối mạng không dây Các thành phần chủ yếu: - Display Driver: Điều khiển việc hiển thị lên nhận điều khiển người dùng hình (di chuyển, cảm ứng,…) - Camera Driver: Điều khiển hoạt động camera, nhận luồng liệu từ camera trả - Bluetooth Driver: Điều khiển thiết bị thu phát sóng Bluetooth - USB Driver: Quản lý hoạt động cổng giao tiếp USB - Keypad Driver: Điều khiển bàn phím - Wifi Driver: Chịu trách nhiệm việc thu phát sóng wifi - Audio Driver: Điều khiển thu phát âm thanh, giải mã tín hiệu dạng audio thành tín hiệu số ngược lại - Binder IPC Driver: Chịu trách nhiệm kết nối liên lạc với mạng vô tuyến CDMA, GSM, 3G, 4G, E để đảm bảo chức truyền thông thực - M-System Driver: Quản lý việc đọc ghi lên thiết bị thẻ nhớ SD, flash - Power Management: Giám sát việc tiêu thụ điện 1.1.2.Tầng hạt nhân Library: Phần có nhiều thư viện viết C/C++ để phần mềm sử dụng, thư viện tập hợp thành số nhóm như: - Thư viện hệ thống (System C Library): Thư viện dựa chuẩn C, sử dụng hệ điều hành - Thư viện Media (Media Libraries): Có nhiều code để hỗ trợ việc phát ghi loại định dạng âm thanh, hình ảnh, video thơng dụng - Thư viện Web (LibWebCore): Đây thành phần để xem nội dung web, sử dụng để xây dựng phần mềm duyệt web (Android Browse) để ứng dụng khác nhúng vào Nó cực kz mạnh, hỗ trợ nhiều công nghệ cao HTML5, JavaScript, CSS, DOM, AJAX,… - Thư viện SQLite: Hệ sở liệu để ứng dụng sử dụng 1.1.3 Android runtime: Phần chứa thư viện mà chương trình viết ngơn ngữ Java hoạt động Runtime có phận tương tự mơ hình chạy Java máy tính thường Thứ thư viện lõi (Core Library), chứa lớp Java IO, Collection, File Access Thứ hai máy ảo Java (Dalvik Virtual Machine) Mặc dù viết ngôn ngữ Java ứng dụng Java Android không chạy JRE Sun mà chạy máy ảo Dalvik Google phát triển 1.1.4 Tầng Application Framework: Tầng xây dựng công cụ - phần tử mức cao để lập trình viên nhanh chóng xây dựng ứng dụng Nó viết Java, có khả sử dụng chung để tiết kiệm tài nguyên Đây tảng mở, điều có lợi ích: - Với hãng điện thoại: Có thể tùy biến để phù hợp với cấu hình điện thoại mà họ sản xuất để có nhiều mẫu mã, style hợp thị hiếu người dùng Vì nên chung tàng Android mà điện thoại Google khác với Samsung, T-Mobile, HTC, Motorola, … 10 - Với lập trình viên: Cho phép lập trình viên sử dụng API tầng mà không cần phải hiểu rõ cấu trúc bên dưới, tạo điều kiện cho lập trình viên tự sáng tạo cần quan tâm đến nội dung mà ứng dụng họ làm việc Một tập hợp API hữu ích xây dựng sẵn hệ thống định vị, dịch vụ chạy nền, liên lạc ứng dụng, thành phần giao diện,… 1.1.5 Tầng Application: Đây tầng ứng dụng giao tiếp với người dùng, bao gồm ứng dụng như: - Các ứng dụng bản, cài đặt liền với hệ điều hành: gọi điện, quản lý danh bạ, duyệt web, nhắn tin, lịch làm việc, đọc gmail, quay phim chụp ảnh,… - Các ứng dụng cài thêm trò chơi, từ điển, phần mềm học tiếng anh Các chương trình có đặc điểm là: - Viết ngơn ngữ Java có phần mở rộng APK - Khi ứng dụng chạy, có phiên Virtual Machine dựng lên để phục vụ cho - Android hệ điều hành đa nhiệm, điều có nghĩa thời điểm, có nhiều chương trình chạy lúc, nhiên với ứng dụng có thực thể (instance) phép chạy mà thơi Điều có tác dụng hạn chế làm dụng tài nguyên, giúp hệ thống hoạt động tốt - Các ứng dụng gán số ID người sử dụng nhằm phân định quyền hạn sử dụng tài nguyên, cấu hình phần cứng hệ thống - Android hệ điều hành có tính mở, khác với nhiều hệ điều hành di động khác, Android cho phép ứng dụng bên thứ chạy Các ứng dụng có hạn chế khơng sử dụng q 5% cơng suất CPU Điều nhằm tránh độc quyền sử dụng CPU - Ứng dụng khơng có điểm vào cố định, khơng có phương thức main để bắt đầu 11 1.2 Tổng quan Android Studio: 1.2.1 Khái niệm: Android Studio môi trường phát triển dạng tích hợp dành cho tảng Android với chức như: Thiết kế giao diện cho người dùng, thực thay đổi sản phẩm thời gian thực,… Bởi phần mềm hồn tồn miễn phí nên bạn tải cho phép bạn triển khai code thành ứng dụng Android vô dễ dàng 1.2.2 Mục đích: Android Studio tạo nên với mục đích để thay phiên plugin android dùng cho Eclipse thời trước với hợp tác Google JetBrains Chức quan trọng Android Studio cung cấp giao diện giúp người sử dụng tạo ứng dụng xử l{ cơng cụ có file phức tạp sau hậu trường Java ngơn ngữ lập trình Android Studio sử dụng cài sẵn thiết bị 1.2.3 Tính năng: Vì đặc điểm đặc trưng cấu tạo Android Studio nên trình soạn thảo mã công cụ phát triển mạnh mẽ IntelliJ Android Studio cung cấp tính nâng cao để làm tăng hiệu suất bạn việc xây dựng ứng dụng Android Ví dụ tiêu biểu như: 12 - Khi bạn muốn mơi trường hợp nơi để phát triển cho tất thiết bị AndroidInstant Run Nhằm đẩy thay đổi vào ứng dụng hoạt động mà không cần phải xây dựng APK - Các mẫu mã tích hợp với GitHub giúp bạn xây dựng tốt tính ứng dụng phổ biến nhập mã mẫu - Các công cụ khuôn khổ thử nghiệm giúp mở rộng Lint công cụ nhằm nâng cao hiệu suất khả sử dụng để tương thích với phiên - Một hệ thống để xây dựng Gradle linh hoạt - Trình mơ nhanh với tính phong phú CHƯƠNG 2: PHÁT TRIỂN ỨNG DỤNG 2.1 Thiết kế ứng dụng: Ý tưởng thiết kế ứng dụng: Nhóm muốn thiết kế ứng dụng đọc truyện cười mà người dùng truy cập lúc nơi Với giao diện đơn giản kho nội dung phong phú, tương tự thư viện truyện cười thu nhỏ điện thoại người dùng Các sách điện tử cập nhật thêm thường xuyên ứng dụng Ứng dụng chia mẩu truyển thành nhiều chủ đề, nhằm phù hợp với nhu cầu người đọc 2.1.1 Tạo ứng dụng: - Tạo dự án: Trên Android Studio tạo project: vào menu File/New Project 13 Hình 2.1 Tạo Project Name: TruyenCuoi Tiếp theo bạn cần tạo thêm Activity Trên Android Studio chọn: File > New > Activity > Empty Activity 14 Hình 2.2 Tạo Emty Activity 15 Hình 2.3 Project tổng thể 16 2.1.2 Cách biên dịch file APK Android Studio: Click vào Build → Build bundle(s) / APK(s) → Build APK(s) Hình 2.4 Biên dịch file APK Sau build xong có hộp thoại thơng báo sau: 17 Hình 2.5 Thơng báo sau bên dịch công file APK Click vào locate để xem vị trí file apk sau Build File: app-debug.apk file sau Build Hình 2.6 File APK KẾT QUẢ VÀ HƯỚNG PHÁT TRIỂN Cài đặt: Đã cài đặt lên máy thật chạy thành công 1.1 Link demo sản phẩm: Trên máy ảo: https://drive.google.com/file/d/1GsqtWbnuOVezhOozKK7MhdRtMx3W9YVe/vie w?usp=sharing 18 Kết quả: 2.1 Ưu điểm: Không tốn nhiều dung lượng tải Trò chơi tối ưu hoá để tiết kiệm pin Thao tác đơn giản Phong phú nội dung Tính giải trí cao 2.2 Nhược điểm: Vẫn cịn chưa đa dạng hóa giao diện Về mặt âm hạn chế 19 TÀI LIỆU THAM KHẢO STT Link 1, Cùng học IT 247 | Kho tài liệu CNTT miễn phí (cunghocit24.com) 2, Hướng Dẫn Các Bước Xuất File Apk Trong Android Studio ? How Do I Export A Project In The Android Studio (viglacerabahien.com) 3, Android Studio gì? - QuanTriMang.com 4, Truyện cười 2020, Cười vỡ bụng | Truyen Cuoi Hay 5, Xu hướng phát triển sách điện tử Việt Nam | VTV.VN 20