Khoá Luận Tốt Nghiệp: Xây Dựng Ứng Dụng Android Lấy Thông Tin Dự Báo Thời Tiết

Khoá luận tốt nghiệp hướng dẫn xây dựng ứng dụng Android lấy thông tin dự báo thời tiết, phù hợp cho sinh viên công nghệ thông tin.

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

2019

67
5
0

Phí lưu trữ

30 Point

Tóm tắt

I. Giới thiệu hệ điều hành Android

Android là một hệ điều hành dựa trên nền tảng Linux, được thiết kế cho các thiết bị di động có màn hình cảm ứng như điện thoại thông minh và máy tính bảng. Ban đầu, Android được phát triển bởi Tổng công ty Android, với sự hỗ trợ tài chính từ Google và sau này được Google mua lại vào năm 2005. Ứng dụng Android được phát triển trên nền tảng mã nguồn mở, cho phép các nhà phát triển tự do điều chỉnh và phân phối. Android đã trở thành hệ điều hành phổ biến nhất trên thế giới, xuất hiện trên nhiều thiết bị điện tử khác nhau như smart TV và máy chơi game.

1.1. Sự phát triển của hệ điều hành Android

Android bắt đầu với bản beta đầu tiên vào tháng 11 năm 2007 và phiên bản thương mại đầu tiên, Android 1.0, được phát hành vào tháng 9 năm 2008. Kể từ đó, các phiên bản Android được đặt tên theo chủ đề bánh kẹo và phát hành theo thứ tự bảng chữ cái. Dự báo thời tiết là một trong những ứng dụng phổ biến trên Android, giúp người dùng cập nhật thông tin thời tiết một cách nhanh chóng và chính xác.

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

Android gồm 5 phần chính được chứa trong 4 lớp: Linux Kernel, Libraries, Android Runtime, Application Framework và Applications. Xây dựng ứng dụng trên Android đòi hỏi sự hiểu biết về kiến trúc này để tối ưu hóa hiệu suất và trải nghiệm người dùng.

II. Môi trường lập trình Android Studio

Android Studio là công cụ phát triển ứng dụng chính thức của Google, dựa trên nền tảng IntelliJ IDEA. Nó cung cấp một môi trường lập trình mạnh mẽ và linh hoạt để phát triển ứng dụng di động Android. Hướng dẫn lập trình trong Android Studio bao gồm các bước từ cài đặt đến tạo và chạy ứng dụng trên thiết bị ảo hoặc thiết bị thực.

2.1. Cài đặt Android Studio

Để cài đặt Android Studio, người dùng cần tải xuống từ trang chính thức của Google và làm theo các bước hướng dẫn. Yêu cầu phần cứng tối thiểu bao gồm hệ điều hành Windows 10/8/7 (32 hoặc 64-bit) và ít nhất 4GB RAM. Tích hợp dữ liệu thời tiết vào ứng dụng đòi hỏi cấu hình môi trường phát triển đúng cách để đảm bảo hiệu suất.

2.2. Thiết bị ảo trong Android Studio

Máy ảo Android là công cụ không thể thiếu để chạy thử ứng dụng trên máy tính. Genymotion là một trong những công cụ máy ảo phổ biến, hỗ trợ nhiều phiên bản Android và cấu hình thiết bị khác nhau. Giao diện người dùng của Genymotion dễ sử dụng, cho phép người dùng tạo và quản lý các thiết bị ảo một cách hiệu quả.

III. Kỹ thuật xây dựng ứng dụng thời tiết

Xây dựng ứng dụng Android lấy thông tin dự báo thời tiết đòi hỏi sự kết hợp giữa thiết kế giao diện và tích hợp API thời tiết. API thời tiết như OpenWeatherMap cung cấp dữ liệu thời tiết chính xác và cập nhật liên tục, giúp ứng dụng trở nên hữu ích và đáng tin cậy.

3.1. Tìm hiểu về dịch vụ OpenWeatherMap

OpenWeatherMap là một dịch vụ cung cấp thông tin thời tiết thông qua API. Nó hỗ trợ nhiều tính năng như dự báo thời tiết theo giờ, ngày và tuần. Tích hợp dữ liệu thời tiết từ OpenWeatherMap vào ứng dụng Android đòi hỏi việc đăng ký và kích hoạt API key.

3.2. Thiết kế giao diện ứng dụng

Thiết kế giao diện người dùng là một phần quan trọng trong quá trình phát triển ứng dụng. Sử dụng ngôn ngữ XML trong Android Studio, người dùng có thể tạo ra các giao diện trực quan và dễ sử dụng. Ứng dụng di động Android cần đảm bảo tính thẩm mỹ và khả năng tương tác cao để thu hút người dùng.

IV. Chương trình thực nghiệm

Phần này trình bày quá trình thực nghiệm xây dựng ứng dụng Android lấy thông tin dự báo thời tiết. Phát triển ứng dụng di động đòi hỏi sự kết hợp giữa lý thuyết và thực hành để đảm bảo ứng dụng hoạt động hiệu quả và đáp ứng nhu cầu người dùng.

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

Bài toán đặt ra là xây dựng ứng dụng Android có khả năng lấy và hiển thị thông tin dự báo thời tiết từ API OpenWeatherMap. Thông tin thời tiết cần được cập nhật liên tục và hiển thị một cách trực quan trên giao diện người dùng.

4.2. Thiết kế giao diện chương trình

Giao diện của ứng dụng được thiết kế để hiển thị thông tin thời tiết một cách rõ ràng và dễ hiểu. Giao diện người dùng bao gồm các thành phần như nhiệt độ, độ ẩm, tốc độ gió và dự báo thời tiết trong các ngày tiếp theo.

12/02/2025

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

mở đầu cuộc cách mạng ứng dụng di động này. Android Market trên G1 thời bấy giờ có rất ít ứng dụng và giao diện cực kỳ đơn giản, hơn nữa tính năng mua ứng dụng trên phiên bản này vẫn chưa được xuất hiện mãi cho đến năm sau - những vấn đề này dễ hiểu vì thời điểm này Android chỉ mới được khai sinh nên mọi thứ còn khá thô sơ như hình 1. Giao diện kho Hình 1.7 Giao diện kho ứng dụng thời kì đầu ứng dụng Android 8.0 Giao diện: Google đã phát triển giao diện Android phiên bản 1.0 với sự hỗ trợ từ TAT, viết tắt từ The Astonishing Tribe, một công ty thiết kế tương tác của Thụy Điển. Dấu ấn rõ ràng nhất mà TAT để lại trên phiên bản Android từ phiên bản 1.2 chính là widget đồng hồ kim nằm ngoài Home Screen tuy đơn giản nhưng rất đẹp mắt.

Công ty này sau đó ngừng hợp tác với Google và bị RIM mua lại để tập trung phát triển sản phẩm Blackberry cũng như nền tảng BBX sau này[2]. 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: Sinh Viên: Trần Thanh Bình - CT1801 10 Đồ Án Tốt Nghiệp Xây dựng ứng dụng Android lấy thông tin dự báo thời tiết Hình 1. Cấu trúc hệ thống Android Android dựa trên Linux phiên bản 2.6 cho hệ thống dịch vụ cốt lõi như security, memory management, process management, network stack, and driver model. Kernel 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[3].

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, PNG[3].

Bề mặt quản lý - Quản lý việc truy xuất vào hệ thống hiển thị. Sinh Viên: Trần Thanh Bình - CT1801 11 Đồ Án Tốt Nghiệp Xây dựng ứng dụng Android lấy thông tin dự báo thời tiết 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. 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 máy ảo 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. Máy ảo 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[4]. Sinh Viên: Trần Thanh Bình - CT1801 12 Đồ Án Tốt Nghiệp Xây dựng ứng dụng Android lấy thông tin dự báo thời tiết 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: Tập hợp 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 “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 đó.

“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. “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 là tầng giao tiếp với người dùng, ví dụ: trên thiết bị Android như danh bạ, 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à, 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 Sinh Viên: Trần Thanh Bình - CT1801 13 Đồ Án Tốt Nghiệp Xây dựng ứng dụng Android lấy thông tin dự báo thời tiết (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 [4].

Sinh Viên: Trần Thanh Bình - CT1801 14 Đồ Án Tốt Nghiệp Xây dựng ứng dụng Android lấy thông tin dự báo thời tiết Các phiên bản Android Hình 1. Lịch sử phát triển các phiên bản của Android Vào ngày 24 tháng 7 năm 2017, một bản xem trước thứ tư được phát hành bao gồm những tính năng hệ thống cuối cùng cùng với những sửa lỗi và cải tiến mới nhất. Oreo được chính thức phát hành công khai vào ngày 21 tháng 8 năm 2017. Sau đó là Android 8.

Oreo có một số cập nhật mới, nhiều điểm cải tiến so với bản tiền nhiệm như sideload (cài ứng dụng không có trên Store), giới hạn dữ liệu của ứng dụng nền, thông báo cho các ứng dụng chạy ở chế độ nền, Picture-in-piture, tự động điền mật khẩu trong ứng dụng, cải thiện thời lượng pin, Project Treble… Sinh Viên: Trần Thanh Bình - CT1801 15 Đồ Án Tốt Nghiệp Xây dựng ứng dụng Android lấy thông tin dự báo thời tiết CHƯƠNG 2: MÔI TRƯỜNG LẬP TRÌNH ANDROID STUDIO 2. Sơ lược về Android Studio Google cung cấp một công cụ phát triển ứng dụng Android trên Website chính thức dựa trên nền tảng IntelliJ IDEA gọi là Android Studio. Android studio dựa vào IntelliJ IDEA, là một IDE tốt cho nhất hiện nay. Do đó Android Studio sẽ là môi trường phát triển ứng dụng tốt nhất cho Android [5].

Cài Đặt Android Studio 2. Yêu Cầu Phần Cứng Máy Tính Hệ điều hành Windows  Microsoft® Windows® 10/8/7 (32 or 64-bit)  GB RAM. Phần mềm Android Studio  Vào đường dẫn: “https://developer.com/studio/” để download bản mới nhất và tiến hành cài đặt như hình 2.1: Sinh Viên: Trần Thanh Bình - CT1801 16 Đồ Án Tốt Nghiệp Xây dựng ứng dụng Android lấy thông tin dự báo thời tiết Hình 2. Trang download Android Studio  Khi cài đặt chú ý chọn cả SDK và trình giả lập thiết bị Android Studio Device như hình 2.

Giao diện cài đặt SDK và AVD  Tiếp tục chọn next và agree cho đến khi hoàn tất.  Khi việc cài đặt hoàn tất, chúng ta sẽ được như hình 2.

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 thông tin dự báo thời tiết" cung cấp một hướng dẫn chi tiết về cách phát triển ứng dụng Android để thu thập và hiển thị thông tin thời tiết. Nội dung bao gồm các bước từ thiết kế giao diện, tích hợp API dự báo thời tiết, đến xử lý dữ liệu và hiển thị kết quả. Bài viết không chỉ giúp người đọc nắm vững kiến thức lập trình Android mà còn mang lại kỹ năng thực tế trong việc xây dựng ứng dụng hữu ích, phục vụ nhu cầu hàng ngày.

Nếu bạn quan tâm đến các ứng dụng Android khác, hãy khám phá thêm về Đồ án hcmute thiết kế và xây dựng ứng dụng Business Weather, một dự án tương tự tập trung vào thời tiết nhưng với góc nhìn chuyên sâu hơn. Bên cạnh đó, bạn có thể tìm hiểu thêm về cách xây dựng ứng dụng đa nền tảng qua Đồ á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, hoặc khám phá cách truy xuất dữ liệu trong Tiểu luận đồ án đề tài xây dựng ứng dụng Android truy xuất. Mỗi liên kết là cơ hội để bạn mở rộng kiến thức và khám phá các chủ đề liên quan một cách chi tiết hơn.