Hướng dẫn thực hành lập trình trên thiết bị di động (Windows Phone 8 OS)
MỤC LỤC
Module 1: Introduction Windows Phone Os . 3
Module 2: Xaml, Phone Controls And Navigation . 14
Module 3: Working With The Phone, Camera And Photos . 56
Module 4: Working With The Tiles, Notifications, Contacts And Calendar . 68
Module 5: Data Storage . 75
Module 6: Web Services And The Cloud . 87
Module 7: Sensors . 88
Module 8: Assignment . 89
adAsync(); //Read the entire file into the FileText property using (StreamReader streamReader = new StreamReader(fileStream)){ txtContent.Text = streamReader.ReadToEnd(); } fileStream.Close(); } else { MessageBox.Show("An SD card was not detected"); } } Bài 4: Mục đích: - Xử lý mã hóa tập tin Yêu cầu: - Viết chương trình cho phép mã hóa và giải mã nội dung như hình dưới đây: Hướng dẫn: - Xem slide hướng dẫn từ 10-13 phần “5 -DATA STORAGE” - Nội dung thô được nhập vào ô đầu tiên - Nhấn nút Mã hóa sẽ tiến hành mã hóa nội dung thô, dữ liệu mã hóa được thể hiện ở ô cuối cùng - Nhấn nút Giải mã sẽ tiến hành giải mã và hiển thị lại nội dung ở ô số 2 Đại Học Công Nghệ Đồng Nai Khoa Công Nghệ Thông Tin Trang 79 Bài tập 5: Mục đích: - Thực hành về IsolatedStorage - Cách lưu trữ thông số cấu hình phần mềm Yêu cầu: - Viết phần mềm cho phép đăng nhập hệ thống như màn hình dưới đây: - Khi khởi động hệ thống sẽ hiển thị màn hình đăng nhập - Giả lập tài khoản để đăng nhập. - Khi nhấn nút “đăng nhập”: Phần mềm sẽ lưu lại thông tin tài khoản nếu như nút Checkbox được checked. - Khi đăng nhập thành công: Tiến hành đóng màn hình chính và mở màn hình thứ 2 lên, trong màn hình thứ 2 sẽ tự động mở một tập tin mp4 (chép mp4 vào thư mục Assets) Hướng dẫn: - Xem hướng dẫn trong slide 14 -18 phần “5 -DATA STORAGE” - Xem lại cách dùng control để mở mp4 Bài tập 6: Mục đích: - Thực hành về IsolatedStorageSettings - Cách thức lưu / đọc thông số cấu hình với dữ liệu Primitive data - Cách thức lưu / đọc thông số cấu hình với dữ liệu là Object Data - Ôn tập lại các control cơ bản trong Windows Phone: DatePicker, TogleSwitch, Pivot Yêu cầu: - Thiết kế chương trình với giao diện Pivot để thực hiện chức năng lưu thông tin cấu hình với 2 dạng: Primitive Data và Object Data (chú ý chỉ có một MainPage, nhưng dùng Pivot để tách ra làm 2 giao diện) Đại Học Công Nghệ Đồng Nai Khoa Công Nghệ Thông Tin Trang 80 Màn hình 1: - Nút Read: Để đọc các thông số cấu hình được lưu trữ và hiển thị lên giao diện - Nút Write: Tiến hành lưu trữ các thông số trên giao diện Màn hình 2: - Nút Read: Để đọc đối tượng Person được lưu trữ. - Nút Write: Để lưu đối tượng Person Hướng dẫn: - Xem hướng dẫn trong slide 14 -19 phần “5 -DATA STORAGE” Bài tập 7: Mục đích: - Thực hành cách đọc dữ liệu từ file XML - Cách dùng Binding Đại Học Công Nghệ Đồng Nai Khoa Công Nghệ Thông Tin Trang 81 Yêu cầu: Viết chương trình để hiển thị dữ liệu trong file XML với cấu trúc dưới đây: Trần Duy Thanh Số 3 đường 6, Khu Dân Cư Gia Hòa, Ấp 5, Phong Phú, Bình Chánh, Tp.HCM Phạm Thị Xuân Diệu Phú vang, Bình Đại, Bến Tre Nguyễn Văn Hùng Số 15 Nguyễn Văn Vĩ, Quận Tân Bình, TP.HCM Giao diện khi khởi động Chương trình: - Mỗi node Person sẽ được hiển thị theo từng vùng. - Mục tên (name) có màu đỏ - Mục địa chỉ(address) có màu trắng. Hướng dẫn: - Xem hướng dẫn trong slide 20 -24 phần “5 -DATA STORAGE” Bài tập 8: Mục đích: - Thực hành với Serialization - Thao tác với XMLSerializer - Thao tác với DataContractSerializer - Thao tác với DataContractJsonSerializer - Ôn tập lại Pivot control Đại Học Công Nghệ Đồng Nai Khoa Công Nghệ Thông Tin Trang 82 Yêu cầu: - Thiết kế phần mềm dùng Pivot control để tách Mainpage ra làm 3 giao diện như sau: - Màn hình 1: Thao tác với XMLSerializer - Màn hình 2: Thao tác với DataContractSerializer - Màn hình 3: Thao tác với DataContractJsonSerializer - Nút Save: Dùng để chuyển đổi qua từng kiểu Serializer tương ứng, dữ liệu được lấy từ ô First name và Last name. Kết quả sẽ được hiển thị vào ô TextBox lớn dưới cùng. - Nút Restore: Dùng để chuyển đổi ngược lại từ ô kết quả lên ô First name, Last name. Hướng dẫn: - Xem hướng dẫn trong slide 25 -35 phần “5 -DATA STORAGE” - Tìm hiểu thêm internet Bài tập 9: Mục đích: - Thực hành Web Resource - Thông qua các Webclient, HttpRequest để lấy các thông tin từ internet. - Cách tương tác với Flickr API để lấy hình ảnh, dữ liệu - Cách lấy Flickr API key như thế nào Yêu cầu: - Viết phần mềm cho phép đọc các thông tin từ trang Flickr với giao diện như sau: Đại Học Công Nghệ Đồng Nai Khoa Công Nghệ Thông Tin Trang 83 - Mặc định khi khởi động chương trình sẽ tải thư viện hình ảnh và nội dung từ trang Flickr. Hướng dẫn: - Xem hướng dẫn trong slide 36 -44 phần “5 -DATA STORAGE” - Tìm hiểu thêm internet Bài tập 10: Mục đích: - Thực hành về HttpWebRequest - Cách thức đọc dữ liệu từ trang web như thế nào Yêu cầu: - Viết chương trình cho phép đọc nội dung địa chỉ website như dưới đây: Hướng dẫn: - Xem hướng dẫn trong slide 36 -44 phần “5 -DATA STORAGE” Đại Học Công Nghệ Đồng Nai Khoa Công Nghệ Thông Tin Trang 84 Bài tập 11: Mục đích: - Sử dụng LinQ to SQL - Cách dùng DataContext - Hiểu được ORM trong Windows phone 8 Yêu cầu: - Thiết kế chương trình quản lý sách như dưới dây: - Màn hình chính sẽ hiển thị danh sách những đầu sách (tên sách và tên tác giả). - Mỗi dòng dữ liệu có nút Delete để xóa đầu sách khỏi hệ thống. - Chương trình hỗ trợ Application Bar menu cho phép hiển thị màn hình thêm mới một đầu sách vào hệ thống. - Tại màn hình thêm mới: Nhấn nút save để thêm mới, cancel để hủy, cả 2 thao tác này đều quay trở lại màn hình chính. Cập nhập lại danh sách đầu sách ở màn hình chính khi người sử dụng chọn nút save. Hướng dẫn: - Xem hướng dẫn trong slide 48 -52 phần “5 -DATA STORAGE” Đại Học Công Nghệ Đồng Nai Khoa Công Nghệ Thông Tin Trang 85 Bài tập 12: Mục đích: - Sử dụng SQLite - Cách thức bổ sung thư viện SQLite for Windows Phone vào hệ thống - Cách thức sử dụng project SQLiteWinRTPhone - Cách tạo cơ sở dữ liệu bằng SQLite - Cách tạo bảng và truy vấn thông tin. Yêu cầu: - Viết chương trình quản lý sách (mã sách, tên sách, số trang) với giao diện dưới đây: - Mặc định khi khởi động chương trình sẽ hiển thị danh sách đầu sách trong cơ sở dữ liệu SQLite lên Listbox (LonglistSelector). - Nút Lưu sách: Cho phép đưa thông tin sách vào cơ sở dữ liệu SQLite, đồng thời cập nhật lại giao diện. - Nút Tiếp: Xóa thông tin trên TextBox và focus vào ô mã sách. - Xử lý trên Listbox (LongListSelector): o Nếu nhấn (Tap): Hiển thị lại thông tin sách của đầu sách đang chọn lên TextBox. o Nếu nhấn lâu (Hold): Hiển thị cửa sổ hỏi chắc chắn mốn xóa hay không, nếu OK là xóa, Cancel là không. Hướng dẫn: - Xem hướng dẫn trong slide 53 -59 phần “5 -DATA STORAGE” Đại Học Công Nghệ Đồng Nai Khoa Công Nghệ Thông Tin Trang 86 Bài tập 13: Mục đích: - Sử dụng SQLite - Cách tạo bảng với nhiều tham chiếu. Yêu cầu: Cho cơ sở dữ liệu như hình bên dưới, viết lệnh tạo CSDL này bằng SQLite - Tự thiết kế giao diện phù hợp để cho phép xem, thêm, sửa, xóa dữ liệu của từng bảng Hướng dẫn: - Dưới đây là ví dụ về cách tạo 2 bảng có mối quan hệ ràng buộc: private async void LoadDatabase_Backup() { db = new Database(ApplicationData.Current.LocalFolder, "sqlitedemo.db"); string sql = @"CREATE TABLE IF NOT EXISTS Customer (Id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, Name VARCHAR( 140 ), Contact VARCHAR( 140 ) );"; string description = "Create Customer table"; await ExecuteSQLStatement(db, sql, description); sql = @"CREATE TABLE IF NOT EXISTS Project (Id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, CustomerId INTEGER, Name VARCHAR( 140 ), Description VARCHAR( 140 ), DueDate DATETIME, FOREIGN KEY(CustomerId) REFERENCES Customer(Id) ON DELETE CASCADE )"; description = "Create Project table"; await ExecuteSQLStatement(db, sql, description); // Turn on Foreign Key constraints sql = @"PRAGMA foreign_keys = ON"; description = "Enable foreign key constraints"; await ExecuteSQLStatement(db, sql, description); } Đại Học Công Nghệ Đồng Nai Khoa Công Nghệ Thông Tin Trang 87 Module 6: Web Services And The Cloud Nội dung kiến thức thực hành: - Thực hành Web Service và Cloud - Hiểu và thao tác được với SOAP, REST - Thực hành WCF data Services: Odata client, Filtered, Query, Paging, Caching… - Thực hành Web Service security - Thực hành Windows Azure: Azure web services, Mobile services Bài 1: Mục đích: Yêu cầu: o Hướng dẫn: Bài tập 2: Mục đích: Yêu cầu: Hướng dẫn: Đại Học Công Nghệ Đồng Nai Khoa Công Nghệ Thông Tin Trang 88 Module 7: Sensors Nội dung kiến thức thực hành: - Thực hành các thiết bị cảm ứng - Thực hành Orientation - Thực hành Maps - Thực hành Proximity sensors: NFC, BlueTooth… - Thực hành Speed APIs: Speech Synthesis, Speech to Text, Voice Commands. - Thực hành Sensors: Accelerometer, Compass, Gyroscope Bài 1: Mục đích: Yêu cầu: Hướng dẫn: - Bài tập 2: Mục đích: Yêu cầu: Hướng dẫn: Đại Học Công Nghệ Đồng Nai Khoa Công Nghệ Thông Tin Trang 89 Module 8: Assignment Đề tài 1: - Viết chương trình tra cứu từ điển Anh Việt – Việt Anh Đề tài 2: - Viết chương trình đăng ký học phần tín chỉ bằng SMS Đề tài 3: - Viết chương trình đăng ký học chứng chỉ tin học A, B bằng SMS Đề tài 4: - Viết game bắn bóng sử dụng Sensor Đề tài 5: - Viết chương trình quản lý Album ảnh Đề tài 6: - Viết chương trình gõ tiếng việt trong Android Đề tài 7: - Viết chương trình tìm đường đi Đề tài 8: - Viết game caro (chơi với máy) Đề tài 9: - Viết game xếp gạch Đề tài 10: Đại Học Công Nghệ Đồng Nai Khoa Công Nghệ Thông Tin Trang 90 - Viết chương trình chỉnh sửa hình ảnh trong Windows Phone 8 Đề tài 11: - Viết chương trình quản lý tài chính cá nhân Đề tài 12: - Viết game phi thuyền bằng Sensor Đề tài 13: - Mô phỏng trò chơi Line 98 trong Windows Phone 8 Đề tài 14: - Viết chương trình nhận dạng khuôn mặt và dự đoán trong vòng 20 năm nữa thì khuôn mặt đó sẽ thay đổi như thế nào Đề tài 15: - Viết chương trình vẽ đồ thị toán học trong Windows Phone 8
File đính kèm:
- Final_WindowsPhone8_Exercise_2014.pdf