BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC QUỐC TẾ SÀI GÒN BÁO CÁO NGHIÊN CỨU KHOA HỌC Tên đề tài ỨNG DỤNG NHẮN TIN TRỰC TUYẾN CHITCHAT TRÊN THIẾT BỊ DI ĐỘNG Ngành CÔNG NGHỆ THÔNG TIN Giáo viên hướng[.]
BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC QUỐC TẾ SÀI GÒN - - BÁO CÁO NGHIÊN CỨU KHOA HỌC Tên đề tài: ỨNG DỤNG NHẮN TIN TRỰC TUYẾN CHITCHAT TRÊN THIẾT BỊ DI ĐỘNG Ngành: CÔNG NGHỆ THÔNG TIN Giáo viên hướng dẫn: Ths.VÕ ANH TIẾN Sinh viên thực hiện: Cao Ngọc Hoàng Vân - 91011701338 Nguyễn Mỹ Duyên – 81011701402 Lớp: 17DMT/PM Hồ Chí Minh, 2020 LỜI MỞ ĐẦU Trong nhiều năm gần đây, năm 2010 trở lại Cơn vũ bão smartphone tràn ngập nước ta, ai có smartphone Nó điện thoại tích hợp tảng hệ điều hành di động với nhiều chức hỗ trợ tiên tiến điện toán kết nối dựa tảng điện thoại di động thông thường Ban đầu điện thoại thơng minh bao gồm tính điện thoại di động thông thường kết hợp với thiết bị phổ biến khác PDA, thiết bị điện tử cầm tay, máy ảnh kỹ thuật số, hệ thống định vị toàn cầu GPS Từ năm đầu 2016 đến điện thoại thông minh phát triển mạnh mẽ bao gồm chức latop duyệt web, wifi, ứng dụng tiện ích mà người dùng thích kèm theo phụ kiện máy Năm 2019 có hàng loạt mạng xã hội xuất nhiều thị trường công nghệ ứng dụng ưa chuộng giao diện không thân thiện với người dùng Chính vậy, nhân việc học mơn lập trình thiết bị di động Android nhóm em lựa chọn đề tài “Ứng dụng nhắn tin trực tuyến ChitChat thiết bị di động” Để hoàn thành đề tài này, nhóm em xin chân thành cảm ơn giảng viên hướng dẫn đề tài Ths.Võ Anh Tiến, giảng viên khoa Công nghệ thông tin trường Đại học Quốc tế Sài Gòn hết lòng giúp đỡ, hướng dẫn dạy tận tình để nhóm em hồn thành tốt đề tài Nhóm chưa có nhiều kinh nghiệm nghiên cứu thực hành nên đề tài nhiều thiếu sót, nhóm em mong nhận đóng góp ý kiến quý thầy để đề tài hoàn thiện Em xin chân thành cảm ơn! Chương TỔNG QUAN Lý chọn đề tài Trong thời đại công nghệ thông tin phát triển nay, điện thoại thông minh (Smartphone) thiết bị thiếu người Ngày nhiều người có nhu cầu sử dụng sản phẩm cơng nghệ cao với nhiều tính năng, cấu hình cao, kiểu dáng đẹp dẫn đến nhà cung cấp phải nâng cao chất lượng sản phẩm Xây dựng ứng dụng cho điện thoại thông minh ngành với nhiều tiềm hứa hẹn Phần cứng điện thoại di động phát triển với hệ điều hành Có nhiều hệ điều hành hệ điều hành Android phát triển ông lớn Google, nhanh chóng đối thủ cạnh tranh mạnh mẽ với hệ điều hành trước hệ điều hành nhiều người sử dụng với phiên Android Android Pie (Android 9) Với lý nhóm em chọn đề tài tiểu luận: “Tìm hiểu xây dựng ứng dụng nhắn tin trực tuyến ChitChat” Mục tiêu đề tài Xây dựng ứng dụng ChatOnline điện thoại chạy hệ điều hành Android: Giao diện trực quan, dễ thao tác Phù hợp với ứng dụng triển khai diện rộng, tốn mở rộng Hệ thống dễ bảo trì dễ phát triển Đối tượng phạm vi nghiên cứu đề tài Tìm hiểu ngơn ngữ lập trình java, hệ điều hành Android, Android studio, SQLite Tìm hiểu, phân tích tính ứng dụng Chat Phương pháp nghiên cứu đề tài Đọc viết Internet, sách giảng nhằm xây dựng sở lý thuyết đề tài biện pháp cần thiết để giải vấn đề phát sinh làm pg Chương 2: MƠI TRƯỜNG LẬP TRÌNH Giới thiệu Android Lịch sử phát triển hệ điều hành Android Năm 2003, Android Inc thành lập Andy Rubin, Rich Miner, Nick Sears Chris White California Năm 2005, Google mua lại Android Inc bắt đầu nuôi ý tưởng tự sản xuất điện thoại di động Năm 2007, tổ chức OHA (Open Handset Alliance) thành lập với 80 công ty lĩnh vực kỹ thuật điện tử bao gồm công ty chuyên phần cứng, phân phối thiết bị di động đến công ty phần mềm, sản xuất bán dẫn, v.v Có thể kể đến số công ty tiếng Samsung, Motorola, LG, HTC, T-Mobile, Vodafone, ARM Qualcomm, v.v Năm 2008, Google mắt di động đồng thời open source SDK (Software Development Kit) phiên 1.0 Năm 2010, Google khởi đầu dòng thiết bị Nexus với thiết bị HTC Nexus One Năm 2013, mắt loạt thiết bị phiên GPE Năm 2014, Google công bố Android Wear, hệ điều hành cho thiết bị đeo Các phiên hệ điều hành Android phát triển tên mã chủ đề bánh kẹo phát hành theo thứ tự bảng chữ sau: Android 1.5 Cupcake, Android 1.6 Donut, Android 2.1 Eclair, Android 2.2 Froyo, Android 2.3 Gingerbread, Android 3.0 Honeycomb, Android 4.0 Ice Cream Sandwich, Android 4.1 Jelly Bean, Android 4.4 Kitkat, Android 5.0 Lollipop, Android 6.0 Marshmallow, Android 7.0 Nougat, Android 8.0 Orea Android 9.0 Pie phiên Android thời điểm pg 1.2 Giới thiệu hệ điều hành Android Android hệ điều hành chạy điện thoại di động phát triển từ nhân Linux, mang nhiều đặc tính đặc trưng hệ điều hành di động mang tính chất chung hệ điều hành Là hệ điều hành đại, đời muộn phát triển từ Linux, rút kinh nghiệm từ hệ điều hành trước, tích hợp nhiều cơng nghệ tiên tiến đặc biệt phát triển từ “ông trùm công nghệ” tầm cỡ giới Google nên Android sớm tìm chỗ đứng cho Khơng giống Windows Mobile Apple Iphone, hai cung cấp môi trường phát triển ứng dụng phong phú dễ tiếp cận ln có ưu tiên cho ứng dụng mặc định có sẵn hệ điều hành (native application) Với Android, ứng dụng viết tập API, nên khơng có phân biệt ứng dụng mặc định ứng dụng bên thứ Người dùng hồn tồn thay ứng dụng mặc định ứng dụng u thích mình, chí hình thực gọi hình Home pg Hệ điều hành Android có ưu điểm nhược điểm sau: Ưu điểm + Là hệ điều hành mã nguồn mở nên có khả tuỳ biến cao, tuỳ ý chỉnh sửa mà khơng có can thiệp hay cấm cản từ Google + Đa dạng sản phẩm, nhiều hãng điện thoại, thiết bị công nghệ ưu chọn Android cho thiết bị họ, giá hợp lý từ bình dân đến cao cấp + Kho ứng dụng Google Play Store đồ sộ + Thân thiện dễ sử dụng + Khả đa nhiệm, chạy lúc nhiều ứng dụng Nhược điểm + Dễ nhiễm phần mềm độc hại virus Do tính chất mã nguồn mở, nhiều phần mềm khơng kiểm sốt có chất lượng khơng tốt lỗi bảo mật sử dụng + Kho ứng dụng nhiều dẫn đến khó kiểm sốt chất lượng, thiếu ứng dụng thật tốt + Sự phân mảnh lớn Trong số thiết bị Android xuất sắc trình làng Galaxy S9, Sony XZ, Huawei Mate 20, … cịn nhiều sản phẩm giá rẻ bình thường khác + Thiết bị không tự động cập nhật Khi phiên hệ điều hành mắt, tất cập nhật, chí muốn trải nghiệm bạn thường xuyên phải mua thiết bị pg 1.3 Các ứng dụng có sẵn Android Một điện thoại Android thông thường kèm với vài ứng dụng cài đặt sẵn, bao gồm: - Một trình Email tương thích với Gmail - Chương trình quản lý tin nhắn SMS - Chương trình quản lý thông tin cá nhân, bao gồm lịch làm việc, danh bạ đồng hóa với dịch vụ Google - Phiên thu gọn Google Map cho điện thoại, bao gồm điều hướng, tìm kiếm địa điểm, đường, tình trạng giao thơng,… - Trình duyệt Web dựa nhân Android System WebView - Chương trình tán gẫu (Chat) - Trình đa phương tiện (chơi nhạc, xem phim,…) - Google Play Store – cho phép người dùng tải cài đặt ứng dụng - Tất ứng dụng có sẵn viết ngôn ngữ Java sử dụng Android SDK Các liệu thông tin người dùng ứng dụng có sẵn sử dụng, thơng tin danh bạ hồn tồn sử dụng ứng dụng bên thứ ba Tương tự vậy, ứng dụng bạn hồn tồn xử lý kiện có gọi đến, nhận tin nhắn mới,… thay cho ứng dụng có sẵn pg Lập trình di động với hệ điều hành Android Studio 2.1 Các thư viện Android Studio Android studio cung cấp gói API để phát triển ứng dụng Danh sách gói core API giúp cho có nhìn tổng qt hỗ trợ sẵn, tất thiết bị chạy Android phải hỗ trợ tối thiểu API - Android.util: Gói API lõi, chứa class cấp thấp containers, string formatters, XML parsing - Android.os: Truy cập tới chức hệ điều hành chẳng hạn như: gửi nhận tin nhắn, giao tiếp nội ứng dụng, thời gian, - Android.database: Cung cấp lớp cấp thấp cần thiết để làm việc với databases - Android.content: Dùng để quản lý tài nguyên, nội dung gói - Android.view: View lớp cha lớp giao diện người dùng - Android.widget: Được kế thừa từ lớp View, bao gồm lớp để xây dựng giao diện widget như: lits, buttons, layouts - Android.app: Gói API cấp cao, bao gồm lớp Activity Service – hai lớp sở cho ứng dụng Android 2.2 Các thành phần Android Studio a Thành phần chương trình Android Studio Activity IntentActivity: Một activity thể giao diện đồ họa người dùng Ví dụ activity biểu diễn danh sách menu item để người dùng chọn hiển thị ảnh với tiêu đề Một ứng dụng gửi tin nhắn văn có hoạt động hiển thị danh sách liên hệ để gửi tin nhắn tới, hoạt động thứ hai viết tin nhắn tới liên hệ chọn, hoạt động khác xem lại tin nhắn cũ hay thay đổi cài đặt Mặc dù chúng làm việc để tạo thành giao diện người dùng, activity độc lập với khác Mỗi activity lớp lớp sở Activity Một ứng dụng có nhiều activity pg Class sở Activity định nghĩa loạt kiện mà điều chỉnh vòng đời hoạt động Class Activity định nghĩa kiện sau đây: - onCreate():Được gọi hoạt động tạo lần - onStart(): Được gọi hoạt động trở nên hữu hình so với người dùng - onResume(): Được gọi hoạt động bắt đầu tương tác với người sử dụng - onPause(): Được gọi để dừng hoạt động kết nối lại hoạt động trước - onStop(): Được gọi hoạt động khơng cịn hiển thị với người dùng - onDestroy(): Được gọi trước hoạt động bị phá hủy hệ thống (bằng tay hệ thống để bảo tồn nhớ) - onRestart(): Được gọi hệ thống dừng lại khởi động lại lần - Intent: Là cấu trúc liệu mô tả cách thức, đối tượng thực Activity Là cầu nối Activity: ứng dụng Android thường bao gồm nhiều Activity, Activity hoạt động độc lập với thực công việc khác Intent người đưa thư, giúp Activity triệu gọi truyền liệu cần thiết tới Activity khác Điều giống việc di chuyển qua lại Forms lập trình C# Windows Form b Giao diện người dùng Android Studio Trong ứng dụng Android, giao diện người dùng xây dựng cách sử dụng View ViewGroup đối tượng Có nhiều loại quan điểm nhóm view, số hậu duệ lớp View View objects đơn vị biểu giao diện người dùng tảng Android Các class xem sở phục vụ cho class gọi "widget", cung cấp đầy đủ đối tượng thực giao diện, giống lĩnh vực văn nút Class ViewGroup phục vụ sở cho lớp gọi " layouts", cung cấp loại khác kiến trúc bố trí, linear, tabular relative pg ... người sử dụng với phiên Android Android Pie (Android 9) Với lý nhóm em chọn đề tài tiểu luận: ? ?Tìm hiểu xây dựng ứng dụng nhắn tin trực tuyến ChitChat? ?? Mục tiêu đề tài Xây dựng ứng dụng ChatOnline... dùng tải cài đặt ứng dụng - Tất ứng dụng có sẵn viết ngôn ngữ Java sử dụng Android SDK Các liệu thông tin người dùng ứng dụng có sẵn sử dụng, thơng tin danh bạ hồn tồn sử dụng ứng dụng bên thứ ba... (native application) Với Android, ứng dụng viết tập API, nên khơng có phân biệt ứng dụng mặc định ứng dụng bên thứ Người dùng hoàn tồn thay ứng dụng mặc định ứng dụng u thích mình, chí hình thực