1. Trang chủ
  2. » Luận Văn - Báo Cáo

BTL Phát triển ứng dụng trên thiết bị di động

60 72 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Ứng dụng Quản lý thu chi - quản lý chi tiêu
Tác giả Phạm Hoàng Long, Quyền Ngọc Minh, Vũ Đức Long, Mai Đăng Khoa, Phạm Văn Bình
Người hướng dẫn ThS. Nguyễn Thái Cường
Trường học Đại học Công nghiệp Hà Nội
Chuyên ngành Công nghệ thông tin
Thể loại Báo cáo thực nghiệm
Năm xuất bản 2022
Thành phố Hà Nội
Định dạng
Số trang 60
Dung lượng 1,31 MB

Nội dung

TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI Khoa Công nghệ thông tin Báo cáo thực nghiệm Học phần Phát triển ứng dụng trên thiết bị di động Đề tài Ứng dụng Quản lý thu chi quản lý chi tiêu Giảng viên hướng dẫn T.

RƯỜNG ĐẠI HỌC CƠNG NGHIỆP HÀ NỘI Khoa Cơng nghệ thông tin Báo cáo thực nghiệm Học phần: Phát triển ứng dụng thiết bị di động Đề tài: Ứng dụng Quản lý thu chi - quản lý chi tiêu Giảng viên hướng dẫn : ThS.Nguyễn Thái Cường Nhóm sinh viên thực : Nhóm 1 Phạm Hồng Long - 2019605663 Quyền Ngọc Minh - 2019606061 Vũ Đức Long - 2019605292 Mai Đăng Khoa - 2019 Phạm Văn Bình - 2019 Lớp : IT6029.4 – K14 Hà Nội – 2022 ii Mục Lục LỜI CẢM ƠN Trong suốt thời gian học tập thực đồ án tốt nghiệp em nhận hướng dẫn nhiệt tình từ phía nhà trường thầy giáo Vì thế, lời em xin chân thành cảm ơn trường Đại học Công nghiệp Hà Nội, thầy cô giáo khoa Công nghệ thông tin tạo điều kiện thuận lợi truyền dạy kiến thức cho em thời gian qua để em hoàn thành đề tài cách tốt Và hết em xin bày tỏ lòng biết ơn sâu sắc tới thầy giáo hướng dẫn ThS Nguyễn Thái Cường tận tình giúp đỡ, định hướng em nhiều suốt trình tìm hiểu nghiên cứu hồn thành đồ án tốt nghiệp Khi thực nghiên cứu đề tài, em cố gắng hoàn thành tốt báo cáo đồ án tốt nghiệp Tuy nhiên kiến thức chuyên ngành thân cịn nhiều hạn chế Vì báo cáo khơng tránh khỏi thiếu sót, em mong nhận đóng góp tất thầy cô giáo để đồ án em đầy đủ hoàn chỉnh Em xin chân thành cảm ơn! MỞ ĐẦU Lý chọn đề tài Khi thời đại công nghệ thông tin ngày phát triển mạnh mẽ đòi hỏi người phải làm việc với cường độ cao tập trung Hằng ngày phải đối mặt với khối lượng công việc dày đặc khiến cho dễ quên bỏ lỡ công việc quan trọng Điều dẫn đến hậu ảnh hưởng lớn đời sống công việc Chính lập lịch cá nhân sử dụng ứng dụng để nhắc việc giải pháp thiết yếu cá nhân giúp cho việc quản lý công việc hàng ngày tốt hiệu Từ nhu cầu thực tế nên em thực đề tài “Xây dựng ứng dụng quản lý chi tiêu tảng Android”, giúp người dùng lên kế hoạch công việc đặt thông báo nhắc nhở để thực cơng việc hẹn Đối tượng, mục tiêu phạm vi nghiên cứu a Mục tiêu nghiên cứu - Phân tích, hiểu tốn nghiệp vụ thực tế - Tìm hiểu cơng nghệ xây dựng tảng Android - Xây dựng ứng dụng nhắc việc đáp ứng đầy đủ yêu cầu đặt - Về phía người dùng, đảm bảo động dễ dàng quản lý thông tin khoản chi tiêu b Đối tượng nghiên cứu - Ngơn ngữ lập trình Java , Kotlin - Cơng cụ lập trình Android Studio - Mơ hình MVVM - Cơ sở liệu c Phạm vi nghiên cứu Ứng dụng xây dựng đáp ứng chức sau: • Quản lý chi tiêu • Quản lý loại nhắc nhở • Thống kê phần trăm mức độ chi tiêu theo thời gian thực • Đăng nhập • Đồng liệu • Thông báo Phương pháp nghiên cứu - Phương pháp nghiên cứu mặt lý thuyết: ▪ Nghiên cứu tiến hành thu thập tài liệu có liên quan đến đề tài ▪ Tổng hợp tài liệu thu thập tiến hành phân tích ▪ Chọn lọc tài liệu nghiên cứu để báo cáo đồ án tốt nghiệp - Phương pháp nghiên cứu thực nghiệm: ▪ Tìm hiểu cách thức, tiêu chí kiểm thử chức ▪ Phân tích ứng dụng có chức tương tự ▪ Phân tích tiến hành xây dựng ứng dụng theo phân tích yêu cầu thực tế ▪ Tìm hiểu ngơn ngữ lập trình Java, cơng cụ lập trình Android Studio, mơ hình MVVM, sở liệu Realm ▪ Áp dụng công nghệ vào xây dựng hệ thống ▪ Tổng hợp tất kiến thức học hoàn thành báo cáo CHƯƠNG TỔNG QUAN VỀ NỘI DUNG NGHIÊN CỨU 1.1 Giới thiệu chung Hiện nay, việc xếp công việc cách khoa học hiệu không bị chồng chéo, thời gian, tiến độ vô quan trọng ngày phải đối mặt với khối lượng cơng việc lớn Vì vậy, cần có giải pháp giúp cho việc quản lý cơng việc người dễ dàng hiệu Nhờ vào phát triển ứng dụng vô phong phú hiệu điện thoại thông minh tạo tiện ích giúp người giải khó khăn, dần trở thành công cụ thiếu người Từ thực tế ứng dụng nhắc nhở đời để đáp ứng nhu cầu quản lý công việc, tạo nhắc việc cho cá nhân tăng hiệu công việc tạo lịch làm việc khoa học 1.2 Cơ sở lý thuyết 1.2.1 Tổng quan lập trình di động Android công cụ phần mềm mã nguồn mở dựa nhân Linux 2.6 dành cho tảng di động phát triển Google Open Handset Alliance (tổ chức đa quốc gia Google lập, nhằm xây dựng điện thoại tốt dựa Android) Hàng trăm triệu thiết bị Android toàn cầu minh chứng cho phát triển mạnh mẽ tảng Những đặc tính trội hệ điều hành Android so với hệ điều hành di động khác: • Android thực mở, tảng phát triển dựa Linux mã nguồn mở: Các nhà sản xuất thiết bị nhà phát triển u thích Android họ sử dụng tùy chỉnh mà khơng phải trả tiền quyền • Cung cấp dịch vụ tảng phát triển ứng dụng • Hỗ trợ ngơn ngữ lập trình Java, C/C++ • Dễ dạng xây dựng, chỉnh sửa, nâng cấp ứng dụng • Tối ưu hóa cho thiết bị với nguồn lượng thấp nhớ hạn chế • Đồ họa âm chất lương cao • Tương thích với nhiều kiến trúc phần cứng khác • Được hỗ trợ mạnh mẽ từ Google Kiến trúc hệ điều hành Android Linux Kernel: Android xây dựng dựa nhân Linux hệ điều hành đa nhiệm thực Nhân Linux cung cấp tầng ảo hóa phần cứng cho Android, giúp Android thích hợp với đa dạng tảng phần cứng Libraries: Các thư viện chia sẻ toàn viết C/C++, biên dịch phù hợp với đặc thù kiến trúc phần cứng sử dụng thiết bị di động, cài đặt sẵn nhà sản xuất Một số thư viện quan trọng như: • Surface Manager: Quản lý cửa sổ, hiển thị, hiệu ứng • 2D, 3D Graphics: Thư viện đồ họa sử dụng phần cứng 3D (nếu có) cơng cụ hỗ trợ nhanh (nếu khơng) • Media codecs: Android chơi nhiều định dạng video âm như: AAC, AVC, H.263, MP3, MP4 • SQLite database: Công cụ sở liệu gọn nhẹ • Browser engine: để hỗ trợ xây dựng ứng dụng duyệt web, Android sử dụng Webkit libraries Android Runtime: gồm thư viện lõi Java, máy ảo Dalvik (tối ưu hóa cho nhớ hạn chế, cho phép nhiều VM chạy đồng thời tạo thuận lợi cho hệ điều hành lõi (Linux) bảo mật độc lập tiến trình) Application Framework: tầng cung cấp thành phần cấp cao để tạo ứng dụng, mặc định cài sẵn, nhà phát triển kế thừa thành phần Một số thành phần quan trọng: • • Activity manager: điều khiển vịng đời ứng dụng • Content providers: đối tượng liệu đóng gói cần thiết để chia sẻ ứng dụng (ví dụ danh bạ) • Resource manager: quản lý tài nguyên ứng dụng (những thứ code xâu kí tự, hình ảnh, âm ) Location manager: cho phép xác định vị trí thiết bị dựa vào GPS Google Maps • Notification manager: quản lý thơng báo đến người dùng (ví dụ như: có tin nhắn, lịch, cảnh báo ) Application: Android cung cấp số ứng dụng tiêu chuẩn kèm thiết bị như: ứng dụng gọi điện, danh bạ, SMS, Email, đồ, trình duyệt, danh bạ, cho nhà phát triển 1.2.2 Tổng quan mơ hình MVVM MVVM viết tắt Model - View - ViewModel, mơ hình hỗ trợ two-way data binding View View Model Cụ thể mơ hình MVVM trình bày sau:  View Tương tự mơ hình MVC, View phần giao diện ứng dụng để hiển thị liệu nhận tương tác người dùng Một điểm khác biệt so với ứng dụng truyền thống View mơ hình tích cực hơn, có khả thực hành vi phản hồi lại người dùng thông qua tính binding, command  Model Cũng tương tự mơ hình MVC, Model đối tượng giúp truy xuất thao tác liệu thực  View Model Là lớp trung gian View Model View Model xem thành phần thay cho Controller mơ hình MVC Nó chứa mã lệnh thực Data Binding, Command Một điểm cần lưu ý mơ hình MVVM, tầng bên khơng biết thơng tin tầng Một định nghĩa khác ViewModel MVVM: ViewModel đảm nhận công việc đồng liệu từ Model lên View Mối quan hệ View View-Model View ánh xạ tới View Model ViewModel lại thơng tin View ẩn giấu qua cách sử dụng Data-binding chế mơ hình Observer, ViewModel ánh xạ từ nhiều View Lưu ý: Trong mơ hình MVVM, tầng bên khơng biết thơng tin tầng bên ViewModel khơng biết View, ViewModel sử dụng cho nhiều View thường gọi binding data, chiều chiều tùy nhu cầu ứng dụng Thông thường sử dụng với MVVM nên tạo thư mục chứa file code liên quan  Views Tại chứa file giao diện file giao diện có class codebehind kèm Đặc biệt file code-behind ta không sử dụng đến, điều cần làm chuyển xuống class ViewModel Tất nhiên bạn code file code-behind XAML đồng nghĩa điều phá vỡ quy ước MVVM Bạn khai báo thuộc tính datacontext vài thiết lập khác nên hạn chế tối thiểu code Views sử dụng để kết hợp với mơ hình MVVM, Nó dùng để cung cấp chia tách gọn gàng khái niệm UI presentation logic data  Models Trong thư mục Models tạo tầng chứa liệu liên kết validation, logic nghiệp vụ để chắn tính tồn vẹn data, bạn tách 2.5.2 Giao diện Quản lý loại nhắc nhở Hình 2.18: Giao diện Hiện thị nhắc nhở theo loại Hình 2.19: Giao diện Thêm, Sửa loại nhắc nhở 2.5.3 Giao diện Thống kê Hình 2.20: Giao diện Hiện thị thống kê 2.5.4 Giao diện Đăng nhập Hình 2.21: Giao diện Đăng nhập 2.5.5 Giao diện Đồng Hình 2.22: Giao diện Đồng liệu 2.5.6 Giao diện Thơng báo Hình 2.23: Giao diện Thơng báo 2.6 Thiết kế sở liệu Hình 2.24: Cơ sở liệu CHƯƠNG KẾT QUẢ 3.1 Cài đặt môi trường Trong q trình cài đặt mơi trường - Cài đặt xcode + Bước 1: Mở Appstore, tìm kiềm Xcode tìm kiếm + Bước 2: Ấn nút download để thực tải cài đặt phiên Xcode Hình 3.1: Phần mềm Xcode Appstore - Cài đặt xcodegen + Bước 1: Mở terminal, thực cài homebrew đoạn lệnh sau /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh" Hình 3.2: Cửa sổ terminal cài đặt homebrew Khi cài homebrew thành công, thực brew -v để kiểm tra version homebrew, đồng thời xác nhận việc cài homebrew thành công + Bước 2: Cài đặt xcodegen đoạn lệnh brew install xcodegen + Bước 3: Thực kiểm tra version xcodegen để đảm bảo trình cài đặt thực thành công câu lệnh xcodegen – version 3.2 Cài đặt chương trình - Truy cập vào thư mục project terminal - Cài Xcodegen để có generate file xcodeproj Nếu máy chưa cài xcodegen cài thơng qua câu lệnh “brew install xcodegen” - Chạy câu lệnh “xcodegen” để tạo file xcodeproject Hình 3.3: Generate file xcodeproj thành công - Mở file xcodeproj vừa tạo xcode Hình 3.4: Giao diện project Xcode - Ở bên trái, ta thấy cấu trúc thư mục, tệp tin project - Base: nơi chứa base code, giúp cho việc tổ chức code, thuận tiện - Common: chứa object dùng cho toàn project, extensions, resources, helper, … - MVVM: Nơi tổ chức code theo mơ hình MVVM + DAO: Chứa class DAO giúp cho việc tương tác với sở liệu + Enum: Nơi định nghĩa enum + Model: Nơi chứa model, Model MVVM + ViewController: nơi chứa class ViewController giao diện, View MVVM + ViewModel: nơi chứa class ViewModel, ViewModel MVVM - Để thực build ứng dụng lên thiết bị di động thiết bị ảo, ta nhấn phím tắt command + R Hình 3.5: Ứng dụng build thành công thiết bị simulator 3.3 Kết thu Hệ thống xây dựng với chức năng, là: • • • • • • Quản lý nhắc nhở Quản lý loại nhắc nhở Thống kê Đăng nhập Đồng liệu Thông báo 3.4 Kết kiểm thử Bảng 3.1: Kiểm thử chức ứng dụng STT Nội dung Mục đích kiểm thử Quản lý nhắc nhở Kiểm tra chức “Thêm nhắc nhở” Kiểm tra chức Đầu vào Đầu mong muốn Nhập Thêm liệu hợp lệ nhắc nhở thành công Nhập Không thêm liệu không hợp lệ nhắc nhở Cập nhật Nhập liệu hợp lệ nhắc nhở thành công Kết Pass Pass Pass “Sửa nhắc nhở” Kiểm tra chức “Xóa nhắc nhở” Kiểm tra chức “Hiển thị nhắc nhở” Kiểm tra chức “ Tìm kiếm nhắc nhở” Quản lý loại nhắc nhở Kiểm tra chức “Hiển thị danh sách loại nhắc nhở” Kiểm tra chức “Thêm loại nhắc nhở” Kiểm tra chức “Sửa loại nhắc nhở” Kiểm tra chức Hiển thị Nhập liệu không thông báo yêu cầu nhập hợp lệ lại Xóa thành Đồng ý cơng nhắc xóa nhở khỏi danh sách Nhấn Hiển thị button danh sách nhắc nhở theo lựa chọn Nhập tên Hiển thị danh nhắc nhở sách nhắc có tồn nhở chứa ký tự vừa nhập hình Nhập tên Khơng hiển nhắc nhở thị ghi khơng tồn Có Hiển thị đủ trang chủ danh sách loại nhắc nhở hình home Pass Nhập Thêm liệu hợp lệ loại nhắc nhở thành công Nhập Hiển thị liệu không thông báo hợp lệ yêu cầu nhập lại Nhập Sửa thành liệu hợp lệ công Nhập Hiển thị liệu không thông báo hợp lệ yêu cầu nhập lại Xóa thành Đồng ý cơng loại xóa nhắc nhở Pass Pass Pass Pass Pass Pass Pass Pass Pass Pass 10 Thống kê 11 Đăng nhập 12 13 Đồng liệu 14 16 17 Thơng báo “Xóa loại nhắc nhở” Kiểm tra chức “Thống kê nhắc nhở” Thống kê mức độ nhắc nhở Kiểm tra chức “Đăng nhập với Google” Nhập thông tin tài khoản hợp lệ Kiểm tra chức “Đăng nhập với Apple” Nhập thông tin khơng hợp lệ Chọn thơng tin hình Kiểm tra chức “Đồng lên server” Kiểm tra chức “Đồng từ server máy” Kiểm tra chức mạng Kiểm tra chức “Thông báo” Chọn nút đẩy lên Hiển thị danh Pass sách thống kê nhắc nhở: hoàn thành; hạn; tiếp tục Đăng nhập Pass thành công thị thông tin hình Home Hủy bỏ đăng Pass nhập Pass Đăng nhập thành công thị thông tin hình Home Đồng lên Pass thành cơng Chọn nút tải từ server Đồng thành công Pass Chọn nút đồng Hiển thị thông báo Pass Tạo nhắc nhở thành cơng Thơng báo lên hình thơng tin, Pass KẾT LUẬN  Đánh giá kết - Phần hồn thành • Về mặt cơng nghệ, em tìm hiểu nắm bắt quy trình để xây dựng ứng dụng iOS, tìm hiểu cách sử dụng trình soạn thảo Xcode • Hồn thiện khảo sát phân tích thiết kế hệ thống “Ứng dụng nhắc nhở” • Lập trình thành thạo với ngơn ngữ Swift framework UIKit - Phần chưa hoàn thành • Cần hoàn thiện thêm giao diện để khách hàng dễ sử dụng  Hướng phát triển • Thiết kế lập trình mở rộng chức năng: Quét tài liệu, Thêm hình ảnh, chụp ảnh vào nhắc nhở; Đồng tự động • Hỗ trợ thêm chế độ Dark mode • Hỗ trợ giao diện dạng widget cho ứng dụng hình điện thoại • Hỗ trợ giao diện ứng dụng watchOS, macOS • Cải thiện mượt mà ứng dụng Nâng cao trải nghiệm người dùng • Em mong tiếp tục nhận giúp đỡ tạo điều kiện thầy nhà trường để em có hội phát triển, hoàn thiện ứng dụng tốt thời gian tới TÀI LIỆU THAM KHẢO [1] Tổ HTTT Đại học Cơng Nghiệp Hà Nội – Giáo trình hệ quản trị sở liệu SQL [2] Tổ HTTT Đại học Cơng Nghiệp Hà Nội – Giáo trình phân tích thiết kế hệ thống [3] https://viblo.asia/p/tim-hieu-ve-mo-hinh-mvvm-maGK7vW95j2 [online] [4] https://vi.wikipedia.org/wiki/Swift_(ngơn_ngữ_lập_trình) [online] [5] https://developer.apple.com/documentation/uikit/ [online] [6] https://medium.com/excellentweb/an-introduction-to-realm-database2881f0f8c231 [online] [7] https://www.mongodb.com/nosql-explained [online] [8] https://en.wikipedia.org/wiki/NoSQL [online] [9] https://developer.apple.com/documentation/coregraphics [online] ... trăm triệu thiết bị Android toàn cầu minh chứng cho phát triển mạnh mẽ tảng Những đặc tính trội hệ điều hành Android so với hệ điều hành di động khác: • Android thực mở, tảng phát triển dựa Linux... Linux mã nguồn mở: Các nhà sản xuất thiết bị nhà phát triển u thích Android họ sử dụng tùy chỉnh mà khơng phải trả tiền quyền • Cung cấp dịch vụ tảng phát triển ứng dụng • Hỗ trợ ngơn ngữ lập trình... phần cứng cho Android, giúp Android thích hợp với đa dạng tảng phần cứng Libraries: Các thư viện chia sẻ toàn viết C/C++, biên dịch phù hợp với đặc thù kiến trúc phần cứng sử dụng thiết bị di động,

Ngày đăng: 28/12/2022, 23:42

TỪ KHÓA LIÊN QUAN

w