Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 20 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
20
Dung lượng
328,1 KB
Nội dung
BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC NGUYỄN TẤT THÀNH KHOA CÔNG NGHỆ THÔNG TIN ĐỒ ÁN MÔN HỌC LẬP TRÌNH TRÊN THIẾT BỊ DI ĐỘNG XÂY DỰNG CHỨC NĂNG ANDROID ĐĂNG NHẬP GOOGLE Giảng viên giảng dạy Sinh viên thực Mã số sinh viên Lớp Chuyên ngành Khóa : ThS Bùi Tiến Đức : Nguyễn Văn Mạnh : 1900008503 :19DTH1A : Kỹ thuật phần mềm : 2019 Tp.HCM, tháng 01/2022 BM-ChT11 TRƯỜNG ĐẠI HỌC NGUYỄN TẤT THÀNH TRUNG TÂM KHẢO THÍ KỲ THI KẾT THÚC HỌC PHẦN HỌC KỲ III NĂM HỌC 2020 - 2021 PHIẾU CHẤM THI TIỂU LUẬN/BÁO CÁO Mơn thi: Lập Trình Trên Thiết Bị Di Động Lớp học phần: 19DTH1A Sinh viên thực hiện: Nguyễn Văn Mạnh MSSV: 1900008503 Đề tài tiểu luận/báo cáo sinh viên: Chức đăng nhập google Phần đánh giá giảng viên (căn thang rubrics mơn học): Tiêu chí (theo CĐR HP) Đánh giá GV Điểm tối đa Cấu trúc báo cáo Nội dung - Các nội dung thành phần Điểm đạt 4,5 - Lập luận - Kết luận 0,5 Trình bày TỔNG ĐIỂM 10 Giảng viên chấm thi (ký, ghi rõ họ tên) I Giảng viên chấm thi Điểm: Nhận xét: Giảng viên chấm thi Điểm: Nhận xét: TRƯỜNG ĐẠI HỌC NGUYỄN TẤT THÀNH KHOA CÔNG NGHỆ THÔNG TIN CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM II Độc lập – Tự – Hạnh phúc NHIỆM VỤ ĐỒ ÁN MƠN HỌC (Sinh viên phải đóng tờ vào báo cáo) Họ tên: NGUYỄN VĂN MẠNH MSSV: 1900008503 Chuyên ngành: Kỹ thuật phần mềm Lớp: 19DTH1D Email: manhnguyen.210598@gmail.com SĐT: 0387708853 Tên đề tài: XÂY DỰNG CHỨC NĂNG ANDROID ĐĂNG NHẬP GOOGLE Giảng viên giảng dạy: ThS Bùi Tiến Đức Thời gian thực hiện: 11/11/2021 đến 26/12/2021 Nhiệm vụ: Thiết kế xây dựng chức đăng nhập google Nội dung: Tìm hiểu ngơn ngữ java Tìm hiểu đề tài chức đăng nhập google Xây dựng giao diện Lập trình xử lý kiện Phương pháp: sử dụng ngôn ngữ java để thực đề tài chức đăng nhập google Nội dung yêu cầu thông qua Bộ môn Tp.HCM, ngày tháng năm 2021 TRƯỞNG BỘ MÔN (Ký ghi rõ họ tên) GIẢNG VIÊN GIẢNG DẠY (Ký ghi rõ họ tên) ThS.Phạm Văn Đăng ThS Bùi Tiến Đức III LỜI CẢM ƠN Em chân thành cám ơn Giảng viên hướng dẫn Bùi Tiến Đức, người hướng dẫn tận tình, đóng góp ý kiến chun mơn đồ án môn học Thầy động viên tinh thần em cố gắng hoàn thành nghiên cứu đặt Thầy cung cấp số tài liệu liên quan đến đồ án môn học mà em nghiên cứu ân cần nhắc nhở em đến tiến độ thực đồ án môn học Em chân thành gửi lời cám ơn đến Thầy Cô khoa Công nghệ thông tin trường Đại học Nguyễn Tất Thành giảng dạy, hướng dẫn, trang bị kiến thức cho em từ kiến thức đến vấn đề chuyên sâu Em xin gửi lời cám ơn đến anh, chị, bạn bè, đồng nghiệp nhiều hình thức khác giúp đỡ em trình học tập thời gian hoàn thành đồ án môn học Em xin chân thành cảm ơn! Sinh viên thực (Ký tên) Nguyễn Văn Mạnh IV LỜI MỞ ĐẦU Hiện nay,điện thoại thông minh trở nên phổ biến khơng thể thiếu đời sống nay,và việc ngày có nhiều phần mềm thiết bị di động giúp giải công việc khác cách nhanh gọn lẹ,tiết kiệm thời gian độ xác.Mỗi ứng dụng,chức tạo với nhiệm vụ khác giải trí,học tập,tra cứu thơng tin, … Bên cạnh với phát triển công nghệ thông tin, nhu cầu ứng dụng công nghệ ngày phát triển mạnh đem lại nhiều lợi ích Vì cần phải xây dựng chức đăng nhập để đảm bảo an toàn quản lý người sử dụng,ở android,còn tảng IOS Và số tảng khác Từ yêu cầu với góp ý giảng viên bạn bè, em định chọn đề tài “XÂY DỰNG CHỨC NĂNG ANDROID ĐĂNG NHẬP GOOGLE” V NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN TP Hồ Chí Minh, ngày … tháng … năm 2021 GIẢNG VIÊN HƯỚNG DẪN (Ký tên) MỤC LỤC VI CHƯƠNG I: TỔNG QUAN ĐỀ TÀI .1 1.1 Giới thiệu đề tài: 1.2 Lý chọn đề tài 1.3 Mục tiêu đề tài .1 1.4 Các công cụ hỗ trợ CHƯƠNG II: CƠ SỞ LÝ THUYẾT 2.1 Ngôn ngữ C# 2.1.1 Biến kiểu liệu C# 2.1.2 Kiểu tham chiếu C# .3 2.1.3 Toán tử C# .5 2.1.3.1 Toán tử gán: 2.1.3.2 Toán tử tăng giảm tiền tố hậu tố: 2.1.3.3 Toán tử quan hệ: 2.1.3.4 Toán tử logic: .6 2.1.3.5 Toán tử điều kiện: .6 2.1.4 Các cấu trúc điều khiển C# 2.1.4.1 Cấu trúc if: 2.1.4.2 Cấu trúc if-else: 2.1.4.3 Cấu trúc if - else lồng nhau: 2.1.4.4 Cấu trúc if - else lồng nhau: 2.1.4.5 Cấu trúc switch: 2.1.4.6 Cấu trúc for: 2.1.4.7 Cấu trúc while: .8 2.1.4.8 Cấu trúc … while: 2.1.5 Câu lệnh break continue C# 2.1.5.1 Câu lệnh break: 2.1.5.2 Câu lệnh continue: .9 2.2 NET 10 2.2.1 Một số điểm bật NET 11 2.2.2 Những điều bạn phải làm để nâng cao kỹ NET 11 2.2.3 Những kỹ cần có lập trình viên NET 11 2.3 Cơ Sở Dữ Liệu Mơ Hình n-layer 11 2.3.1 Cơ Sở Dữ Liệu gì? 11 2.3.2 Mơ hình Single-TierArchitecture: .13 2.3.3 Mô hình Two-TierArchitecture: 13 VII 2.3.4 Mơ hình Three-TierArchitecture: 14 2.4 Giới Thiệu ADO.NET .16 Chương III : MƠ HÌNH HĨA CƠ SỞ DỮ LIỆU .19 1.Sơ đồ Lớp 19 Chuyển đổi lớp sang mơ hình sở liệu quan hệ .19 3.Thiết kế Cơ sở liệu 19 3.1 Mơ tả lại lớp có đầy đủ kiểu liệu 19 3.2 Thiết kế bảng: 21 5.3 Database Diagrams: 23 CHƯƠNG IV:THIẾT KẾ GIAO DIỆN(FORM) 24 3.1.Phân cấp chức năng: 24 3.2.Đặc tả giao diện .25 3.2.1 Giao diện đăng nhập: 25 3.2.3.Giao diện quản lý nhân viên: 26 3.2.4 Giao diện quản lý khách hàng: 30 3.2.5 Giao diện quản lý hóa đơn 33 3.2.6 Quản lý hàng hóa: 35 3.2.7 Đăng xuất: .39 3.3.kết nối CSDL: 40 CHƯƠNG V: KẾT LUẬN VÀ NHẬN XÉT 42 4.1 Kết đạt được: 42 4.2 Việc chưa làm được: 42 4.3 Hướng phát triển đề tài: 42 CHƯƠNG VI:TÀI LIỆU THAM KHẢO 43 VIII DANH MỤC CÁC BẢNG BIỂU Bảng Biến kiểu liệu C# 15 Bảng Toán tử gán 17 Bảng Toán tử quan hệ 17 Bảng Toán tử Logic 18 Bảng Toán tử điều kiện 18 IX DANH MỤC CÁC BẢNG HÌNH Hình 1:Ví dụ khai báo biến C# Hình 2:Mơ tả tham chiếu Object Hình 3:Cú pháp khai báo biến kiểu dynamic Hình 4:Mơ tả kiểu tham chiếu string Hình 5:Mơ tả khai báo Hình 6:Mơ tả tốn tử tăng giảm tiền tố hậu tố .5 Hình 7:Cấu trúc if Hình 8:Cấu trúc if-else Hình 9:Cấu trúc if-else lồng .7 Hình 10:Cấu trúc switch .8 Hình 11:Cấu trúc for .8 Hình 12:Cấu trúc while Hình 13:Cấu trúc do…while Hình 14:Ví dụ câu lệnh break .9 Hình 15:Kết ví dụ câu lệnh break Hình 16:Ví dụ câu lệnh continue 10 Hình 17:Kết ví dụ câu lệnh continue 10 Hình 18:Mơ tả sở liệu 12 Hình 19:Mơ hình Single-TierArchitecture 13 Hình 20:Mơ hình Two-TierArchitecture 13 Hình 21:Mơ hình 3-layer .14 Hình 22:Mô tả ADO.NET 16 Hình 23:Kiến trúc truy cập liệu 17 Hình 24:Sơ đồ lớp 19 Hình 25:Thiết kế bảng tài khoản 21 Hình 26:Thiết kế bảng khách hàng 22 Hình 27:Thiết kế bảng sản phẩm .22 Hình 28:Thiết kế bảng sẩn phầm .22 Hình 29:Thiết kế bảng hóa đơn 22 Hình 30:Thiết kế bảng thơng tin hóa đơn 23 Hình 31:Database diagrams 23 Hình 32:Sơ đồ phân cấp 24 Hình 33:Mơ hình 3-layer .24 Hình 34:mơ hình layer 24 Hình 35:Giao Diện đăng nhập 25 Hình 36:Giao diện trang chủ phần mềm 26 Hình 37:Giao diện quản lý nhân viên 27 Hình 38:Mơ tả chức thêm nhân viên 28 Hình 39:mơ tả chức thêm nhân viên(2) 28 Hình 40:Mơ tả chức xóa nhân viên 29 Hình 41:Mơ tả chức xóa nhân viên (2) .29 Hình 42:Mơ tả chức sửa thơng tin nhân viên 30 Hình 43:Giao diện quản lý khách hàng .30 Hình 44:Mô tả chức thêm khách hàng .31 Hình 45:Mơ tả chức thêm khách hàng(2) 31 Hình 46:Mơ tả chức xóa khách hàng 32 Hình 47:Mơ tả chức xóa khách hàng (2) 32 Hình 48:Mơ tả chức sửa thông tin khách hàng .33 X Hình 49:Giao diện quản lý hóa đơn 33 Hình 50:Mơ tả chức thêm hóa đơn 34 Hình 51:Mơ tả chức xóa hóa đơn 34 Hình 52:Mơ tả chức xóa hóa đơn 35 Hình 53:Giao diện quản lý hàng hóa 35 Hình 54:Mơ tả chức thêm hàng hóa 36 Hình 55:mơ tả chức thêm hàng hóa (2) 36 Hình 56 Mơ tả chức xóa hàng hóa 37 Hình 57:Mơ tả chức xóa hàng hóa (2) 37 Hình 58:Mơ tả chức sửa thơng tin hàng hóa 38 Hình 59:Mơ tả chức sửa thơng tin hàng hóa (2) 39 Hình 60:Giao diện chức đăng xuất 40 Hình 61:tạo kết nối với SQL .40 XI CHƯƠNG I: TỔNG QUAN ĐỀ TÀI 1.1 Giới thiệu đề tài: Tên đề tài: Xây dựng chức đăng nhập vào tài khoản google Giới thiệu: Ứng dụng cho phép người dùng đăng nhập vào hệ thống thực chức google 1.2 Lý chọn đề tài Hiện nay,điện thoại thơng minh trở nên phổ biến thiếu đời sống nay,và việc ngày có nhiều phần mềm thiết bị di động giúp giải công việc khác cách nhanh gọn lẹ,tiết kiệm thời gian độ xác.Mỗi ứng dụng,chức tạo với nhiệm vụ khác giải trí,học tập,tra cứu thơng tin, … Bên cạnh với phát triển công nghệ thông tin, nhu cầu ứng dụng công nghệ ngày phát triển mạnh đem lại nhiều lợi ích Vì cần phải xây dựng chức đăng nhập để đảm bảo an toàn quản lý người sử dụng,ở android,còn tảng IOS Và số tảng khác 1.3 Mục tiêu đề tài Xây dựng ứng dụng android theo nhu cầu khách hàng Giao diện đơn giản dễ sử dung Ứng dụng thực chức đăng nhập 1.4 Các công cụ hỗ trợ - JDK - Android Studio 12 CHƯƠNG II: CƠ SỞ LÝ THUYẾT 2.1.Môi trường phát triển ứng dụng 2.1.1.Smartphone hệ điều hành phổ biến nay:Android,IOS,Windows Phone,Blackberry OS, Firefox OS * Android - Ưu điểm: + Có mã nguồn mở, khả tuỳ biến cao, tùy ý chỉnh sửa mà khơng có can thiệp từ Google + Kho ứng dụng Google Play Store đồ sộ + Khả đa nhiệm, chạy lúc nhiều ứng dụng cao - Nhược điểm: + Dễ nhiễm phần mềm độc hại virus + Kho ứng dụng nhiều dẫn đến khó kiểm soát chất lượng => thiếu ứng dụng thật tốt Sự phân mảnh lớn + Cập nhật không tự động với tất thiết bị * IOS - Ưu điểm: + Nền tảng ổn định + Ứng dụng IOS hoạt động mượt mà + Độ tin cậy tính bảo mật cao - Nhược điểm: + Trao đổi liệu cần phải qua iTunes nên dễ gây bất tiện, tốn thời gian + Khả tuỳ chỉnh hạn chế + iOS hoạt động thiết bị công nghệ độc quyền Apple * Windows Phone - Ưu điểm: + Giao diện quen thuộc, dễ sử dụng + Khả đồng danh bạ, email tốt + Có phần mềm đồ Here Maps tốt, xem offline - Nhược điểm: + Windows Phone không cho phép thay đổi giao diện, chủ đề (themes) nên dễ gây chán + Kho ứng dụng nghèo nàn, ứng dụng miễn phí + Không thể đổi DNS (hay IP) để vào số web bị chặn * Blackberry OS - Ưu điểm: + Hoạt động ổn định, giao diện đơn giản + hỗ trợ Push Mail, xử lý cơng việc tốt tính bảo mật cao + Bàn phím QWERTY giúp soạn thảo nhanh xác + Blackberry OS cho khả nén liệu xuống nửa kích thước ban đầu, giúp tiết kiệm chi phí băng thơng +Tính bảo mật cao - Nhược điểm: BlackBerry OS khơng thân thiện khó sử dụng người không am hiểu công nghệ 13 * Firefox OS - Ưu điểm: + Giao diện dễ sử dụng, trông giống kết hợp hài hòa Android iOS + Firefox OS có thư mục thơng minh, tự thu thập ứng dụng, game theo thể loại khác nhau, tính chất cơng việc riêng biệt mà thân phát triển - Nhược điểm: + Giao diện Firefox OS vay mượn nhiều từ iOS, thường gặp nhiều bất cập phụ thuộc nhiều vào nút Home (màn hình chủ) 2.1.2 Giới thiệu hệ điều hành android * Các lớp gồm: - Linux Kernel : Đây lớp thấp nhất, nhiệm vụ xử lý tiếp nhận thiết bị ngoại vi như: bàn phím, camera, hình, wifi, - Libraries: Chứa thư viện gốc WebKit, OpenGL, FreeType, SQLite, Media, v.v., Thư viện WebKit chịu trách nhiệm hỗ trợ trình duyệt, SQLite dành cho sở liệu, - Android Runtime: Trong Android Runtime, có thư viện lõi DVM (Máy ảo Dalvik) chịu trách nhiệm chạy ứng dụng Android DVM giống JVM tối ưu hóa cho thiết bị di động Nó tiêu thụ nhớ cung cấp hiệu suất nhanh - Application Framework: Android framework bao gồm API Android UI (Giao diện người dùng), điện thoại, tài nguyên, địa điểm, - Applications: Ứng dụng chạy Android framework Ví dụ: cài đặt, trị chơi, trình duyệt 2.1.3 Ứng dụng ngơn ngữ Java - Các ứng dụng cho hệ điều hành Android - Các ứng dụng bảo mật cao: Java ngôn ngữ lập trình có tính bảo mật cao nên thường sử dụng vào dịch vụ tài chính, ngân hàng - Các ứng dụng web Java: Lập trình Java không sử dụng thiết bị di động mà biết đến tảng của ứng dụng website - Các công cụ phần mềm: Hiện có nhiều cơng cụ phát triển phần mềm hữu ích viết Java, ví dụ: Eclipse, InetelliJ Idea Netbans IDE - Khái niệm lập trình hướng đối tượng java: Lập trình hướng đối tượng (Object Oriented Programing – OOP) phương pháp để thiết kế chương trình sử dụng lớp đối tượng - Java ngơn ngữ lập trình hướng đối tượng hỗ trợ đặc tính lập trình hướng đối tượng: Đa hình (Polymorphism) Thừa kế (Inheritance) Đóng gói (Encapsulation) Trừu tượng (Abstraction) - Đối tượng thực thể có trạng thái hành vi Nó mang tính vật lý logic - Lớp (Class) xem lớp khn mẫu (template) đối tượng (Object) - Package: package (gói) java nhóm kiểu tương tự lớp, giao diện package - Package java phân loại theo hai hình thức, package dựng sẵn package người dùng định nghĩa - Có nhiều package dựng sẵn java, lang, net, io, util, sql, … Package người dùng tự định nghĩa - Constructor: constructor java dạng đặc biệt phương thức sử dụng để khởi tạo đối tượng 14 - Java Constructor gọi thời điểm tạo đối tượng Nó khởi tạo giá trị để cung cấp liệu cho đối tượng - Khai báo Constructor giống với khải báo method (phương thức) Nó phải có tên với class (lớp) khơng có giá trị trả - Có kiểu constructor: Constructor mặc định (khơng có tham số truyền vào – default constructors) Constructor tham số (parameterized constructors) - Phạm vi truy cập (Access modifier) Có hai loại modifier java: access modifiers nonaccess modifiers - Có kiểu java access modifiers: private (Mặc định) protected public - Các non-access modifiers: static, abstract, synchronized, native, volatile, transient, v.v 2.2.Các thành phần ứng dụng android Activity Activity thành phần quan trọng ứng dụng Android gồm: Activity, Service, Content Provider, Broadcast receivers - Activity gì? Mỗi Activity thường hoạt động độc lập với tương tác truyển liệu qua thông qua Intent Chính Activity hoạt động độc lập nên có vịng đời riêng từ lúc khởi tạo lúc huỷ onCreate(): Được gọi OS activity tạo(chỉ gọi lần) Dùng để khởi tạo giao diện liệu để dùng cho sau onStart(): Ngay trước activity chạy tương tác với người dùng hàm gọi Thông thường, hàm khởi tạo animation cho UI( có), Audio, hay đối tượng cần thiết để activity hiển thị cho người dùng onResume(): Hàm gọi activity chuẩn bị chạy activity kích hoạt trở lại từ trạng thái stop onPause(): Hàm gọi ứng dụng chuyển sang chạy onStop(): Hàm sau onPause(), activity khơng cịn tương tác với người dùng onRestart(): Được gọi sau activity bị tạm dừng kích hoạt trở lại onDestroy(): Đây hàm cuối vịng đời activity Có cách để hàm gọi: bạn gọi hàm finish() để chủ động tắt activity, hai gọi tự động OS tài nguyên cạn kiệt để tránh bị lỗi Memory Leak 2.Toast Notification - Toast message, có dạng popup, xuất hình khoảng thời gian ngắn tự biến sau - Toast tạo hiển thị Activity Servive - Không cho phép người sử dụng tương tác - Khi hiển thị sau khoảng thời gian tự đóng lại - Có giá trị mặc định: số Toast.LENGTH_SHORT hiển thị giây Toast.LENGTH_LONG hiển thị 3.5 giây - Sử dụng: 15 Alert Dialog (Hộp thoại cảnh báo) Khi yêu cầu người dùng lựa chọn định yes no để phản action cụ thể Sử dụng Alert Dialog Cú pháp : AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(this); Phương thức Mô tả setIcon(Drawable icon) Phương thức thiết lập icon Alert Dialog setCancelable(boolean cancel able) Phương thức thiết lập thuộc tính mà Dialog bị cancel không setMessage(CharSequence message) Phương thức thiết lập thông điệp để hiển thị Alert Dialog setMultiChoiceItems(CharSequence[] items, Phương thức thiết lập danh sách item để hiển thị Dialog Tùy chọn boolean[] checkedItems, thông báo Listener DialogInterface.OnMultiChoiceClickListene r listener) setOnCancelListener(DialogInterface.OnC Phương thức thiết lập hàm callback ancelListener onCancelListener) gọi Dialog bị cancel 16 setTitle(CharSequence title) Phương thức thiết lập Title xuất Dialog 4.Các kiểu lập trình android Xử lý kiện (Event Handling) Android tương tác người dùng với thành phần tương tác ứng dụng Event Listeners − Interface lớp View chứa phương thức callback Các phương thức gọi AndroidFramework Listener đăng ký kích hoạt tương tác người dùng với item giao diện UI Event Listeners Registration − tiến trình mà Event Handler đăng ký với Event Listener Handler gọi Event Listener kích hoạt kiện Event Handlers − Khi Event xảy ra, đăng ký Event Listener cho kiện, Event Listener gọi Event Handler, phương thức thực xử lý kiện 17 CHƯƠNG III: GIỚI THIỆU VỀ CHỨC NĂNG ĐĂNG NHẬP GOOGLE CHƯƠNG IV:XÂY DỰNG CHỨC NĂNG ĐĂNG NHẬP GOOGLE ANDROID CHƯƠNG V:KẾT LUẬN 18 ... Tên đề tài: XÂY DỰNG CHỨC NĂNG ANDROID ĐĂNG NHẬP GOOGLE Giảng viên giảng dạy: ThS Bùi Tiến Đức Thời gian thực hiện: 11/11/2021 đến 26/12/2021 Nhiệm vụ: Thiết kế xây dựng chức đăng nhập google Nội... tài chức đăng nhập google Xây dựng giao di? ??n Lập trình xử lý kiện Phương pháp: sử dụng ngôn ngữ java để thực đề tài chức đăng nhập google Nội dung yêu cầu thông qua Bộ môn Tp.HCM, ngày tháng... đăng ký Event Listener cho kiện, Event Listener gọi Event Handler, phương thức thực xử lý kiện 17 CHƯƠNG III: GIỚI THIỆU VỀ CHỨC NĂNG ĐĂNG NHẬP GOOGLE CHƯƠNG IV:XÂY DỰNG CHỨC NĂNG ĐĂNG NHẬP GOOGLE