ĐẶT VẤN ĐỀ VÀ ĐỊNH HƯỚNG GIẢI PHÁP I. Giới thiệu bài toán - Hàng ngày, ai trong mỗi chúng ta cũng có những nhu cầu thiết yếu như : ăn uống, mua sắm, giải trí, thư giãn, … và để đáp ứng những nhu cầu đó, chúng ta cần phải trực tiếp tới các trung tâm cung cấp những nhu cầu đó. - Thế giới ngày càng hiện đại cùng với đó là sự phát triển của internet ở khắp nơi trên thế giới, vậy nên việc có một chiếc điện thoại thông minh hay một chiếc laptop cá nhân là vô cùng cần thiết đối với mỗi người để phục vụ những nhu cầu cá nhân một cách đơn giản, tiện lợi và nhanh chóng. - Nắm bắt được điều đó Tech Shop ra đời để đem những sản phẩm điện thoại thông minh của các hãng nổi tiếng thế giới như iphone, samsung, nokia, dell, asus, hp, mac….tiếp cận tới người dùng.
- Ngày nay, việc mua sắm online dường như đã trở thành thói quen và sở thích của mỗi người vì sự tiện lợi của nó. Vậy nên việc bán hàng qua mạng chính là xu thế tất yếu và là lựa chọn bắt buộc với cá nhân hay doanh nghiệp. Đó là lí do app và website của Tech Shop ra đời. Mục tiêu của việc xây dựng ứng dụng và trang web này là giúp cho khách hàng có thể dễ dàng mua sản phẩm từ xa thông qua internet.
Ở bất kì đâu, chỉ cần có internet là khách hàng đã có thể chọn cho mình sản phẩm ưng ý phù hợp với nhu cầu sử dụng của mình. Với hệ thống tìm kiếm dễ dàng, giao diện thân thiện với người dùng, thông tin sản phẩm đầy đủ, chính xác. Khách hàng ghé qua có thể thoải mái xem sản phẩm, khi mua hàng thì cần phải có tài khoản để thực hiện việc thanh toán. Mục tiêu đề tài Mục tiêu đề tài nhằm xây dựng ứng dụng và website bán hàng đơn giản.
Đây là hệ thống cho phép trợ những người quan tâm sản phẩm công nghệ có thể tham khảo và mua sắm các thiết bị công nghệ như máy tính, điện thoại. Ứng dụng chạy trên nền tảng Android với việc cài đặt hoàn toàn dễ dàng. Người dùng có thể sử dụng các chức năng ngay sau khi cài đặt mà không cần yêu cầu gì thêm. Ứng dụng và website với giao diện đẹp và dễ hiểu giúp khách hàng có thể dễ dàng sử dụng.
Các vấn đề cần giải quyết 1. Nội dung đồ án Sau khi nắm được xu hướng mua sắm online cũng như việc tìm hiểu bài toán, ứng dụng và website tôi muốn xây dựng gồm các nội dung chính sau: Lê Anh Tuấn – 223463 – 63IT3 14 Đồ án tốt nghiệp - Người dùng có thể đăng ký tài khoản để được mua sắm và hưởng các ưu đãi , thông tin sẽ được lưu vào quản lý người dùng, và đăng nhập khi cần sử dụng tải khoản - Có thể tìm kiểm các món đồ mình quan tâm - Xem chi tiết các sản phẩm đang quan tâm - Thêm sản phẩm vào giỏ hàng , có thể thêm số lượng và lưu lại ở giỏ hàng sản phẩm - Quản lý thông tin các đơn hàng của người dùng - Ở trang quản lý sẽ quản lý sản phẩm, xử lý các đơn hàng đã được gửi về từ hệ thống. Công nghệ sử dụng a. Phần mềm hỗ trợ phân tích thiết kế hệ thống: - Microsoft Word : Viết tài liệu đặc tả hệ thống - Visual Paradigm : Vẽ các biểu đồ Use case, Sequence, Class và Activity b.
Công cụ xây dựng hệ thống: - Android Studio: Viết source code và chạy ứng dụng - Php Storm : Viết source code , chạy website và chạy api Lê Anh Tuấn – 223463 – 63IT3 15 Đồ án tốt nghiệp CHƯƠNG 2 – TÌM HIỂU VỀ HỆ ĐIỀU HÀNH ANDROID VÀ BỘ THƯ VIỆN JETPACK I. Tổng quan về hệ điều hành Android 1. Hệ điều hành Hệ điều hành là một phần mềm dùng để điều hành, quản lý các thiết bị phần cứng và các tài nguyên phần mềm. Hệ điều hành đóng vai trò trung gian trong việc giao tiếp giữa người sử dụng và phần cứng của máy, cung cấp một môi trường cho phép người sử dụng phát triển và thực hiện các ứng dụng của họ một cách dễ dàng.
Hệ điều hành Android Hình 1. Android là gì? Hệ điều hành Android được khai sinh bởi Android. Inc, một công ty phần mềm tại Thung lũng Silicon trước khi Google mua lại nó vào năm 2005. Các nhà phân tích và đầu tư điện tử đã đưa ra nhiều hoài nghi về ý định gia nhập vào thị trường điện thoại của Google sau thương vụ mua bán này.
Bất chấp những nghi vấn đó, vào năm 2007, Google công bố triển khai thiết bị Android đầu tiên trên thị trường và ra chính thức ra mắt sản phẩm vào năm 2008. Lê Anh Tuấn – 223463 – 63IT3 16 Đồ án tốt nghiệp Kể từ đó, Android đã mở đường cho các nhà phát triển phần mềm và ứng dụng sử dụng công nghệ Android để phát triển các ứng dụng di động, được phân phối qua các cửa hàng ứng dụng như Google Play. Do được phát triển dưới trướng Google, người dùng Android có cơ hội kết nối các thiết bị di động của họ với các sản phẩm khác của Google như bộ nhớ đám mây, các nền tảng email và các dịch vụ video. Là một hệ điều hành với mã nguồn mở, Android tạo điều kiện cho các nhà phát triển ứng dụng thiết bị, mạng di động và các lập trình viên được thỏa sức điều chỉnh và phân phối Android một cách tự do, không ràng buộc.
Đây chính là một trong những lý do giúp hệ điều hành này chiếm lĩnh thị phần hệ điều hành điện thoại di động trên toàn thế giới. Kiến trúc của hệ điều hành Android Hình 2. Kiến trúc của hệ điều hành Android Linux kernel: Đây là nhân nền tảng mà hệ điều hành Android dựa vào nó để phát triển. Đâu là lớp chứa tất cả các thiết bị giao tiếp ở mức thấp dùng để điều khiển các phần cứng khác trên thiết bị Android.
Libraries: Chứa tất cả các mã - cái mà cung cấp cấp những tính năng chính của hệ điều hành Android, đôi với ví dụ này thì SQLite là thư viện cung cấp việc hộ trợ làm việc với database dùng để chứa dữ liệu. Hoặc Webkit là thư viện cung cấp những tính năng cho trình duyệt Web. Lê Anh Tuấn – 223463 – 63IT3 17 Đồ án tốt nghiệp Android runtime: Trong Android Runtime, có các thư viện lõi và DVM (Máy ảo Dalvik) chịu trách nhiệm chạy ứng dụng Android. DVM giống như JVM nhưng nó được tối ưu hóa cho các thiết bị di động.
Nó tiêu thụ ít bộ nhớ hơn và cung cấp hiệu suất nhanh. Android framework: Là phần thể hiện các khả năng khác nhau của Android(kết nối, thông báo, truy xuất dữ liệu) cho nhà phát triển ứng dụng, chúng có thể được tạo ra để sử dụng trong các ứng dụng của họ. Applications: Tầng ứng dụng là tầng bạn có thể tìm thấy các ứng dụng thiết bị Android như Contact, trình duyệt…Và mọi ứng dụng bạn viết đều nằm trên tầng này. Giao diện Android Khi người dùng khởi động thiết bị, hệ điều hành Android sẽ hiển thị một màn hình chính bao gồm các biểu tượng ứng dụng (app) và các tiện ích (Widget).
Các tiện ích là các màn hình thông tin tự cập nhập nội dung như thời tiết hoặc tin tức. Màn hình chính có thể khác nhau dựa trên sản xuất của mỗi thiết bị. Người dùng cũng có thể thay đổi giao diện, chủ đề mặc định trên màn hình chính thông qua các ứng dụng của bên thứ ba trên Google Play. Thanh trạng thái phía trên màn hình chính hiển thị các thông tin về thiết bị và khả năng kết nối của nó, chẳng hạn như mạng Wifi, Bluetooth, đèn pin,.
Người dùng có thể kéo thanh trạng thái xuống bằng một cú vuốt ngón tay để xem màn hình thông báo. Ứng dụng Android Do có thêm ứng dụng từ các bên thứ ba, kho ứng dụng của Android ngày càng trở nên phong phú và tiện lợi cho người dùng. Với 2,9 triệu ứng dụng trên hệ điều hành này, người dùng có thể thoải mái lựa chọn các ứng dụng phù hợp với nhu cầu sử dụng của mình. Hiện nay, người dùng có thể lựa chọn giữa các ứng dụng trả phí và miễn phí.
Tuy nhiên, số lượng các ứng dụng trả phí trên hệ điều hành Android không nhiều. Ưu, nhược điểm của hệ điều hành Android Về ưu điểm, người dùng hệ điều hành Android có khả năng tùy chỉnh và thay thế tất cả mọi thứ mà không bị giới hạn bởi Google. Với các nhà phát triển ứng dụng và các lập trình viên, họ có thể dễ dàng điều chỉnh và phân phối ứng dụng trên Android. Chi phí hiệu quả, giá thành phải chăng, có thể dễ dàng truy cập và thân thiện với người dùng cũng là những điểm sáng của hệ điều hành này.
Về nhược điểm, hệ điều hành với mã nguồn mở là “con dao hai lưỡi” cho người sử dụng Android, các ứng dụng giả mạo, bảo mật thấp, dễ bị lấy cắp thông tin là những nguy cơ mà người dùng phải đối mặt khi sử dụng Android. Đồng thời, khả năng cập nhập hệ điều hành chậm chạp, do vậy không phải thiết bị nào của Android cũng có thể sử dụng hoặc nâng cấp hệ điều hành mới nhất. Nếu Lê Anh Tuấn – 223463 – 63IT3 18 Đồ án tốt nghiệp người dùng muốn trải nghiệm hệ điều hành Android mới nhất, cách duy nhất họ có thể làm là đổi qua các thiết bị khác. Bộ thư viện Jetpack Jetpack là một tập hợp các software components Android giúp bạn phát triển các ứng dụng Android tuyệt vời dễ dàng hơn.
Các thành phần này giúp bạn thực hiện theo các phương pháp hay nhất, giải phóng bạn khỏi viết mã soạn sẵn và đơn giản hóa các tác vụ phức tạp, vì vậy bạn có thể tập trung vào mã mà bạn quan tâm. Jetpack bao gồm các thư viện gói androidx. *, Không được gộp vào các API platforms. Điều này có nghĩa là nó cung cấp khả năng tương thích ngược và được cập nhật thường xuyên hơn nền tảng Android, đảm bảo bạn luôn có quyền truy cập vào các phiên bản mới nhất và tuyệt vời nhất của các thành phần Jetpack.
Có thể phân loại Android Jetpack thành 4 thành phần chính: -Foumdation components (Ví dụ: ktx, appcompat, multidex, test) -Architecture components (Ví dụ: Data Binding, Lifecycles, ViewModel, Livedata, Room, Paging, Navigation, WorkManager) -Behavior components (Ví dụ: Download manager, Media, Notifications, Permissions, Sharing, Slices) -UI components (Ví dụ: Animations, Auto, Emoji, Fragment, Layout, Palette, TV, Wear OS ) 1. Một số components trong Jetpack 1. Data Binding Data Binding là một thư viện được tích hợp trong gói Android Jetpack.