LẬP TRÌNH ANDROID NÂNG CAO Bài 6: Các thao tác mạng

36 168 0
LẬP TRÌNH ANDROID NÂNG CAO	Bài 6: Các thao tác mạng

Đ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

LẬP TRÌNH ANDROID NÂNG CAO Bài 6: Các thao tác mạng Nội dung học  Kiểm tra kết nối mạng thiết bị  Quản lý sử dụng mạng thiết bị  Miêu tả Preference Activity  Đáp ứng thay đổi Preference  Nhận biết thay đổi kết nối mạng  Phân tích XML Data Kiểm tra kết nối mạng thiết bị  Một thiết bị có nhiều kiểu kết nối mạng  Hai kiểu kết nối mạng chủ yếu kết nối WiFi 3G  WiFi thường có tốc độ nhanh hơn, 3G thường chậm  Trước bạn thực thao tác mạng, bạn nên kiểm tra trạng thái kết nối mạng  Nếu ứng dụng bạn khơng có kết nối mạng, bạn nên thơng báo với người dùng Kiểm tra kết nối mạng thiết bị  Hai lớp sau dùng để kiểm tra kết nối mạng  ConnectionManager: Truy vấn trạng thái kết nối mạng, đồng thời thơng báo người dùng có thay đổi kết nối mạng thiết bị  NetworkInfo: miêu tả trạng thiết mạng ứng với kiểu cụ thể (WiFi 3G) Kiểm tra kết nối mạng thiết bị  Sử dụng phương thức getNetworkInfo lớp NetworkInfo để kiểm tra kết nối mạng  Lớp ConnectivityManager có kiểu TYPE_WIFI (mạng WiFi) TYPE_MOBILE (mạng 3G)  Phương thức isConnected NetworkInfo để kiểm tra kết nối mạng WIFI, 3G, thiết bị Phương thức trả lại giá trị true false  Khi kiểm tra kết nối mạng Emulator, bạn sử dụng phím F8 để tắt bật 3G Emulator  Phải bổ sung quyền android.permission.INTERNET android.permission.ACCESS_NETWORK_STATE AndroidManifest.xml để ứng dụng thực kết nối INTERNET Kiểm tra kết nối mạng thiết bị O DEM Kiểm tra kết nối mạng Wifi, 3G thiết bị Android Quản lý sử dụng mạng  Bạn xây dựng preference activity cho phép người dùng điều khiển sử dụng tài nguyên cho ứng dụng  Ví dụ: Bạn cho phép người dùng upload video thiết bị kết nối mạng Wifi  Bạn khai báo intent filter cho hành động ACTION_MANAGE_NETWORK_USAGE (từ Android 4.0) để miêu tả ứng dụng bạn định nghĩa Activity cho phép điều khiển sử dụng mạng  ACTION_MANAGE_NETWORK_USAGE hiển thị setting để quản lý dung lượng mạng ứng dụng cụ thể  Bạn nên khai báo intent filter cho setting activity Quản lý sử dụng mạng  Trong ví dụ sau, lớp SettingActivity hiển thị giao diện preference cho phép người dùng chọn download feed từ StackOverflow Xây dựng Preference Activity  Ví dụ, hiển thị hình preference cho phép người dùng thiết lập thông tin sau:  Hiển thị thơng tin tóm tắt XML feed entry hiển thị link entry  Cho phép tải XML feed từ mạng cho phép tải có WiFi Phân tích Feed  Bước phân tích Feed để định trường (field) mà bạn quan tâm  Parser trích rút liệu trường cần thiết bỏ qua cac trường khác  Chúng ta tìm hiểu ví dụ NetworkActivity  Trong ví dụ NetworkActivity, post StackOverflow.com xuất feed entry tag có chứa số tag Cấu trúc feed StackOverflow Khởi tạo Parser  Bước khởi tạo Parser bắt đầu q trình phân tích  Trong đoạn code ví dụ sau, parser khởi tạo mà khơng xử lý namespace, sử dụng InputStream đầu vào  Parser bắt đầu tiến trình phân tích lời gọi nextTag() gọi phương thức readFeed (dùng để trích xuất xử lý liệu mà ứng dụng quan tâm) Khởi tạo Parser Đọc Feed  Phương thức readFeed thực cơng việc xử lý feed  Tìm kiếm element có tag “entry” đầu vào trình xử lý đệ quy feed  Nếu tag khơng có entry tag, bỏ qua  Khi toàn feed xử lý đệ quy, trả lại List chứa entry (bao gồm thành phần liệu) trích xuất từ feed  Cuối List trả lại cho parser Đọc Feed Phân tích XML  Như miêu tả phần phân tích Feed, bạn phải xác định tag bạn muốn phân tích Trong ví dụ chúng ta, bạn phải trích xuất liệu cho tag entry tag title, link, summary  Tạo phương thức sau:  Phương thức read cho tag mà bạn quan tâm Ví dụ readEntry(), readTitle()  Parser đọc tag từ input stream Khi parser gặp tag tên entry, titlte, summary, gọi phương thức tương ứng Nếu khơng bỏ qua tag Phân tích XML  Đối với tag tittle summary, parser gọi readText()  Phương thức trích xuất liệu tag lời gọi parser.getText() Phân tích XML  Đối với tag link, parser trích xuất liệu link cách kiểm tra xem link có phải link cần quan tâm không  Sử dụng parser.getAttributeValue() để trích xuất liệu link Phân tích XML  Đối với tag entry, parser gọi readEntry() Phương thức phân tích tag entry trả lại đối tượng Entry với liệu thành viên tittle, link, summary Phân tích liệu XML  Ví dụ phân tích liệu XML sử dụng AsyncTask  AsyncTask không xử lý liệu main thread  Khi kết thúc xử lý, ứng dụng cập nhật UI main activity Sử dụng liệu XML Lớp DownloadXmlTask  Lớp DownloadXmlTask lớp Asynctask  Lớp gồm có hai phương thức sau:  doInBackground():thi hành phương thức loadXmlFromNetwork() Nó truyền tham số feed URL Phương thức loadXmlFromNetwork() xử lý liệu feed Khi kết thúc trả lại xâu kết  onPostExecute() trả lại xâu kết hiển thị UI Lớp DownloadXmlTask Tổng kết nội dung học  Kiểm tra kết nối mạng thiết bị  Quản lý sử dụng mạng thiết bị  Miêu tả Preference Activity  Đáp ứng thay đổi Preference  Nhận biết thay đổi kết nối mạng  Phân tích XML Data ... kiểu kết nối mạng  Hai kiểu kết nối mạng chủ yếu kết nối WiFi 3G  WiFi thường có tốc độ nhanh hơn, 3G thường chậm  Trước bạn thực thao tác mạng, bạn nên kiểm tra trạng thái kết nối mạng  Nếu... sung quyền android. permission.INTERNET android. permission.ACCESS_NETWORK_STATE AndroidManifest.xml để ứng dụng thực kết nối INTERNET Kiểm tra kết nối mạng thiết bị O DEM Kiểm tra kết nối mạng Wifi,... khơng có kết nối mạng, bạn nên thơng báo với người dùng Kiểm tra kết nối mạng thiết bị  Hai lớp sau dùng để kiểm tra kết nối mạng  ConnectionManager: Truy vấn trạng thái kết nối mạng, đồng thời

Ngày đăng: 27/02/2019, 17:27

Từ khóa liên quan

Mục lục

  • LẬP TRÌNH ANDROID NÂNG CAO

  • Slide Number 2

  • Slide Number 3

  • Slide Number 4

  • Slide Number 5

  • Slide Number 6

  • Slide Number 7

  • Slide Number 8

  • Slide Number 9

  • Slide Number 10

  • Slide Number 11

  • Slide Number 12

  • Slide Number 13

  • Slide Number 14

  • Slide Number 15

  • Slide Number 16

  • Slide Number 17

  • Slide Number 18

  • Slide Number 19

  • Slide Number 20

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

Tài liệu liên quan