Hướng Dẫn Chi Tiết Xây Dựng Ứng Dụng Android Lấy Dữ Liệu Mới Từ Hosting Theo Thời Gian Thực

Khóa luận tốt nghiệp trình bày cách xây dựng ứng dụng Android lấy dữ liệu mới từ hosting theo thời gian thực, tối ưu hóa hiệu suất và trải nghiệm người dùng.

Trường đại học

Đại học Dân lập Hải Phòng

Chuyên ngành

Công nghệ thông tin

Người đăng

Ẩn danh

Thể loại

Đồ án tốt nghiệp

2018

82
2
0

Phí lưu trữ

30 Point

Mục lục chi tiết

LỜI CẢM ƠN

LỜI MỞ ĐẦU

1. CHƯƠNG 1: TỔNG QUAN HỆ ĐIỀU HÀNH ANDROID

1.1. Lịch sử hệ điều hành Android

1.2. Kiến trúc của hệ điều hành Android

1.3. Nền tảng Android

1.4. Tầng ứng dụng

1.5. Giao diện hệ điều hành Android

1.6. Quá trình phát triển phiên bản Android

1.6.1. Phiên bản Android 1.5

1.6.2. Phiên bản Android 1.6

1.6.3. Phiên bản Android 2.1

1.6.4. Phiên bản Android 2.3

1.6.5. Phiên bản Android 2.7

1.6.6. Phiên bản Android 3.6

1.6.7. Phiên bản Android 4.4

1.6.8. Phiên bản Android 4.1

2. CHƯƠNG 2: TẠO ỨNG DỤNG VỚI ANDROID STUDIO

2.1. Cài đặt môi trường lập trình Android

2.2. Cài đặt JAVA JDK

2.3. Cài đặt Android Studio

2.4. Máy ảo Android Genymotion

2.5. Thành phần trong một dự án Android

2.6. Tệp cấu hình Android

2.7. Thư mục Java

2.8. Thư mục Res

2.9. Thành phần giao diện

2.10. Nhóm hiển thị

2.11. Thành phần hiển thị

2.12. Vòng đời ứng dụng Android

2.13. Cách sử dụng

2.14. Chức năng chính

2.15. Các Intent trong Broadcast receiver

2.16. Security issues with Android Broadcast receivers

2.17. Thành phần dịch vụ trong Android

2.18. Animation trong android

2.19. Hiệu ứng cơ bản

2.20. Cách sử dụng

2.21. Hệ quản trị cơ sở dữ liệu SQLite

2.22. Sử dụng SQLite trong Android

3. CHƯƠNG 3: TỔNG QUAN VỀ WEBSERVICE

3.1. Yêu cầu và tính năng cần thiết của hosting

3.2. Dung lượng hosting

3.3. Cơ sở dữ liệu trên web

3.4. Đặc điểm của database

3.5. Các loại Database thường dùng

3.6. Các hệ quản trị cơ sở dữ liệu phổ biến

3.7. Dịch vụ web

3.8. Cách thức hoạt động

3.9. Nền tảng Webservice

3.10. RESTful Web Service

3.11. Cách sử dụng phương thức HTTP

3.12. Phi trạng thái (stateless)

3.13. Hiển thị cấu trúc thư mục như URI

3.14. Định dạng dữ liệu (html, json, text, xml…)

4. CHƯƠNG 4: ỨNG DỤNG

4.1. Thông báo sản phẩm mới

4.2. Phát biểu bài toán

4.3. Biểu đồ quy trình nghiệp vụ

4.4. Biểu đồ tuần tự

4.5. Biểu đồ hoạt động

4.6. Xây dựng cơ sở dữ liệu

4.7. Xây dựng dịch vụ web

4.8. Lớp truy vấn cơ sở dữ liệu

4.9. Lớp nhận yêu cầu

4.10. Lớp xử lý yêu cầu

4.11. Xây dựng ứng dụng Android

4.12. Gửi yêu cầu và nhận dữ liệu

4.13. Lớp định hằng thời gian

4.14. Một số giao diện chương trình

TÀI LIỆU THAM KHẢO

Tóm tắt

I. Hướng dẫn xây dựng ứng dụng Android

Phần này tập trung vào hướng dẫn xây dựng ứng dụng Android từ cơ bản đến nâng cao. Tài liệu cung cấp chi tiết về cách thiết lập môi trường phát triển, bao gồm cài đặt Android StudioJava JDK. Ngoài ra, nó cũng đề cập đến việc sử dụng máy ảo Android Genymotion để kiểm thử ứng dụng. Các thành phần cơ bản của một dự án Android như tệp cấu hình, thư mục Java, và thư mục Res được giải thích rõ ràng. Phần này cũng nhấn mạnh tầm quan trọng của giao diện người dùng Android và cách thiết kế để tối ưu trải nghiệm người dùng.

1.1. Cài đặt môi trường lập trình

Để bắt đầu phát triển ứng dụng Android, cần cài đặt Java JDKAndroid Studio. Android Studio là công cụ chính thức của Google, hỗ trợ đầy đủ các tính năng cần thiết cho việc lập trình. Máy ảo Genymotion được giới thiệu như một giải pháp hiệu quả để kiểm thử ứng dụng trên nhiều thiết bị ảo khác nhau.

1.2. Cấu trúc dự án Android

Một dự án Android bao gồm nhiều thành phần như tệp cấu hình AndroidManifest.xml, thư mục Java chứa mã nguồn, và thư mục Res chứa tài nguyên như hình ảnh, layout. Việc hiểu rõ cấu trúc này giúp quản lý dự án hiệu quả hơn.

II. Lấy dữ liệu từ hosting

Phần này tập trung vào việc lấy dữ liệu từ hosting và cách thức kết nối ứng dụng Android với các dịch vụ web. Tài liệu giải thích chi tiết về Webservice, đặc biệt là RESTful Web Service, và cách sử dụng các phương thức HTTP để truy xuất dữ liệu. API đóng vai trò quan trọng trong việc kết nối ứng dụng với server, cho phép cập nhật dữ liệu thời gian thực. Các định dạng dữ liệu phổ biến như JSONXML cũng được đề cập.

2.1. Webservice và RESTful API

Webservice là công nghệ cho phép ứng dụng Android giao tiếp với server. RESTful API là một trong những phương pháp phổ biến nhất, sử dụng các phương thức HTTP như GET, POST để truy xuất và gửi dữ liệu. Việc hiểu rõ cách thức hoạt động của API giúp phát triển ứng dụng hiệu quả hơn.

2.2. Kết nối mạng và cập nhật dữ liệu

Ứng dụng Android cần kết nối mạng để lấy dữ liệu từ hosting. Các thư viện như RetrofitVolley được giới thiệu để đơn giản hóa quá trình này. Cập nhật dữ liệu thời gian thực là yêu cầu quan trọng, đặc biệt trong các ứng dụng như thông báo tin tức hoặc theo dõi trạng thái.

III. Thời gian thực trong ứng dụng Android

Phần này tập trung vào việc triển khai thời gian thực trong ứng dụng Android. Tài liệu giải thích cách sử dụng các công nghệ như Firebase Realtime DatabaseWebSocket để đảm bảo dữ liệu được cập nhật liên tục. Tương tác người dùng được cải thiện nhờ khả năng phản hồi nhanh chóng từ server. Các ví dụ cụ thể về việc triển khai thông báo thời gian thực cũng được cung cấp.

3.1. Firebase Realtime Database

Firebase Realtime Database là một giải pháp phổ biến để triển khai thời gian thực trong ứng dụng Android. Nó cho phép dữ liệu được đồng bộ hóa ngay lập tức giữa client và server, đảm bảo tính nhất quán và tốc độ phản hồi cao.

3.2. WebSocket và thông báo thời gian thực

WebSocket là công nghệ khác hỗ trợ thời gian thực, cho phép kết nối hai chiều giữa client và server. Nó thường được sử dụng trong các ứng dụng yêu cầu thông báo thời gian thực như chat hoặc theo dõi trạng thái.

IV. Ứng dụng thực tế và kết luận

Phần cuối cùng trình bày một ứng dụng thực tế được xây dựng dựa trên các công nghệ đã đề cập. Ứng dụng này cho phép lấy dữ liệu mới từ hosting và hiển thị thông báo thời gian thực cho người dùng. Tài liệu cũng đưa ra các bài học kinh nghiệm và hướng phát triển trong tương lai, nhấn mạnh tầm quan trọng của việc tối ưu hóa giao diện người dùng Androidkết nối mạng.

4.1. Xây dựng ứng dụng thông báo sản phẩm mới

Ứng dụng được xây dựng để thông báo sản phẩm mới từ server. Nó sử dụng RESTful API để lấy dữ liệu và Firebase Realtime Database để cập nhật thông báo thời gian thực. Giao diện người dùng được thiết kế đơn giản, dễ sử dụng.

4.2. Kết luận và hướng phát triển

Tài liệu kết luận rằng việc xây dựng ứng dụng Android kết hợp lấy dữ liệu từ hostingthời gian thực là xu hướng quan trọng trong phát triển ứng dụng di động. Các hướng phát triển trong tương lai bao gồm tối ưu hóa hiệu suất và tích hợp thêm các công nghệ mới như AIIoT.

12/02/2025

Trích đoạn nội dung tài liệu

CHƯƠNG 1: TỔNG QUAN HỆ ĐIỀU HÀNH ANDROID 1. Lịch sử hệ điều hành Android Ban đầu, Android là hệ điều hành cho các thiết bị cầm tay dựa trên lõi Linux do công ty Android Inc. Công ty này sau đó được Google mua lại vào năm 2005 và bắt đầu xây dựng Android Platform. Các thành viên chủ chốt tại Android Inc.

gồm có: Andy Rubin, Rich Miner, Nick Sears, and Chris White. Và sau tiếp, vào cuối năm 2007, thuộc về liên minh thiết bị cầm tay mã nguồn mở(Open Handset Alliance) gồm các thành viện nổi bật trong ngành viễn thông và thiết bị cầm tay như: TexasInstruments, BroadcomCorporation, Google, HTC, Intel, LG, Marvell, Techn ologyGroup, Motorola, Nvidia, Qualcomm, SamsungElectronics, Sprint Nextel, TMobile, ARM Holdings, Atheros Communications, Asustek Computer Inc, Garmin Ltd, Softbank, Sony Ericsson, ToshibaCorp, and Vodafone Group. Mục tiêu của liên minh này là nhanh chóng đổi mới để đáp ứng tốt hơn cho nhu cầu người tiêu dùng và kết quả đầu tiên của nó chính là nền tảng Android. Android được thiết kế để phục vụ nhu cầu của các nhà sản xuất thiết, các nhà khai thác và các lập trình viên thiết bị cầm tay.

Phiên bản SDK lần đầu tiên phát hành vào tháng 11 năm 2007, hãng T-Mobile cũng công bố chiếc điện thoại Android đầu tiên đó là chiếc T-Mobile G1, chiếc smartphone đầu tiên dựa trên nền tảng Android. Một vài ngày sau đó, Google lại tiếp tục công bố sự ra mắt phiên bản Android SDK release Candidate 1. Trong tháng 10 năm 2008, Google được cấp giấy phép mã nguồn mở cho Android Platform. Khi Android được phát hành thì một trong số các mục tiêu trong kiến trúc của nó là cho phép các ứng dụng có thể tương tác được với nhau và có thể sử dụng lại các thành phần từ những ứng dụng khác.Việc tái sử dụng không chỉ được áp dụng cho cho các dịch vụ mà nó còn được áp dụng cho cả các thành phần dữ liệu và giao diện người dùng.

10 Vào cuối năm 2008, Google cho phát hành một thiết bị cầm tay được gọi là Android Dev Phone 1 có thể chạy được các ứng dụng Android mà không bị ràng buộc vào các nhà cung cấp mạng điện thoại di động. Mục tiêu của thiết bị này là cho phép các nhà phát triển thực hiện các cuộc thí nghiệm trên một thiết bị thực có thể chạy hệ điều hành Android mà không phải ký một bản hợp đồng nào.Vào khoảng cùng thời gian đó thì Google cũng cho phát hành một phiên bản vá lỗi 1.1 của hệ điều hành này. Ở cả hai phiên bản 1.1 Android chưa hỗ trợ soft-keyboard mà đòi hỏi các thiết bị phải sử dụng bàn phím vật lý. Android cố định vấn đề này bằng cách phát hành SDK 1.5 vào tháng tư năm 2009, cùng với một số tính năng khác.

Chẳng hạn như nâng cao khả năng ghi âm truyền thông, vật dụng, và các live folder. Kiến trúc của hệ điều hành Android  Android gồm 5 phần chính sau được chứa trong 4 lớp: Hình 1.1 Kiến trúc hệ điều hành Android 1. Nhân Linux Android dựa trên Linux phiên bản 2.6 cho hệ thống dịch vụ cốt lõi như security1, memory management, process management, network stack, and driver model. Kernel 1 Bảo mật 11 Linux hoạt động như một lớp trừu tượng hóa giữa phần cứng và phần còn lại của phần mềm stack.

Thư viện Android bao gồm một tập hợp các thư viện C/C++ được sử dụng bởi nhiều thành phần khác nhau trong hệ thống Android. Điều này được thể hiện thông qua nền tảng ứng dụng Android. Một số các thư viện cơ bản được liệt kê dưới đây:  Hệ thống thư viện C: một BSD có nguồn gốc từ hệ thống thư viện tiêu chuẩn C (libc), điều chỉnh để nhúng vào các thiết bị dựa trên Linux.  Thư viện Media – dựa trên PacketVideo's OpenCORE; các thư viện hỗ trợ phát lại và ghi âm của âm thanh phổ biến và các định dạng video, cũng như các tập tin hình ảnh tĩnh,bao gồm cả MPEG4, H.264, MP3, AAC, AMR, JPG, and PNG.

 Bề mặt quản lý – Quản lý việc truy xuất vào hệ thống hiển thị.  LibWebCore - một công cụ trình duyệt web hiện đại mà quyền hạn cả hai trình duyệt web Android và xem web nhúng.  SGL - Đồ họa 2D cơ bản của máy.  Thư viện 3D – một thực hiện dựa vào OpenGL ES 1.0 APIs; các thư viện sử dụng phần cứng tăng tốc 3D (nếu có), tối ƣu hóa cao rasterizer phần mềm 3D.

 FreeType- vẽ phông chữ bitmap và vector. SQLite một công cụ cơ sở dữ liệu quan hệ mạnh mẽ và nhẹ có sẵn cho tất cả các ứng dụng. Thực thi Android bao gồm một tập hợp các thư viện cơ bản mà cung cấp hầu hết các chức năng có sẵn trong các thư viện lõi của ngôn ngữ lập trình Java. Tất cả các ứng dụng Android đều chạy trong tiến trình riêng.

Máy ảo Dalvik đã được viết để cho một thiết bị có thể chạy nhiều máy ảo hiệu quả. Các VM Dalvik thực thi các tập tin thực thi Dalvik (dex). Định dạng được tối ưu hóa cho bộ nhớ tối thiểu.VM là dựa trên register- based, và chạy các lớp đã được biên dịch bởi một trình biên dịch Java để chuyển đổi thành các định dạng dex. Các VM Dalvik dựa vào nhân Linux cho các chức năng cơ bản như luồng và quản lý bộ nhớ thấp.

Nền tảng Android Bằng cách cung cấp một nền tảng phát triển mở, Android cung cấp cho các nhà phát triển khả năng xây dựng các ứng dụng cực kỳ phong phú và sáng tạo. Nhà phát triển được tự do tận dụng các thiết bị phần cứng, thông tin địa điểm truy cập, các dịch vụ chạy nền, thiết lập hệ thống báo động, thêm các thông báo để các thanh trạng thái, và nhiều, nhiều hơn nữa. Nhà phát triển có thể truy cập vào các API cùng một khuôn khổ được sử dụng bởi các ứng dụng lõi. Các kiến trúc ứng dụng được thiết kế để đơn giản hóa việc sử dụng lại các thành phần; bất kỳ ứng dụng có thể xuất bản khả năng của và ứng dụng nào khác sau đó có thể sử dụng những khả năng (có thể hạn chế bảo mật được thực thi bởi khuôn khổ).

Cơ chế này cho phép các thành phần tương tự sẽ được thay thế bởi người sử dụng.  Cơ bản tất cả các ứng dụng là một bộ các dịch vụ và các hệ thống, bao gồm:  Một tập hợp rất nhiều các View có khả năng kế thừa lẫn nhau dùng để thiết kế phần giao diện ứng dụng như: gridview, tableview, linearlayout,….  Một “Content Provider” cho phép các ứng dụng có thể truy xuất dữ liệu từ các ứng dụng khác (chẳng hạn như Contacts) hoặc là chia sẻ dữ liệu giữa các ứng dụng đó.  Một “Resource Manager” cung cấp truy xuất tới các tài nguyên không phải là mã nguồn, chẳng hạn như: localized strings, graphics, and layout files.

 Một “Notifycation Manager” cho phép tất cả các ứng dụng hiển thị các custom alerts trong status bar. Activity Maanager được dùng để quản lý chu trình sống của ứng dụng và điều hướng các activity. Tầng ứng dụng Tầng ứng dụng (Application) là tầng giao tiếp với người dùng với các thiết bị Android như Danh bạ, tin nhắn, trò chơi, tiện ích tính toán, trình duyệt… Mọi ứng dụng viết đều nằm trên tầng này. Giao diện hệ điều hành Android Giao diện người dùng của Android dựa trên nguyên tắc tác động trực tiếp, sử dụng cảm ứng chạm tương tự như những động tác ngoài đời thực như vuốt, chạm, kéo giãn và thu lại để xử lý các đối tượng trên màn hình.

Sự phản ứng với tác động của người dùng diễn ra gần như ngay lập tức, nhằm tạo ra giao diện cảm ứng mượt mà, 13 thường dùng tính năng rung của thiết bị để tạo phản hồi rung cho người dùng. Những thiết bị phần cứng bên trong như gia tốc kế, con quay hồi chuyển và cảm biến khoảng cách được một số ứng dụng sử dụng để phản hồi một số hành động khác của người dùng, ví dụ như điều chỉnh màn hình từ chế độ hiển thị dọc sang chế độ hiển thị ngang tùy theo vị trí của thiết bị, hoặc cho phép người dùng lái xe đua bằng xoay thiết bị, giống như đang điều khiển vô-lăng. Các thiết bị Android sau khi khởi động sẽ hiển thị màn hình chính, điểm khởi đầu với các thông tin chính trên thiết bị, tương tự như khái niệm desktop (bàn làm việc) trên máy tính để bàn. Màn hính chính Android thường gồm nhiều biểu tượng (icon) và tiện ích (widget); biểu tượng ứng dụng sẽ mở ứng dụng tương ứng, còn tiện ích hiển thị những nội dung sống động, cập nhật tự động như dự báo thời tiết, hộp thư của người dùng, hoặc những mẩu tin thời sự ngay trên màn hình chính.

Màn hình chính có thể gồm nhiều trang xem được bằng cách vuốt ra trước hoặc sau, mặc dù giao diện màn hình chính của Android có thể tùy chỉnh ở mức cao, cho phép người dùng tự do sắp đặt hình dáng cũng như hành vi của thiết bị theo sở thích. Những ứng dụng do các hãng thứ ba có trên Google Play và các kho ứng dụng khác còn cho phép người dùng thay đổi "chủ đề" của màn hình chính, thậm chí bắt chước hình dáng của hệ điều hành khác như Windows Phone chẳng hạn. Phần lớn những nhà sản xuất, và một số nhà mạng, thực hiện thay đổi hình dáng và hành vi của các thiết bị Android của họ để phân biệt với các hãng cạnh tranh. Ở phía trên cùng màn hình là thanh trạng thái, hiển thị thông tin về thiết bị và tình trạng kết nối.

Thanh trạng thái này có thể "kéo" xuống để xem màn hình thông báo gồm thông tin quan trọng hoặc cập nhật của các ứng dụng, như email hay tin nhắn SMS mới nhận, mà không làm gián đoạn hoặc khiến người dùng cảm thấy bất tiện. Trong các phiên bản đời đầu, người dùng có thể nhấn vào thông báo để mở ra ứng dụng tương ứng, về sau này các thông tin cập nhật được bổ sung thêm tính năng, như có khả năng lập tức gọi ngược lại khi có cuộc gọi nhỡ mà không cần phải mở ứng dụng gọi điện ra. Thông báo sẽ luôn nằm đó cho đến khi người dùng đã đọc hoặc xóa nó đi. Quá trình phát triển phiên bản Android Quá trình phát triển các phiên bản của hệ điều hành Android: Hình 1.1 Các phiên bản Android đến nay 1.

Phiên bản Android 1.5 Android Cupcake phiên bản Android thứ hai được phát triển bởi Google, là một phiên bản quan trọng được phát hành tới các thiết bị chạy Android vào tháng 5 năm 2009. Phiên bản này bao gồm các tính năng cho người dùng và nhà phát triển, cũng như các thay đổi trên API của nền tảng Android. Với lập trình viện, nền tảng Android 1.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ

Bài viết "Hướng dẫn xây dựng ứng dụng Android lấy dữ liệu mới từ hosting theo thời gian thực" cung cấp một hướng dẫn chi tiết về cách phát triển ứng dụng Android có khả năng cập nhật dữ liệu từ hosting theo thời gian thực. Nội dung chính bao gồm các bước thiết lập kết nối giữa ứng dụng và server, sử dụng các công nghệ như Firebase hoặc WebSocket để đảm bảo dữ liệu luôn được đồng bộ và hiển thị kịp thời. Bài viết cũng nhấn mạnh lợi ích của việc áp dụng phương pháp này, giúp ứng dụng trở nên linh hoạt, tăng trải nghiệm người dùng và giảm thiểu thời gian chờ đợi.

Nếu bạn quan tâm đến việc phát triển ứng dụng di động đa nền tảng, hãy khám phá thêm Đồ án hcmute xây dựng ứng dụng du lịch sử dụng flutter và microservices để hiểu rõ hơn về cách kết hợp Flutter và microservices trong các dự án thực tế. Bên cạnh đó, Đồ án hcmute xây dựng ứng dụng di động đa nền tảng bán sách sử dụng framework flutter cũng là một tài liệu hữu ích để bạn mở rộng kiến thức về phát triển ứng dụng đa nền tảng. Ngoài ra, nếu bạn muốn tìm hiểu sâu hơn về lập trình Android, Đồ án hcmute xây dựng ứng dụng android thông tin về hiến máu sử dụng java sẽ mang đến những góc nhìn thực tế và chi tiết.