ườ Tr ọ ự ng ĐH Khoa H c T  Nhiên TP.HCM

TRUNG TÂM TIN H CỌ

ậ L p trình Windows Phone Bài 1: Gi

i thi u Windows Phone

GV Biên so n: Tr n Duy Thanh

2014

Nội dung

• Lịch sử phát triển Windows Phone

• Các tính năng mới trong Windows Phone 8

• Giới thiệu Windows Phone 8 SDK

• Bắt đầu với lập trình Windows Phone 8

• Vòng đời ứng dụng Windows Phone

(application life cycle)

2

ớ ệ Bài 1: Gi i thi u Windows Phone

1. Lịch sử phát triển Windows Phone Ø Windows Phone 7.0 (10.2010)

ü Phiên bản đầu tiên của hệ điều hành Windows

Phone

3

ớ ệ Bài 1: Gi i thi u Windows Phone

1. Lịch sử phát triển Windows Phone Ø Windows phone 7.1 Mango (05/2011)

ü People Hub: Facebook, Hotmail, Gmail, LinkedIn

và Twitter

ü Tính năng Groups: cho phép người dùng giao tiếp trên nhiều ứng dụng cùng lúc (SMS, facebook, Hotmail, Gmail, Twitter, LinkedIn).

ü Internet Explorer 9

4

ớ ệ Bài 1: Gi i thi u Windows Phone

1. Lịch sử phát triển Windows Phone Ø Windows phone 7.5 Mango (05/2011)

ü Còn gọi là “No Do”

ü Hỗ trợ CDMA, Copy và Paste

ü Hỗ trợ khởi động nhanh ứng dụng

5

ớ ệ Bài 1: Gi i thi u Windows Phone

1. Lịch sử phát triển Windows Phone Ø Windows phone 7.5 Refresh (03/2012)

ü Hỗ trợ mạng 4G (LTE)

ü Phát hành 2 phiên bản khác nhau cho Nokia

Lumia 900 và HTC Titan II của AT&T

ü Sửa lỗi mất bàn phím.

ü Sửa lỗi truy cập định vị

ü ..và một số lỗi khác

6

ớ ệ Bài 1: Gi i thi u Windows Phone

1. Lịch sử phát triển Windows Phone Ø Windows phone 7.5 Tango(06/2012)

ü Nâng cấp tin nhắn đa phương tiện

ü Có thể gởi nhạc chuông qua MMS

ü Có thể xuất và quản lý danh bạ từ SIM card

ü Sửa một số lỗi về thanh toán trên ứng dụng ở một

số nước

7

ớ ệ Bài 1: Gi i thi u Windows Phone

1. Lịch sử phát triển Windows Phone Ø Windows phone 7.8 (01/2013)

ü Phiên bản cuối cùng của Windows Phone 7.x.

ü Mang một số tính năng mới trên Windows Phone

8 như:

Thay đổi kích thước của tiles ở màn hình chính

• Màn hình khởi động mới

Các biểu tượng mới cho các ứng dụng cơ bản như Games, Office, Windows Phone Store

Các thiết bị chạy Windows Phone 7.x sẽ không thể nâng cấp lên Windows Phone 8.

8

ớ ệ Bài 1: Gi i thi u Windows Phone

1. Lịch sử phát triển Windows Phone Ø Windows phone 8 (29/10/2012)

ü Chuyển sang sử dụng các component từ

Windows 8 (Windows Shared Core) như: kernel, file system, drivers, network, media and graphics

ü Hỗ trợ CPU đa nhân

ü Hỗ trợ nhiều độ phân giải (1280x720, 1280x768,

1080p)

ü Hỗ trợ thẻ nhớ

ü Internet Explorer 10

ü Hỗ trợ màn hình 6”

9

ớ ệ Bài 1: Gi i thi u Windows Phone

2. Các tính năng mới trong Windows Phone 8

v Nh c + videos

ạ v Đi n tho i

v Office trên di đ ngộ

ộ v Danh b  và m ng xã h i

v Email + Tin nh nắ

v Networking

ả ồ

v Trình duy t và b n đ

v Ph n m m doanh nghi p

v Windows Phone online

v Hình  nh + camera

10

http://www.windowsphone.com/en­us/how­to/wp8/start/whats­new­in­windows­phone

ớ ệ Bài 1: Gi i thi u Windows Phone

2. Các tính năng mới trong Windows Phone 8 v Điện thoại ü Kid's Corner

ü Data Sense

ü Quad core support

ü Eyes on the road

ü Wallet

ü Screen rotation lock

ü Microsoft account

ü Back up your stuff

ü Start screen

11

ü Tap + send ớ Bài 1: Gi

ệ i thi u Windows Phone

2. Các tính năng m i trong Windows Phone  8 ộ v Danh b  và m ng xã h i

ư ủ

ẽ ữ ơ ü Rooms:  n i  chia  s   d   li u  riêng  t   c a  các  thành  viên  trong  nhóm  nh :  l ch  làm  vi c,  hình  ả

ệ ư ị nh, chat, ghi chú

ü Groups sync: Đ ng b  Groups lên tài kho n Microsoft

ạ ễ

ü Contact sharing: Có th  chia s  Danh b  d  dàng qua email,

SMS, hay NFC

12

ớ ệ Bài 1: Gi i thi u Windows Phone

2. Các tính năng mới trong Windows Phone 8 v Email + Tin nh nắ

ằ ü G i mail b ng gi ng nói

ü Đ t âm báo cho t ng ng

ườ i

ü H  tr  đính kèm v  trí hay

ỗ ợ danh bạ ả ế

ü C i ti n bàn phím.

ả ế

ả ü C i ti n trong vi c so n th o

ü Skype app

ắ ü Xóa tin nh n và chat cũ

13

ớ ệ Bài 1: Gi i thi u Windows Phone

ả ồ

2. Các tính năng mới trong Windows Phone 8 ệ v Trình duy t và B n đ

ü Cá nhân hóa vi c ệ ả ế tìm ki m trên b n  đồ

ả ế

ệ ü C i ti n trình duy t

ộ ü Xóa m t ho c

ữ ệ

nhi u dòng d  li u  trong L ch s  trình  duy tệ

14

ớ ệ Bài 1: Gi i thi u Windows Phone

2. Các tính năng mới trong Windows Phone 8 v Hình ảnh và camera

ệ ứ

ü Hi u  ng

ử ỉ ü Ch nh s a

ự ộ

ü T  đ ng back up

lên SkyDrive

15

ớ ệ Bài 1: Gi i thi u Windows Phone

2. Các tính năng mới trong Windows Phone 8 v Nhạc và videos

ü Xbox Music

ü FM radio

ü Tương tác nhiều hơn

với playlist

16

ớ ệ Bài 1: Gi i thi u Windows Phone

2. Các tính năng m i trong Windows Phone  8 v Office trên di động

ỗ ợ

ü H  tr  OneNote

ü New Office Hub

ả ế

ứ ü C i ti n các  ng d ng office

17

ớ ệ Bài 1: Gi i thi u Windows Phone

2. Các tính năng mới trong Windows Phone 8 v Ứng dụng và Games

ü More Live Apps

ü Even smarter apps

ü Windows  Phone Store

18

ớ ệ Bài 1: Gi i thi u Windows Phone

2. Các tính năng mới trong Windows Phone 8 v Networking

ü Tùy chọn trong Wifi

ü Chia sẽ qua Bluetooth

19

ớ ệ Bài 1: Gi i thi u Windows Phone

2. Các tính năng mới trong Windows Phone 8 ệ v Ph n m m cho doanh nghi p

ü Các tính năng  m i ớ

ẹ ủ

ệ ề ộ ứ

ụ ứ cho  ng d ng doang  nghi pệ

ườ ọ

Thu  h p  kho ng  cách  gi a  nhu  ầ c u c a doanh nghi p và nhu c u  ủ c a  nhân  viên  v   m t  ng  d ng  trên di đ ngộ ệ ü Đ ng nh t môi tr ng làm vi c ọ ơ ệ ậ ü Truy c p tài li u m i lúc, m i n i

20

ớ ệ Bài 1: Gi i thi u Windows Phone

2. Các tính năng mới trong Windows Phone 8 v Windows Phone online

ü Sử dụng My Family để quản lý các ứng dụng và

game cho trẻ

21

ớ ệ Bài 1: Gi i thi u Windows Phone

3. Giới thiệu Windows Phone 8 SDKv Yêu cầu phần cứng trên máy tính

v Yêu cầu phần cứng trên điện thoại

v Yêu cầu hệ điều hành

v Windows Phone 8 SDK

22

ớ ệ Bài 1: Gi i thi u Windows Phone

3. Giới thiệu Windows Phone 8 SDKv Yêu cầu phần cứng trên máy tính

ü Hỗ trợ Hyper V: để chạy thiết bị giả lập

ü Slat (Second Level Address Translation): để chuyển

đổi IP của máy ảo thành địa chỉ vật lý

23

ớ ệ Bài 1: Gi i thi u Windows Phone

3. Giới thiệu Windows Phone 8 SDKv Yêu cầu phần cứng trên điện thoại

ü Thiết bị được cài sẵn Windows Phone 8

ü Không có yêu cầu bắt buộc về cấu hình

24

ớ ệ Bài 1: Gi i thi u Windows Phone

3. Giới thiệu Windows Phone 8 SDKv Yêu cầu về hệ điều hành

ü Windows 8 Pro 64bit hoặc cao hơn

25

ớ ệ Bài 1: Gi i thi u Windows Phone

3. Giới thiệu Windows Phone 8 SDKv Windows Phone 8 SDK

Link download WP 8 SDK :  http://www.microsoft.com/en­us/download/details.aspx?id=35471

File download : Wpexpress_full.exe

ư ụ

Th  m c cài đ t: \Program Files (x86)\Windows Phone  Kits\8.0 directory.

26

ớ ệ Bài 1: Gi i thi u Windows Phone

4. Bắt đầu với lập trình Windows Phone 8

Ø T o m i project Windows Phone 8

ư ụ ủ

Ø C u trúc th  m c c a project

ạ ứ Ø Kh i ch y  ng d ng

ử ụ

Ø S  d ng emulator

ế ị ậ ể ể

ử ứ

Ø Đăng ký thi

t b  th t đ  ki m th   ng d ng

27

ớ ệ Bài 1: Gi i thi u Windows Phone

4. Bắt đầu với lập trình Windows Phone 8

Ø T o m i project Windows Phone 8

ể ạ

M  Visual Studio 2012, ch n menu  File New Project đ  t o project m i ớ

28

ớ ệ Bài 1: Gi i thi u Windows Phone

4. Bắt đầu với lập trình Windows Phone 8

Ø T o m i project Windows Phone 8

Ch n ki u project Windows Phone ­> Windows Phone App 29

ớ ệ Bài 1: Gi i thi u Windows Phone

4. Bắt đầu với lập trình Windows Phone 8

Ø T o m i project Windows Phone 8

ạ ứ

30

ụ Ch n ki u lo i  ng d ng Windows Phone 8.0 ớ Bài 1: Gi

ệ i thi u Windows Phone

4. Bắt đầu với lập trình Windows Phone 8

ử ứ

ng

ể ấ Nh n  F5  đ   ch y  th   d ngụ

31

ớ ệ Bài 1: Gi i thi u Windows Phone

4. Bắt đầu với lập trình Windows Phone 8 v Các cửa sổ làm việc

ü Solution Explorer ü Properties ü Editor development ü XAML designer ü Emulator designer ü Toolbox ü Document Outline

32

ớ ệ Bài 1: Gi i thi u Windows Phone

4. Bắt đầu với lập trình Windows Phone v Cấu trúc thư mục đồ án

ượ

AppManifest.xml:  danh  sách  các  ặ c  thêm  vào  khi  cài  đ t  resource  đ ụ ứ ng d ng

chi  ứ ng  ượ ng,

ầ ứ

ươ

ả WMAppManifest.xml:  mô  t ế ứ t  ng  d ng  bao  g m  tên  ti ể ở ạ ụ d ng,  trang  kh i  t o,  bi u  t ng thích ph n c ng.  các t

33

ớ ệ Bài 1: Gi i thi u Windows Phone

4. Bắt đầu với lập trình Windows Phone v Cấu trúc thư mục đồ án

ü The Assets folder: ch a hình  nh c a  ng  ng  d ng,  các  tile,  các

ứ ể ượ bi u  t ở ộ ứ hình kh i đ ng  ng d ng.

ü The  Resources  folder:  cho  phép  ng ứ ữ d ng đa ngôn ng .

ü The App class : Ch a các x  lý chung

ủ ứ c a  ng d ng.

ü The  LocalizedStrings  class:  l p  truy

ế

ư ụ ậ c p đ n th  m c Resources.

34

ớ ệ Bài 1: Gi i thi u Windows Phone

4. Bắt đầu với lập trình Windows Phone v Chạy ứng dụng từ Visual Studio

ẽ ạ

ü M c đ nh,  ng d ng s  ch y trên

ặ ị emulator.

ạ ứ

ụ ế ố

ü B n  có  th   ch y  ng  d ng  trên  t  b   th t  thông  qua  k t  n i

ạ ể ế ị ậ thi ổ c ng USB

35

ớ ệ Bài 1: Gi i thi u Windows Phone

4. Bắt đầu với lập trình Windows Phone v Sử dụng emulator

ỗ ợ

i:

Emulator Windows Phone 8 h  tr  3 đ  phân gi ü WVGA­ 800 × 480pixels. Có thêm tùy ch n RAM 512MB. ü WXGA­ 1280 × 768pixels. ü 720p­ 1280 × 720pixels.

36

ớ ệ Bài 1: Gi i thi u Windows Phone

4. Bắt đầu với lập trình Windows Phone v Sử dụng emulator

Đóng

Thu nhỏ

Xoay ngang

Xoay dọc

Mở rộng

Phóng to

Các cộng cụ khác

37

ớ ệ Bài 1: Gi i thi u Windows Phone

4. Bắt đầu với lập trình Windows Phone v Sử dụng emulator

ü Các công cụ khác

Accelerometer tab

38

ớ ệ Bài 1: Gi i thi u Windows Phone

4. Bắt đầu với lập trình Windows Phone v Sử dụng emulator

ü Các công cụ khác

Location tab

39

ớ ệ Bài 1: Gi i thi u Windows Phone

4. Bắt đầu với lập trình Windows Phone v Sử dụng emulator

ü Các công cụ khác

Screenshot tab

40

ớ ệ Bài 1: Gi i thi u Windows Phone

4. Bắt đầu với lập trình Windows Phone v Sử dụng emulator

ü Các công cụ khác

Network tab

41

ớ ệ Bài 1: Gi i thi u Windows Phone

4. Bắt đầu với lập trình Windows Phone v Đăng ký thiết bị để cài đặt ứng dụng

ü Chuẩn bị

ả ậ

i website

• Đăng ký 1 tài kho n l p trình viên t http://dev.windowsphone.com

ế ố

ạ ớ

• K t n i đi n tho i v i Wifi ho c 3G

42

ớ ệ Bài 1: Gi i thi u Windows Phone

4. Bắt đầu với lập trình Windows Phone v Đăng ký thiết bị để cài đặt ứng dụng

ở ệ ể ế ố

ạ ứ

ế ụ

ượ

1.  M  đi n tho i và m  khóa màn hình. ệ ờ  trên đi n tho i.  2. Ki m tra ngày gi ạ ớ 3.  K t n i đi n tho i v i máy tính thông qua USB. 4.    Trên  máy  tính,,  tìm  ki m  “Windows  Phone  Developer  Registration” và ch y  ng d ng tìm đ

c

43

ớ ệ Bài 1: Gi i thi u Windows Phone

4. Bắt đầu với lập trình Windows Phone v Đăng ký thiết bị để cài đặt ứng dụng

5. Click the Register button

44

ớ ệ Bài 1: Gi i thi u Windows Phone

4. Bắt đầu với lập trình Windows Phone v Đăng ký thiết bị để cài đặt ứng dụng

6. Đăng nh p vào tài kho n Windows Live ID

ạ ạ

ắ i tr ng thái đ  ch c ch n đi n tho i đã đăng ký

ể 7. Ki m tra l thành công

45

ớ ệ Bài 1: Gi i thi u Windows Phone

5. Vòng đời ứng dụng

Ứng dụng Windows Phone chuyển đổi qua lại giữa các trạng thái

46

ớ ệ Bài 1: Gi i thi u Windows Phone

5. Vòng đời ứng dụng

Running (Đang chạy)

Not Running

Launching

Running

47

ớ ệ Bài 1: Gi i thi u Windows Phone

5. Vòng đời ứng dụng

Closing vs Deactivating (Đóng – Tạm ngừng)

Not running

Closing

Launching

Running

Deactivating

Exit Application_Closin g

Dormant

Deactivate Application_Deactiva ted

Dormant (Ngủ)

48

ớ ệ Bài 1: Gi i thi u Windows Phone

5. Vòng đời ứng dụng

Dormant v Trạng thái dormant có thể được gọi một

Not running

cách chủ động khi

ü Người dùng mở ứng dụng khác

Closing

Launching

v Hoặc được gọi bị động khi

ü Có cuộc gọi đến

ü Khóa màn hình sau 1 khoảng thời

Running

gian không sử dụng

v Người dùng có thể resume ứng dụng

Deactivating

Activating

(nhưng không đảm bảo)

v Ứng dụng sẽ resume lại trang mà trước

Dormant

khi bị deactive (do OS quản lý)

v Các đối tượng vẫn được giữ nguyên khi

resume

49

ớ ệ Bài 1: Gi i thi u Windows Phone

5. Vòng đời ứng dụng

Tombstoned

Not running

v Khi bộ nhớ cạn, OS sẽ xóa cached của những ứng dụng đang ở trạng thái dormant lâu nhất.

Closing

Launching

(cid:222) Quá trình này gọi là Tombstoned v Ứng dụng vẫn có thể resume nhưng các trạng thái sẽ bị mất – bạn phải load lại

Running

Deactivating

Activating

Dormant

Tombstoned

50

ớ ệ Bài 1: Gi i thi u Windows Phone

5. Vòng đời ứng dụng

Resume từ Tombstoned hay Dormant?

Not running

Closing

Launching

Running

Deactivating

Activating

Dormant

Tombstoned

private void Application_Activated(object sender, ActivatedEventArgs e) { if (e.IsApplicationInstancePreserved) { // Dormant - objects in memory intact } else { // Tombstoned - need to reload } }

51

ớ ệ Bài 1: Gi i thi u Windows Phone

5. Vòng đời ứng dụng

v Debug Tomstone

ü Bạn có thể buộc ứng dụng chuyển qua trạng thái Tomstone khi bị deactive.

52

ớ ệ Bài 1: Gi i thi u Windows Phone

5. Vòng đời ứng dụng

v Sử dụng Application State dictionary

ü Lưu dữ liệu người dùng trong trường hợp ứng dụng

bị tomstoned

ü Dữ liệu được lưu dưới dạng dictionary (key-value)

ü Sẽ bị mất nếu reboot thiết bị

53

ớ ệ Bài 1: Gi i thi u Windows Phone

5. Vòng đời ứng dụng

v Sử dụng Application State dictionary

ü Lưu dữ liệu người dùng khi ứng dụng bị deactive

54

ớ ệ Bài 1: Gi i thi u Windows Phone

5. Vòng đời ứng dụng

v Sử dụng Application State dictionary

ü Load dữ liệu người dùng khi ứng dụng resume

55

ớ ệ Bài 1: Gi i thi u Windows Phone

5. Vòng đời ứng dụng

56

ớ ệ Bài 1: Gi i thi u Windows Phone

5. Vòng đời ứng dụng

// Code to execute when the application is launching (eg, from Start)         // This code will not execute when the application is reactivated         private void Application_Launching(object sender, LaunchingEventArgs e)         {        }         // Code to execute when the application is activated (brought to foreground)         // This code will not execute when the application is first launched         private void Application_Activated(object sender, ActivatedEventArgs e)         {        }         // Code to execute when the application is deactivated (sent to background)         // This code will not execute when the application is closing         private void Application_Deactivated(object sender, DeactivatedEventArgs e)         {        }         // Code to execute when the application is closing (eg, user hit Back)         // This code will not execute when the application is deactivated         private void Application_Closing(object sender, ClosingEventArgs e)         {        }

57

ớ ệ Bài 1: Gi i thi u Windows Phone

Thảo luận

58

ớ ệ Bài 1: Gi i thi u Windows Phone