Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 190 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
190
Dung lượng
5,25 MB
Nội dung
TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT HƯNG YÊN KHOA CÔNG NGHỆ THÔNG TIN *** HỌC PHẦN: CHUYÊN ĐỀLẬPTRÌNHMẠNGTRÊNANDROID HỆ: ĐẠI HỌC (tài liệu lưu hành nội bộ) Hưng Yên – Tháng năm 2017 Bài tập thực hành CĐ3: LậptrìnhdịchvụmạngAndroid MỤC LỤC Bài Tổng quan module 1.1 Tổng quan module 1.2 Một số thư viện thường dùng android 1.2 Tiến trình luồng .3 1.2.1 Tiến trình 1.2.2 Luồng 1.2.3 Lớp Hander 1.2.4 Giới thiệu đa luồng 1.3 AsyncTask 1.3.1 Tổng quan lớp AsyncTask .7 1.3.2 Mô tả lớp AsyncTask .7 1.3.3 Ứng dụng tải ảnh từ internet 1.3.4 Ứng dụng ProgressBar với AsyncTask 11 Bài Tin nhắn 14 2.1 SmsManager 14 2.1.1 Giới thiệu SmsManager 14 2.1.2 Để thực xây dựng ứng dụng với SmsManager qua bước sau: 14 2.2 Telephony 17 2.2.1 Giới thiệu Telephony Manager 17 2.2.2 Thao tác với Telephony Manager 17 2.3 Intent 19 2.3.1 Định nghĩa 19 2.3.2 Phương thức mô tả Intent 19 2.3.3 Thao tác với intent 20 2.4 BroadcastReceiver 20 2.4.1 Giới thiệu Broadcast Receiver 20 2.4.2 Ứng dụng thông báo thay đổi trạng thái wifi 21 2.4.3 Ví dụ ứng dụng BroadCast tự định nghĩa 22 Bài Thư điện tử 25 3.1 Gửi email 25 3.1.1 Intent Object – Những hỗ trợ để sử dụng tính Email 25 3.1.2 Intent ứng dụng gửi email 26 3.2 Gmail API 26 3.3 Một số chức email 27 3.3.1 Xem email 27 3.3.2 Tạo thư nháp 28 3.3.3 Cập nhật thư rác 30 3.3.4 Gửi thư rác 30 Bài Ứng dụng tin nhắn ứng dụng thư điện tử 31 4.1 Tổng hợp kiến thức liên quan 31 4.2 Ứng dụng tin nhắn SMS 31 4.3 Ứng dụng thư điện tử 40 Bộ môn Công nghệ Phân mềm khoa Công nghệ Thông tin Trang Bài tập thực hành CĐ3: LậptrìnhdịchvụmạngAndroid Bài Một số dịchvụ google 43 5.1 Giới thiệu Google service 43 5.2 Google Map Service 43 5.2.1 Một số ứng dụng Google Map API 45 5.2.2 Yêu cầu để hiển thị đồ sử dụng google map 45 5.3 Mapview 48 5.3.1 Giới thiệu Mapview 48 5.3.2 Sử dụng Mapview 48 5.3.3 Xây dựng ứng dụng hiển thị vị trí địa điểm đồ 48 5.4 Location Base Service 55 5.4.1 The Location Object 56 5.4.2 LocationManager 57 5.4.3 Ứng dụng vị trí 58 Bài Ứng dụng Location Base service 63 6.1 Tìm tọa độ địa điểm 63 6.1.1 Tìm tọa độ địa điểm với google map 63 6.1.2 Tìm tọa độ địa điểm với Google Earth 63 6.2 Các phương thức lớp Map 65 6.3 Ứng dụng tìm đường vị trí dung Google Map Direction API 67 Bài Kết nối với tài nguyên Internet 68 7.1 Giới thiệu WebView 68 7.1.1 Giới thiệu WebView 68 7.1.2 Thao tác với WebView qua bước sau: 68 7.1.3 Ví dụ 68 7.2 Giới thiệu ConnectionReceiver NetworkInfo 70 7.2.1 Lớp ConnectivityManager 70 7.2.2 Lớp NetworkInfo 71 7.3 Quản lý mạng kết nối mạng 71 7.3.1 Kiểm tra trạng thái kết nối mạng 71 7.3.2 Ứng dụng cảnh báo trạng thái kết nối mạng thay đổi với BroadcashReceiver 74 Bài Sử dụng nguồn liệu từ internet 76 8.1 Định vị tài nguyên 76 8.1.1 Liên kết 76 8.1.2 Định nghĩa URL 76 8.1.3 Cấu trúc URL 76 8.2 HTML RSS 77 8.2.1 Định nghĩa HTML 77 8.2.2 Cấu trúc HTML 77 8.2.3 HTML CSS 78 8.2.4 Một số thể hay dùng HTML 79 8.2.5 RSS 79 8.2.6 Đặc tả RSS 80 8.2.7 Một số phần tử RSS 81 8.3 Một số lớp liên quan tới 81 8.3.1 Giới thiệu lớp URL 81 Bộ môn Công nghệ Phân mềm khoa Công nghệ Thông tin Trang Bài tập thực hành CĐ3: LậptrìnhdịchvụmạngAndroid 8.3.2 Giới thiệu lớp URLConnection 82 8.3.3 Giới thiệu lớp HttpURLConnection 83 8.4 Lấy liệu đơn giản từ URL internet 84 8.4.1 Load liệu văn từ internet điện thoại 84 8.4.2 Load ảnh từ internet 86 8.4.3 Load nhạc từ internet 89 Bài Ứng dụng duyệt web Webmini đọc tin tức 89 9.1 Tổng hợp kiên thức liên quan 89 9.2 Ứng dụng duyệt web Webmini 89 9.3 Ứng dụng đọc báo 94 Bài 10 Một số khái niệm dịchvụmạng 95 10.1 Một số khái niệm 95 10.1.1 Mô hình OSI 95 10.1.2 Giao thức 96 10.1.3 Địa IP 97 10.1.4 Cổng (Port) 98 10.1.5 Mô hình hướng kết nối TCP/IP 98 10.1.6 So sánh khác TCP UDP 100 10.1.6 Mô hình OSI TCP/IP 101 10.2 Giới thiệu WebService 101 10.2.1 Giới thiệu WebService 101 10.2.2 Định nghĩa WebService 101 10.2.3 Đặc điểm Web service 102 10.2.4 Ưu nhược điểm 102 10.3 Kiến trúc Web service 103 10.3.1 Kiến trúc Web service 103 10.3.2.Thành phần Web service 104 10.4 Xây dựng triển khai dịchvụmạng cho ứng dụng di động 105 10.4.1 Giới thiệu 105 10.4.2 Các bước triển khai dịchvụmạng cho ứng dụng di động 106 10.4.3 Giao tiếp client server 106 10.5 Một số công nghệ lậptrìnhmạng 106 10.5.1 Công nghệ Web Service 107 Bài 11 Định dạng liệu XML 110 11.1 Tổng quan XML 110 11.1.1 Giới thiệu XML 110 11.1.2 XML HTML 110 11.1.3 XML làm cải thiện dịchvụ Web 111 11.2 Đặc tả cấu trúc nội dung tài liệu XML 112 11.2.1 Các quy tắc văn XML 112 11.2.2 Cú pháp XML 114 11.2.3 Đặc tả tài liệu XML 116 11.2.4 Ví dụ đặc tả tệp XML 117 11.2.5 Tài liệu XML hợp lệ 118 11.2.6 Tạo tài liệu XML hợp lệ 120 Bộ môn Công nghệ Phân mềm khoa Công nghệ Thông tin Trang Bài tập thực hành CĐ3: LậptrìnhdịchvụmạngAndroid 11.3 Phân tích liệu XML 121 13.3.1 Phân tích XML kỹ thuật DOM 122 13.3.2 Phân tích XML kỹ thuật SAX 123 13.3.3 Kỹ thuật DOM kỹ thuật SAX 124 11.4 Tạo tài liệu XML android 124 Bài 12 Định dạng liệu JSON 129 12.1 Giới thiệu JSON 129 12.1.1 Giới thiệu JSON 129 12.1.2 Định nghĩa JSON 129 12.1.3 Ưu điểm Json 129 12.2 Cấu trúc tệp JSON 129 12.2.1 Cấu trúc tệp JSON 129 12.2.2 Ví dụ mô tả JSON 131 12.3 Thao tác với tệp định dạng JSON 132 12.3.1 Tổng quan thao tác với tệp JSON 132 12.3.2 Các bước thực thao tác với URL định dạng JSON 132 12.3.3 Đọc databse dạng jSON 133 12.4 JSON XML 134 Bài 13 Dịchvụ Web với WebService 136 13.1 Cấu hình IIS SQL 136 13.1.1 Cài đặt IIS 136 13.1.2 Cấu hình SQL 137 13.2 Khởi tạo WebService 138 13.2.1 Các bước xây dựng WebService 138 13.2.2 Xây dựng WebService hỗ trợ phép tính cộng 139 Bài 14 Lậptrìnhdịchvụmạng Xây dựng ứng dụng di động 142 14.1 Tổng hợp số kiến thức liên quan 142 14.1.1 Sử dụng AsyncTask 142 14.1.2 Thư viện KSOAP 142 14.1.3 Thư viện Retrofit 142 14.2 Ứng dụng WebService 142 Bài 15 Dịchvụ Web với WebAPI 152 15.1 Tổng quan Web API 152 15.1.1 Giới thiệu API 152 15.1.2 Giới thiệu Web API 152 15.1.3 Đặc điểm Web API (.NET 4.0 trở lên) 153 15.1.4 Công cụ phát triển Web API 153 15.2 Khởi tạo cấu hình Web API 154 15.2.1 Tạo ứng dụng Web API Visual Studio 154 15.2.2 Tạo ứng dụng Web API 156 Bài 16 Ứng dụng Dịchvụ Web theo công nghệ WebAPI 160 16.1 Tổng hợp số khái niệm lien quan với WebAPI 160 16.1.1 Tạo Web API: 160 16.1.2 TẠO WEB API BẰNG NODEJS, CSDL MONGODB(NoSQL) 160 16.2 Ứng dụng quản lý account với Web API 161 Bộ môn Công nghệ Phân mềm khoa Công nghệ Thông tin Trang Bài tập thực hành CĐ3: LậptrìnhdịchvụmạngAndroid 16.3 Xây dựng app android đọc account từ Web API 166 Bài 17 Giới thiệu bảo mật mobile 171 17.1.Giới thiệu 171 17.2 Các mức bảo vệ mạng 171 17.2.1 Bảo vệ Quyền truy nhập 171 17.2.2 Đăng ký tên /mật 171 17.2.3 Mã hoá liệu 172 17.2.4 Bảo vệ vật lý 172 17.2.5 Tường lửa 172 17.2.6 Quản trị mạng 172 17.2.7 An toàn thông tin mật mã 173 17.3 Một số phương pháp bảo mật ứng dụng Android 173 17.3.1 Lưu trữ nội 174 17.3.2 Mã hóa liệu nhớ 174 17.3.3 Sử dụng Intents cho IPC 174 17.3.4 Sử dụng HTTPS 175 17.3.5 Sử dụng GCM thay cho SMS 176 17.3.6 Tránh Yêu cầu liệu cá nhân 176 17.3.7 Xác nhận User Input 176 17.3.8 Sử dụng ProGuard Trước Publishing 177 17.4 Tạo chữ ký kỹ thuật số ứng dụng Android 177 17.4.1 Giới thiệu 177 17.4.2 Tạo chữ ký kỹ thuật số ứng dụng Android 178 Bộ môn Công nghệ Phân mềm khoa Công nghệ Thông tin Trang Bài tập thực hành CĐ3: LậptrìnhdịchvụmạngAndroid DACH MỤC TỪ VIẾT TẮT STT Từ viết tắt API Cụm từ đầy đủ Application Programming Interface CSS Cascading Style Sheets DB DataBase GCM Google Cloud Messaging GPS Global Positioning Service GUI Graphical User Interface HTML Hyper Text Markup Language HTTP Hyper Text Transfer Protocol HTTPS Secure Hyper Text Transfer Protocol 10 IP Internet Protocol 11 JDBC Java Database Connectivity 12 JSON JavaScript Object Notation 13 LINQ Language Integrated Query 14 REST Representational State Transfer 15 RESTFul Representational State Transfer 16 RPC Remote Procedure Calls 17 RSS Really Simple Syndication 18 SOAP Simple Object Access Protocol 19 SQL Structured Query Language 20 SSL Secure Sockets Layer 21 TCP Transmission Control Protocol Transmission Control Protocol/Internet Protocol 22 TCP/IP 23 URI Uniform Resource Identifier 24 URL Uniform Resource Locator 25 26 27 WCF Windows Communication Foundation Web Service Description Language Extensible Markup Language WSDL XML Bộ môn Công nghệ Phân mềm khoa Công nghệ Thông tin Trang Bài tập thực hành CĐ3: LậptrìnhdịchvụmạngAndroid DANH MỤC HÌNH VẼ, BẢNG Hình Hình ảnh mô phòng MultiThreading .7 Hình Lớp kế thừa từ lớp AsyncTask Hình Mô hình làm việc AsyncTask Hình Thứ tự thực phương thức lớp AsyncTask Hình Kết ứng dụng ProgressBar 13 Hình Hoạt động Broadcast Receiver 21 Hình Các kiểu giao diện hiển thị đồ mà Google Maps cung cấp 44 Hình API key google service 45 Bảng Bảng số phương thức hay sử dụng lớp Location 56 Bảng Các tham số phương thức locationManager.requestLocationUpdates 57 Hình Lấy tọa độ địa điểm với google map 63 Hình 10 Lấy tọa độ địa điểm với google Earth 64 Bảng Các phương thức lớp Map 65 Bảng Các thuộc tính lớp Map 66 Bảng Sự kiện Map 66 Bảng Các điều khiển Map 66 Hình 11 Cấu trúc trang web theo định dạng HTML 78 Hình 12 Cấu trúc trang web theo định dạng HTML5 78 Bảng Bảng phương thức khởi tạo lớp URL 81 Bảng Bảng số phương thức lớp URL 82 Bảng Bảng mô tả chức mô hình OSI 96 Hình 13 Phương thức hoạt động giao thức TCP/IP 99 Hình 14 Mô hình OSI cụm giao thức TCP/IP 101 Hình 15 Kiến trúc Web service 103 Hình 16 Mô hình giao tiếp client server 106 Hình 17 Kiến trúc WCF 107 Hình 18 Kiến trúc WebAPI 109 Hình 19 Phân tích cú pháp XML 114 Hình 20 Phân tích XML kỹ thuật DOM 122 Hình 21 Cấu trúc tệp JSON 131 Hình 22 Cài đặt IIS 137 Bộ môn Công nghệ Phân mềm khoa Công nghệ Thông tin Trang Bài tập thực hành CĐ3: LậptrìnhdịchvụmạngAndroid Bài Tổng quan module 1.1 Tổng quan module Module giới thiệu cho người học dịchvụmạng đối tượng thư viện hỗ trợ việc lậptrìnhdịchvụmạngandroidDịchvụdịchvụmạng giới thiệu module gồm: Các dịchvụ điện thoại, dịchvụ google, dịchvụ web Một số vấn đề liên quan giới thiệu như: khái niệm webservice, cụm giao thức mạng, loại liệu XML, JSON lưu trữ liệu internet 1.2 Một số thư viện thường dùng android Gson Gson thư viện Android dùng để tạo Json từ Java Object gắn giá trị cho Java Object từ Json Thư viện thường sử dụng tương tác với APIs Chúng ta thường sử dụng Json nhẹ đơn giản so với XML Retrofit Trên trang chủ Retrofit có câu: “Retrofit turns your REST API into a Java interface” nói lên đầy đủ chức Đây giải pháp tuyệt vời để tổ chức lời gọi API dự án Các lời gọi request thêm đơn giản tiện dụng Ta sử dụng Callback để lấy kết request gửi lên Sử dụng thư viện Retrofit Trang chủ: http://square.github.io/retrofit/ Retrofit Rest Client (Tìm hiểu thêm chuẩn RESTFul link tham khảo) cho Android Java tạo Square Họ làm cho việc nhận tải lên JSON (hoặc liệu khác) cách dễ dàng tới WebService dựa mô hình REST Để làm việc với Retrofit cần triển khai lớp: – Model class to map JSON Data – Interfaces để định nghĩa API cho Webservice – Retrofit.Builder Lớp để định nghĩa URL Endpoint cho hoạt động liên quan tới Http EvenBus EvenBus thư viện làm đơn giản giao tiếp phần ứng dụng bạn Ví dụ, để gửi liệu từ Activity tới Service chạy, gửi liệu Fragment ActiveAndroid ActiveAndroid ORM dành cho Android Nó trừu tượng SQLite cho phép bạn giao tiếp với database device viết câu lệnh SQL Universal Image Loader UIL thư viện cung cấp asynchronous, caching hình ảnh … KSOAP KSOAP2 thư viện nhẹ để sử dụng thiết bị bị ràng buộc Nó thư viện bao gồm tất thư viện do-it-all Tuy nhiên có nghĩa để tương tác với hầu hết động SOAP phổ biến SOAP đưa số chi phí đáng kể cho dịchvụ web vấn đề thiết bị di động Nếu bạn có toàn quyền kiểm soát máy khách máy chủ, kiến trúc dựa REST / JSON đơn giản đầy đủ KSOAP2 tạo thành từ trình phân tích cú pháp XML, phân tách de / lớp vận chuyển Bộ môn Công nghệ Phân mềm khoa Công nghệ Thông tin Trang ... CĐ3: Lập trình dịch vụ mạng Android Bài Tổng quan module 1.1 Tổng quan module Module giới thiệu cho người học dịch vụ mạng đối tượng thư viện hỗ trợ việc lập trình dịch vụ mạng android Dịch vụ dịch. .. hành CĐ3: Lập trình dịch vụ mạng Android