ứng dụng android giúp xem thời tiết tại thời điểm hiện tại và xem dự báo thời tiết trong 5 ngày tới

71 339 0
ứng dụng android giúp xem thời tiết tại thời điểm hiện tại và xem dự báo thời tiết trong 5 ngày tới

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Thực hành chuyên sâu Mục lục Sinh viên: Phan Tiến Dũng Lớp D12PTUD Trang Thực hành chuyên sâu Danh mục bảng Bảng 2-2 Các thuộc tính Intent Sinh viên: Phan Tiến Dũng Lớp D12PTUD Trang Thực hành chuyên sâu Danh mục hình ảnh Chương Hình 2-1 Cấu trúc stack hệ thống Android Hình 2-2 Chu kỳ sống ứng dụng Android Hình 2-3 Activity stack Hình 2-4 Chu kỳ sống Activity Hình 2-5 Các hàm kiện ứng dụng Android Hình 2-6 Cấu trúc giao diện ứng dụng Android Hình 2-7 Bố trí widget sử dụng LinearLayout Hình 2-8 Bố trí widget FrameLayout Hình 29 Bố trí widget AbsoluteLayout Hình 2-10 Bố trí widget RetaliveLayout Hình 2-11 Bố trí widget TableLayout Hình 2-12 ImageButon Hình 2-13 ImageView ImageButton Hình 2-14 Minh hoạ cho ListView Hình 2-15 Minh họa cho TextView Hình 2-16 Minh họa cho EditText Hình 2-17 Minh họa cho CheckBox Hình 2-18 Minh hoạ context menu Hình 219 Truyền liệu Activity Hình 2-20 Các Action định nghĩa sẵn Intend Chương Hình 3–1 Phác thảo chức xem thời tiết vị trí người dùng Hình 3–2 Phác thảo chức xem thời tiết địa điểm Hình 3–3 Phác thảo chức xem thời tiết địa điểm Google map Hình 3–4 Phác thảo chức xem dự báo thời tiết vài ngày tới Hình 3–5 Biểu đồ Usercase hệ thống Hình 3–6 Biểu đồ Class thành phần giao diện Sinh viên: Phan Tiến Dũng Lớp D12PTUD Trang Thực hành chuyên sâu Hình 3–7 Các class package model Hình 3–8 Các class package model_prediction Hình 3–9 Các class package utils Hình 3–10 Các class package weather Hình 3–11 Biểu đồ chức xem thời tiết vị trí người dùng Hình 3–12 Biểu đồ chức xem thời tiết địa điểm Hình 3–13 Biểu đồ chức xem thời tiết vị trí Google Map Hình 3–14 Biểu đồ chức xem dự báo thời tiết địa điểm Hình 3–15 Biểu đồ trạng thái chức xem thời tiết vị trí người dùng Hình 3–16 Biểu đồ trạng thái chức xem dự báo thời tiết địa điểm Hình 3–17 Biểu đồ trạng thái chức xem thời tiết vị trí Google Map Hình 3–18 Biểu đồ trạng thái chức xem dự báo thời tiết địa điểm Hình 3–19 Biểu đồ hoạt động chức xem thời tiết vị trí người dùng Hình 3–20 Biểu đồ hoạt động chức xem thời tiết địa điểm Hình 3–21 Biểu đồ hoạt động chức xem thời tiết vị trí Google Map Hình 3–22 Biểu đồ hoạt động chức xem dự báo thời tiết địa điểm Hình 3-23 Cấu trúc Json cung cấp thông tin chi tiết thời tiết Hình 3-24 Cấu trúc Json cung cấp thơng tin dự báo thời tiết ngày tới Hình 3-25 Tổ chức project Hình 3–26 App Icon Hình – 27 Giao diện ứng dụng Hình 3–28 Giao diện xem thời tiết vị trí người dùng Hình 3–29 Giao diện chức xem thời tiết điểm Hình 3–30 Chức xem thời tiết điểm Google Map Hình 3–31 Chức xem dự báo thời tiết điểm Sinh viên: Phan Tiến Dũng Lớp D12PTUD Trang Thực hành chuyên sâu Lời mở đầu Trong chuyên đề này, trình bày ứng dụng Android giúp xem thời tiết thời điểm xem dự báo thời tiết ngày tới Nội dung chuyên đề có cấu trúc sau: Chương 1: Sự cần thiết dự báo thời tiết Trình bày cần thiết dự báo thời tiết Chương 2: Cơ sở lý thuyết Android Trình bày tổng quan Android, thành phần Anroid Chương Cách xây dựng ứng dụng NiceWeather demo ứng dụng Kết luận Tài liệu tham khảo Sinh viên: Phan Tiến Dũng Lớp D12PTUD Trang Thực hành chuyên sâu Chương Sự cần thiết dự báo thời tiết 1.1 Dự báo thời tiết ? Dự báo thời tiết ngành ứng dụng khoa học công nghệ để tiên đốn trạng thái vị trí bầu khí tương lai gần Lồi người nỗ lực dự báo thời tiết cách khơng thức từ nhiều thiên niên kỳ trước, việc dự báo thời tiết cách thức kỷ mười chín Cơng tác dự báo thời tiết thực cách thu thập số liệu trạng thái bầu khí áp dụng hiểu biết khoa học trình khí để tiên đốn tiến triển khí 1.2 Lịch sử phát triển dự báo thời tiết Con người cố gắng dự báo thời tiết nhiều thiên niên kỷ Năm 650 BC, người Babylon tiên đốn thời tiết dựa vào hình dạng đám mây dựa vào chiêm tinh học Khoảng 340 BC, Aristotle miêu tả phần thời tiết Meteorologica.Sau đó, Theophrastus biên soạn sách dự báo thời tiết, gọi Sách dấu hiệu Tục ngữ dự báo thời tiết người Trung Hoa có lẽ có từ khoảng 300 BC, mà vào khoảng thời gian nhà thiên văn cổ đại Ấn Độ phát triển phương pháp dự báo thời tiết Năm 904 AD, Nông nghiệp Nabatean Ibn Wahshiyya nói dự báo thời tiết liên quan tới thay đổi khí dấu hiệu dự báo liên quan tới thay đổi từ hành tinh sao; dấu hiệu mưa dựa quan sát pha Mặt Trăng; dự báo thời tiết dựa chuyển động gió Phương pháp dự báo thời tiết người cổ đại thường dựa quan sát phần kiện, nhận phần thời tiết xảy Ví dụ, quan sát thấy Mặt Trời lặn có màu đỏ, ngày hơm sau thời tiết thuận lợi Kinh nghiệm tích lũy qua nhiều hệ tựu lại thành tục ngữ thời tiết Tuy nhiên khơng phải tiên đốn tin cậy được, nhiều câu dân gian thời tiết khơng cịn thỏa mãn thử nghiệm thống kê nghiêm ngặt Sinh viên: Phan Tiến Dũng Lớp D12PTUD Trang Thực hành chuyên sâu Cho đến phát minh điện báo năm 1835 thời kỳ đại dự báo thời tiết bắt đầu Trước thời điểm này, thực tế truyền tin từ nơi xa trạng thái thời tiết nhanh chuyến tàu nước (và tàu chạy nước phát minh thời đó) Cuối năm 1840, điện báo cho phép báo cáo điều kiện thời tiết vùng rộng lớn cách tức thời, cho phép dự báo từ hiểu biết điều kiện thời tiết ngồi việc thu thập số liệu từ hướng gió Hai nhà khoa học khai sinh khoa học dự báo thời tiết Francis Beaufort (tên tuổi ông gắn với thang Beaufort) người bảo trợ ông Robert Fitzroy (người phát triển áp kế Fitzroy) Cả hai có ảnh hưởng đến hải qn phủ Vương quốc Anh, thời điểm có nhạo báng báo chí cơng việc hai ông, nghiên cứu họ lại đạt niềm tin khoa học, Hải quân Hoàng gia chấp nhận, từ trở thành kiến thức sở cho dự báo thời tiết ngày Để truyền đạt thông tin (dữ liệu đo đạc quan sát tình hình thời tiết tại) cách xác, cần thiết phải có từ vựng tiêu chuẩn miêu tả khái niệm liên quan đến thời tiết (như mây, gió ); mây năm 1890 có atlas hồn thiện mơ tả Và đến với việc có vệ tinh, việc dự báo thời tiết trở lên đơn giản nhiều 1.3 Sự cần thiết dự báo thời tiết Trong thời đại ngày nay, với phát triển nhanh xã hội, nhu cầu chơi, du lịch hay buổi tổ chức kiện trời ngày tăng, hay việc làm nông (phụ thuộc nhiều vào thời tiết) Vì mà việc xem dự báo thời tiết cần thiết Chương Cơ sở lý thuyết Android 2.1 Sự đời lịch sử phát triển Android Ngày hệ điều hành Android trở nên quen thuộc với số lượng thiết bị sử dụng đứng đầ, chiếm gần 50% số lượng người dùng khơng ngừng tăng trưởng Vậy điều khiến cho sản phẩm gã khổng lồ google thành công đến Sinh viên: Phan Tiến Dũng Lớp D12PTUD Trang Thực hành chuyên sâu vậy? Hay trước đó, đời trưởng thành nào? Bài viết cung cấp thông tin tổng quan hệ điều hành Android Hoàn cảnh đời Khi nghành công nghiệp điện thoại di động sang trang mới, hệ điều hành mở dùng chung cho nhiều hãng điện thoại với tùy chọn riêng biệt miếng mồi béo bở mà Google nhìn thấy Dưới cột mốc đáng nhớ trình hình thành phát triển hệ điều hành Android - 10/2013, Android (inc) đời hãng phần mềm, với mục tiêu tạo - thiết bị thông minh, đáp ứng nhu cầu người dùng 8/2005, gã khổng lồ Google mua lại Android với toàn nhân viên 11/2007, Open Handset Alliance – Liên minh thiết bị cầm tay mở rộng đời với thành viên Texas Instruments, Tập đoàn Broadcom, Google, HTC, Intel, LG, Tập đoàn Marvell Technology, Motorola, Nvidia, Qualcomm, - Samsung Electronics, Sprint Nextel T-Mobile 10/2008, hệ điều hành Android thức trở thành phần mềm mã nguồn - mở 11/2008, Liên minh OHA mắt gói phát triển phần mềm Android SDK cho nhà lập trình Theo đó, cơng ty thứ ba phép thêm ứng dụng riêng họ vào Android bán chúng mà không cần phải hỏi ý kiến - Google 12/2008, có thêm 14 thành viên gia nhập dự án Android cơng bố, gồm có ARM Holdings, Atheros Communications, Asustek Computer Inc, Garmin Ltd, Softbank, Sony Ericsson, Toshiba Corp, Vodafone Group Plc Các phiên Android Phiên hệ điều hành Android đời vào tháng 9/2008 tháng 2/2009 tên gọi thức, sau này, phiên đời Sinh viên: Phan Tiến Dũng Lớp D12PTUD Trang Thực hành chuyên sâu với tên gọi tráng miệng với vần đầu bảng Anphabet C-D-E-F-GH-I… - Android Cupcake 1.5, 4/2009: Phiên có số tính đáng ý như: khả ghi lại xem video thông qua chế độ máy ghi hình, tải video lên YouTube ảnh lên Picasa trực tiếp từ điện thoại, tích hợp bàn phím ảo với khả đoán trước văn bản, tự động kết nối với thiết bị Bluetooth khoảng cách định, widget thư mục cài đặt - linh động hình chủ Android Donut 1.6, 9/2009: Phiên giúp Nâng cao trải nghiệm kho ứng dụng Android Market, tích hợp giao diện tùy biến cho phép người dùng xóa nhiều ảnh lúc, nâng cấp Voice Search, nâng cấp khả tìm kiếm bookmarks, history, contacts web hình chủ, bước đầu hỗ - trợ hình độ phân giải WVGA Android Eclair 2.0 + 2.1, 10/2009 Phiên có cải thiện rõ rệt giao diện người dùng, tối ưu hóa tốc độ phần cứng, hỗ trợ nhiều kích cỡ độ phân giải hình hơn, thay đổi giao diện duyệt web hỗ trợ chuẩn HTML5, Exchange ActiveSync 2.5, nâng cấp Google Maps 3.1.2, camera zoom kĩ thuật số tích hợp đèn flash, nâng cấp bàn phím ảo kết nối - Bluetooth 2.1 2.2 Android Froyo 5/2010: Phiên trọng nâng cấp tốc độ xử lí, giới thiệu engine Chrome V8 JavaScript, hỗ trợ Adobe Flash10.1, thêm tính tạo điểm truy cập Wi-Fi Một tính đáng ý khác hỗ trợ chuyển đổi nhanh chóng ngơn ngữ từ điển bàn phím đồng thời cho phép cài đặt cập nhật ứng dụng thiết bị mở rộng nhớ Một smartphone chạy phiên Android 2.2 Froyo LG - Optimus One Android Gingerbread 2.3, 12/2010: Phiên nâng cấp đáng kể giao diện người dùng, cải thiện bàn phím ảo, thêm tính copy/paste, hỗ trợ cơng nghệ giao tiếp tầm sóng ngắn NFC, hỗ trợ chuẩn video WebM nâng Sinh viên: Phan Tiến Dũng Lớp D12PTUD Trang Thực hành chuyên sâu cao tính copy–paste Cùng với phiên Gingerbread, Google - mắt điện thoại hãng sử dụng tảng Google Nexus S Android Honeycomb 3.0, 2/2011: Đây phiên hệ điều hành dành riêng cho máy tính bảng tablet với giao diện tối ưu hóa cho tablet, từ thao tác phụ thuộc hình cảm ứng (như lướt web, duyệt mail ) Honeycomb hỗ trợ xử lí đa nhân xử lý đồ họa đồng thời hỗ trợ nhiều hình home khác nhau, cho phép người dùng dễ dàng tùy biến giao diện - muốn Android 4.0 Ice Cream Sandwich, cuối 2011 Đây lần Google hợp hệ điều hành dành cho smartphone cho máy tính bảng vào làm Android 4.0 nhắm đến việc duyệt web nhanh hơn, tối ưu - hóa hiệu suất hoạt động thiết bị, kéo dài thời gian dùng pin… Android Jelly Bean 4.1 +4.2, 2012: quan trọng hết Jelly Bean giao diện hay ứng dụng mà Project Butter giúp mang lại độ mượt chưa có cho Android Theo giải thích Google, độ mượt - có nhờ vào dự án Butter Android 4.3 Jelly Bean 4.3, 24/4/2013: kèm tính hỗ trợ kết nối Bluetooth Smart, API OpenGL ES 3.0, bổ sung tính sử dụng Wi-Fi để định vị người dùng tắt kết nối nhiều - thay đổi lớn nhỏ khác Android 4.4 KitKat, 15/10/2013 với cải tiến Chế độ tồn hình – Immersive Mode, Hiệu ứng chuyển cảnh hình -Transition Manager, Storage Access Framework, Chromium WebView, NFC,Cổng hồng ngoại – - Infrared Blasters … Android L, 26/06/2014 với cai tiến chất lượng pin, giao diện thoát nhẹ nhàng theo thiết kế Material Design, Android Runtime (ART) - sử dụng mặc định Android 5.0, 5.1 (Lollipop) Lollipop xuất lần smartphone Nexus Google, giới thiệu vào tháng 10.2014 Đến nay, phiên chiếm 36,1% thị phần thiết bị Andorid có mặt Sinh viên: Phan Tiến Dũng Lớp D12PTUD Trang 10 Thực hành chuyên sâu Hình 3-23 Cấu trúc Json cung cấp thông tin chi tiết thời tiết Sinh viên: Phan Tiến Dũng Lớp D12PTUD Trang 57 Thực hành chuyên sâu Hình 3-24 Cấu trúc Json cung cấp thơng tin dự báo thời tiết ngày tới Sinh viên: Phan Tiến Dũng Lớp D12PTUD Trang 58 Thực hành chuyên sâu - Từ xây dựng model tương ứng với cấu trúc Json Hình 3-25 Tổ chức project - Package model: tương ứng với cấu trúc Json cung cấp thông tin thời tiết chi - tiết địa điểm hay vị trí Package model_prediction: tương ứng với cấu trúc Json cung cấp thông tin - dự báo thời tiết ngày tới (Bao gồm số class package model) Package utils: có vai trò lấy liệu, convert từ định dạng JSON sang Java Object đổ liệu vào View tương ứng giao diện người dùng Bao gồm Class: Class GetDataWeather: gồm hàm lấy liệu từ định dạng Sinh viên: Phan Tiến Dũng Lớp D12PTUD Trang 59 Thực hành chuyên sâu JSON sang Java Object sử dụng thử viện Gson Enum TypeInputWeather gồm kiểu: public enum TypeInputWeather { ADDRESS_NAME, LATITUDE_LONGITUDE; } Để gọi hàm detailsWeather theo chức tương ứng Class WeatherAsyncTask: thực lấy liệu hàm doInBackGround (gọi tới hàm detailsWeather class GetDataWeather) phục vụ cho chức năng: xem thời tiết vị trí tại, xem thời tiết địa điểm xem thời tiết địa điểm Google Sau đổ liệu lên View tương ứng hàm onPostExecute Class WeatherAsyncTaskPrediction: thực lấy liệu hàm doInBackGround (gọi tới hàm predictionDaily class GetDataWeather) phục vụ cho chức năng: xem dự báo thời tiết ngày tới Sau đổ liệu lên listView hàm onPostExecute - Package weather: xử lý điều hướng activity, gọi hàm thuộc class package utils để thực lấy liệu hiển thị liệu lên View Bao gồm Class Activity: MainActivity: thực điều hướng check Internet bấm vào chức WeatherCurrentLocationActivity: lấy kinh độ vĩ độ điện thoại sau hiển thị thơng tin thời tiết chi tiết địa điểm người dùng ChooseAnyAddressActivity: cho người dùng nhập địa điểm cần xem thơng tin thời tiết Sau chuyển string (địa điểm) qua WeatherAnyAddressActivity WeatherAnyAddressActivity: nhận địa điểm từ ChooseAnyAddressActivity, sau hiển thị thơng tin thời tiết chi tiết địa điểm Sinh viên: Phan Tiến Dũng Lớp D12PTUD Trang 60 Thực hành chuyên sâu Class MyInfoWindowAdapter: custom lại cửa sổ window để hiển thị thông tin thời tiết chi tiết người dùng bấm vào vị trí Map MapsActivity: hiển thị Map đưa camera đến vị trí người dùng đồng thời hiển thị thông tin thời tiết vị trí Sau người dùng bấm vào vị trí khác Map để tiếp tục xem thông tin thời tiết Class PredictionAdapter: custom lại listView để hiển thị thông tin dự báo thời tiết ngày tới WeatherPredictionActivity: cho người dùng nhập vào địa điểm, sau hiển thị lên listView thông tin thời tiết ngày tới • 3.6 Demo ứng dụng Sinh viên: Phan Tiến Dũng Lớp D12PTUD Trang 61 Thực hành chuyên sâu Các hình ảnh ứng dụng Hình – 26 App Icon Sinh viên: Phan Tiến Dũng Hình – 27 Giao diện ứng dụng Lớp D12PTUD Trang 62 Thực hành chuyên sâu Hình – 28 Giao diện xem thời tiết vị trí người dùng Sinh viên: Phan Tiến Dũng Lớp D12PTUD Trang 63 Thực hành chuyên sâu Sinh viên: Phan Tiến Dũng Lớp D12PTUD Trang 64 Thực hành chuyên sâu Hình – 29 Giao diện chức xem thời tiết điểm Sinh viên: Phan Tiến Dũng Lớp D12PTUD Trang 65 Thực hành chuyên sâu Sinh viên: Phan Tiến Dũng Lớp D12PTUD Trang 66 Thực hành chuyên sâu Hình – 30 Chức xem thời tiết điểm Google Map Sinh viên: Phan Tiến Dũng Lớp D12PTUD Trang 67 Thực hành chuyên sâu Sinh viên: Phan Tiến Dũng Lớp D12PTUD Trang 68 Thực hành chuyên sâu Hình – 31 Chức xem dự báo thời tiết điểm Kết luận Như trình bày trên, với đề tài “ứng dụng xem dự báo thời tiết Android, thực đầy đủ nội dung đề tài bao gồm: - Chương 1: Sự cần thiết dự báo thời tiết Chương 2: Cơ sở lý thuyết Android Chương 3: Cách xây dựng ứng dụng NiceWeather demo ứng dụng Những kết thu được: • • • Tìm hiểu đời phát triển Android đến Các thành phần giao diện Android Xây dựng thành công ứng dụng Android: Xem dự báo thời tiết NiceWeather Tuy nhiên, ứng dụng cịn số hạn chế chưa khắc phục • Chưa bắt lỗi tìm kiếm khơng thành cơng chức xem dự báo Sinh viên: Phan Tiến Dũng Lớp D12PTUD Trang 69 Thực hành chuyên sâu thời tiết • Giao diện người dùng chưa đầy đủ • Những tiện ích ứng dụng chưa nhiều Phương hướng phát triển • Khắc phục lỗi tìm kiểm không thành công chức xem dự báo thời • tiết Nâng cấp giao diện chức dự báo thời tiết cụ thể thêm nhiều thông tin hơn, xem nhiều ngày Lời cám ơn Em xin chân thành cám ơn cô giáo hướng dẫn Th.S Đỗ Thị Liên, người trực tiếp hướng dẫn, giúp đỡ em q trình thực khóa luận Do thời gian tìm hiểu Android chưa nhiều nên ứng dụng em làm chắn cịn nhiều thiếu sót hạn chế Em mong đánh giá hướng dẫn thầy để em hồn thiện ứng dụng ĐÁNH GIÁ CỦA GIÁO VIÊN Sinh viên: Phan Tiến Dũng Lớp D12PTUD Trang 70 Thực hành chuyên sâu Tài liệu tham khảo http://giaotrinhhay.com/android-co-ban-kien-truc-cua-he-dieu-hanh-android/ http://laptrinhmobileapp.com/android/huong-dan-bat-dau-lap-trinh3 android/android-kien-truc-architecture/ http://android.vn/threads/chuong-i-bai-2-kien-truc-android.15024/ https://duythanhcse.wordpress.com/ Unlocking Android - Charlie Collins http://android.vn/forums/lap-trinh-ung-dung-android.21/ http://android.appwhoosh.com/content/nhung_kien_thuc_co_ban_ve_thiet_bi _di_dong_va_lap_trinh_cho_thiet_bi_di_dong/tong_quan_ve_lap_trinh_cho _thiet_bi_di_dong.html http://stackoverflow.com/ Sinh viên: Phan Tiến Dũng Lớp D12PTUD Trang 71

Ngày đăng: 01/07/2016, 12:56

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan