Cám ơn tập đoàn Microsoft đã tạo ra hệ điều hành mobile Windows Phone 7 để chúng tôi có thể học và phát triển ứng dụng cho Windows Phone 7 Cám ơn các nhà phát triển đã viết ra những cuốn
Trang 12011
Sinh viên thưc hiện:
1 Hoàng Trọng Quý - 09520244
2 Đinh Ngọc Mạnh - 09520169
3 Nguyễn Minh Tâm
Đề tài: Tìm hiểu về Windows Phone 7 Giáo viên: Phan Thị Nguyệt Minh
Trang 2Hoàng Trọng Quý – Định Ngọc Mạnh – Nguyễn Minh Tâm | I – Giới thiệu về Windows Phone 7 1
Lời nói đầu
Trong phạm vi bài báo cáo này, chúng em chỉ trình bày những điểu căn bản về Windows Phone 7, qua bài này, chúng em hy vọng những ai đã đọc sẽ một phần nào đó hiểu được căn bản của Windows Phone 7 platform Và một điều mong đợi nữa của chúng tôi là giúp các bạn thích và có hướng phát triển các ứng dụng và game cho Windows Phone 7
Lời cám ơn
Chúng tôi xin cám ơn cô…đã giúp chúng em trong môn Lập trình nhúng căn bản này để chúng em có thể hoàn thành bài báo cáo này
Cám ơn tập đoàn Microsoft đã tạo ra hệ điều hành mobile Windows Phone 7 để chúng tôi
có thể học và phát triển ứng dụng cho Windows Phone 7
Cám ơn các nhà phát triển đã viết ra những cuốn sách có nội dung hữu ích để chúng tôi
có tài liệu để tìm hiểu về hệ điều hành này
Trang 3Hoàng Trọng Quý – Định Ngọc Mạnh – Nguyễn Minh Tâm | I – Giới thiệu về Windows Phone 7 2
Nhận xét của giáo viên
Trang 4
Hoàng Trọng Quý – Định Ngọc Mạnh – Nguyễn Minh Tâm | I – Giới thiệu về Windows Phone 7 3
Phụ lục
I – Giới thiệu về Windows Phone 7 4
1 Đôi nét về Windows Phone 7 4
2 Windows Phone 7 Application Platform 6
Yêu cầu phần cứng của Windows Phone 7 7
Silverlight cho Windows Phone 7
XNA cho Windows Phone 8
Môi trường để phát triển ứng dụng cho Windows Phone 8
Tools 10
Cloud Services 11
Metro Design 12
II – Phát triển ứng dụng và games cho Window Phones 7 12
1 Các bước chuẩn bị: để phát triển ứng dụng và game cho Windows Phone 7, chúng ta cần cài đặt môi trường và các công cụ sau: 12
2 Building Your Windows Phone 7 Application 12
a Tạo một Project bằng các môi trường 12
b Viết một chương trình đơn giản cho Windows Phone bằng Visual Studio 2010. 15
c Dùng Expression Blend 4 để tạo một chương trình đơn giản cho Windows Phone 19
III - Data Stores – Cloud Services 24
1 Điện toán đám mây 24
a Tìm hiểu về điện toán đám mây. 24
b Lợi ích từ việc dùng Dịch vụ đám mây(Cloud Services) 25
2 Hướng dẫn sử dụng dich vụ đám mây của Microsoft 26
a Đăng ký sử dụng dịch vụ SQL Azure 26
b Kết nối với SQL Azure Project 27
c Tạo một CSDL SQL Azure 27
d Cấu hình SQL Azure Firewall. 29
Trang 5Hoàng Trọng Quý – Định Ngọc Mạnh – Nguyễn Minh Tâm | I – Giới thiệu về Windows Phone 7 4
e Sử dụng SQL Server Management Studio để tạo mới một CSDL SQL Azure và kết nối với
Cloud Database. 30
f Khởi tạo một Windows Azure Project 32
g Sử dụng WCF Service để truy cập vào CSDL của SQL Azure. 37
h Viết code cho các dịch vụ 39
I – Giới thiệu về Windows Phone 7
1 Đôi nét về Windows Phone 7
Trong thời gian hiện nay, cuộc đua điện thoại thông minh đã bắt đầu giữa các đối thủ lớn như Windows Phone của Microsoft, Iphone của Apple và Android của Google Là một nhà phát triển, đạng đang có một cơ hội tuyệt vời để phát triển ứng dụng di động có thể được bán cho hàng triệu người tiêu dùng trên toàn thế giới sử dụng bất kì hệ điều hành di động nào Vào năm 2014, báo cáo của Gartner
dự đoán rằng thị trường smartphone sẽ bùng nổ và sẽ có hàng tỉ đô được đầu tư
Microsoft Windows Phone là hệ điều hành điện thoại tốt nhất cho người tiêu dùng vì nó có đủ các tính năng mà người dùng đã quen thuộc với các hệ điều hành di động ra đời trước đó như Apple Iphone và các Android smathphone như Motorola Droid và HTC incredible Những tính năng này bao gồm cảm ứng đa điểm, giao diện bắt mắt với thiết kế hiện đại mà Microsoft đặt tên là “Metro”, mạng xã hội Facebook và hỗ trợ các tài khoản e-mail phổ biến như Yahoo,
Hotmail, Google, AOL, hoặc Microsoft Exchange Độc đáo hơn, Windows Phone còn tích hợp sẵn Mcrosoft Office, bạn có thể xem, sửa, lưu và đồng bộ bất kì file Word, Excel và tất cả các dịnh dạng Office khác, làm nên một chiếc điện thoại tuyệt vời cho những người dùng Office tại nhà hoặc văn phòng Windows Phone còn có thể tích hợp Xbox Live.Làm cho nó tuyệt vời hơn với game thủ
Microsoft Windows Phone sử dụng phần mềm Zune để đồng bộ cài đặt ứng dụng, hình ảnh, âm nhạc, sao lưu và cập nhật Là một nhà phát triển, bạn cũng sẽ
sử dụng Zune kết hợp với Visual Studio để debug các ứng dụng của bạn trên một thiết bị thực sự Microsoft cũng giới thiệu khái niệm về một trung tâm
WindowsPhone Center: gồm một trung tâm người dùng (User Center) nơi người dùng có thể lưu trữ tất cả các địa chỉ liên lạc và kết nối mạng xã hội, một trung tâm âm nhạc (Music Center)- nơi người dùng có thể nghe, tải về, và mua âm nhạc,
và một trung tâm ứng dụng (Windows Phone App Center), được biết đến như thị
Trang 6Hoàng Trọng Quý – Định Ngọc Mạnh – Nguyễn Minh Tâm | I – Giới thiệu về Windows Phone 7 5
trường ứng dụng,nơi mà bạn sẽ được cả thế giới quan tâm, vì bạn sẽ được công bố các ứng dụng mà bạn tạo ra cộng đồng Windows Phone
Một trong những điều tuyệt vời nhất của Windows Phone là Microsoft đã
áp đặt cá yêu cầu phần cứng đối với nhà sản xuất, làm cho nó dễ dàng cho việc phát triển ứng dụng mà không cần lo lắng về việc phải viết những đoạn mã khác nhau cho những thiết bị khác nhau Đối với bất kỳ phiên bản tương lai của điện thoại, bạn được đảm bảo ứng dụng bạn viết ngày hôm nay sẽ luôn làm việc không phân biệt thương hiệu của điện thoại.Đương nhiên, bạn muốn biết những ngôn ngữ
mà bạn sẽ cần phải nắm vững cho công việc của bạn Đối với Windows Phone, ngôn ngữ được lựa chọn là C #, lập trình viên Visual Basic (VB)sẽ phải chờ đợi thêm Mặc dù Microsoft đã cho biết họ sẽ hỗ trợ tất cả các ngôn ngữ phổ biến trên điện thoại nhưng họ chưa công bố một thời gian cụ thể Đối
với một khuôn khổ phát triển ứng dụng, bạn có hai lựa chọn: Silverlight hay XNA Silverlight và XNA đều dựa trên cốt lõi là NET Framework Bạn sẽ tìm hiểu thêm
về hai framework nàytrong phần sau ,nhưng trước tiên chúng ta hãy xem xét kỹ hơn các tính năng phần cứng mà bạn có thể mong đợi trên Windows Phone
Đối với hệ điều hành Windows Phone 7, Microsoft đã tạo ra Windows Phone Store, nôi khách hàng có thể mua bán các ứng dụng và bạn có một cơ hội
để xuất bản một ứng dụng đầu tiên cho thị trường
Trang 7Hoàng Trọng Quý – Định Ngọc Mạnh – Nguyễn Minh Tâm | I – Giới thiệu về Windows Phone 7 6
2 Windows Phone 7 Application Platform
Microsoft không phát minh ra bất kỳ ngôn ngữ mới hoặc các framework cho ứng dụng điện thoại nền tảng Windows Phone Đơn giản là họ chỉ thích nghi
với các framework hiện tại của mình Điều này có nghĩa là bạn sẽ có thể cho
chương trình sử dụng C # (VB chưa được hỗ trợ) với NET Framework Những gì
.NET cung cấp là lớp thư viện cơ sở phổ biến mà mỗi lập trìnhviên
Microsoft NETsẽ quen thuộc, bao gồm cả hỗ trợ cho đa luồng,
XML, LINQ, collection, các sự kiện, dữ liệu, trường hợp ngoại lệ,IO, mô hình
dịch vụ, networking, văn bản, vị trí,nguồn lực, thời gian chạy và bảo mật
Dựa trên nền tảng NETFramework., ứng dụng Window Phone bao gồm hai
framework chính: Silverlight và XNA Bạn sẽ sử dụng Silverlight chủ yếu cho các
ứng dụng kinh doanh và game 2D đơn giản Silverlight sử dụng Extensible
Markup Language (XAML) (ngôn ngữ khai báo đánh dấu ) để tạo ra giao diện
Trang 8Hoàng Trọng Quý – Định Ngọc Mạnh – Nguyễn Minh Tâm | I – Giới thiệu về Windows Phone 7 7
hấp dẫn cho ứng dụng Các nhà thiết kế sẽ có sự linh hoạt trong việc tạo ra giao diện cho Windows Phone bằng cách sử dụng các công cụ quen thuộc như Adobe Illustrator, Photoshop, và Microsoft Expression Design để tạo ra vector- nền tảng của giao diện mà sẽ dễ dàng hơn với XAML XNA chủ yếu được sử dụng cho việc tạo các trò chơi,và các framework đi kèm với một công cụ trò chơi cho phép bạn tạo ra các vòng lặp vô hạn- nền tảng của trò chơi và cũng cung cấp một công cụ 3D, cho phép bạn tạo ra các trò chơi 3D
Trong các phần sau đây, bạn sẽ tìm hiểu chi tiết về các thành phần chính của ứng dụng Windows Phone nền tảng Silverlight, XNA, công cụ và dịch vụ đám mây
Yêu cầu phần cứng của Windows Phone 7
Sau đây là một số yêu cầu tối thiểu về phần cứng mà nhà sản xuất điện thoại Windows Phone 7 phải đáp ứng:
Silverlight cho Windows Phone
Silverlight là một công nghệ của Microsoft cho phép xây dựng các ứng dụng
hỗ trợ multimedia, animations, 3D graphics, RIA (rich interactive applications), tương tác với webcam & microphone… Silverlight không chỉ là nền tảng phát triển ứng dụng cho Windows
Trang 9Hoàng Trọng Quý – Định Ngọc Mạnh – Nguyễn Minh Tâm | I – Giới thiệu về Windows Phone 7 8
Phone 7 mà còn được sử dụng để phát triển các ứng dụng web
Một ứng dụng Silverlight là hỗn hợp của code và XAML (eXtensible Application Markup Language) Bạn có thể sử dụng Silverlight để tạo 1 đối tượng hình ảnh, giao diện cho ứng dụng của bạn, và bạn sử dụng code để sử lý sự kiện, bao gồm sự kiện input và tất cả sự kiện sinh ra bởi các điều khiển như kết quả của các tiến trình input
XNA cho Windows Phone
Giống như Silverlight, XNA không phải là một công nghệ mới XNA được sử dụng để tạo ra các Xbox game, sử dụng
mã quản lý ( managered code) Nó là một sự lựa chọn tự nhiên để tạo ra các trò chơi kể từ khi Windows Phone có tích hợp Xbox Live, cho phép các Xbox game dựa trên XNA có thể dễ dàng được cài đặt và chạy trên Windows Phone Điều duy nhất nhà phát triển game Xbox phải lo lắng là độ phân giải màn hình, có thể không dễ dàng điều chỉnh XNA cung cấp một framework hoàn hảo
và phong phú cho sự phát triển game, như cơ cấu vòng lặp game, cơ cấu 2D và 3D, và khả năng quản lý tài nguyên game như mô hình, mắt lưới, sprites, kết cấu, hiệu ứng, địa hình, và chuyển động
Bộ công cụ Windows Phone 7 Development Tool dùng phiên bản XNA 4.0 Phiên bản mới này bao gồm những thay đổi về library
và những vấn đề không phù hợp của phiên bản trước
Môi trường để phát triển ứng dụng cho Windows Phone
Visual Studio 2010 SP1
Visual Studio là hoàn toàn cần thiết vì nó có thể được sử dụng để design, debug, tạo các dự án, đóng gói 1 cách tự động Bạn phải cài đặt phiên bản Microsoft Visual Studio cho Windows Phone Nó cũng bao gồm một giả lập điện thoại để kiểm tra kết
quả công việc của bạn (hình 1-3) Trong chương 5, bạn
sẽ học cách debug và chạy giả lập từ Visual Studio, và trong Chương 5, bạn sẽ sử dụng Visual Studio để đóng gói Sau đó bạn có thể công
bố cho Trung tâm ứng dụng
Trang 10Hoàng Trọng Quý – Định Ngọc Mạnh – Nguyễn Minh Tâm | I – Giới thiệu về Windows Phone 7 9
Expression Blend 4 hoặc cao hơn
Bạn sẽ cần Expression Blend nếu bạn muốn phát triển 1 ứng dụng với giao diện hấp
dẫn bằng cách sử dụng Silverlight cho Windows Phone như hiển thị trong Hình 1-4 Thông thường Expression Blend được sử dụng bởi các nhà thiết kế, và nhiều trong số các chức năng Expression Blend tương tự như Adobe Illustrator, Photoshop, hoặc Expression Design Củng từ Expression Blend, bạn có thể đưa vào bất kỳ file Illustrator, Photoshop, và nếu bạn đang sử dụng ExpressionDesign, bạn có thể xuất ra tập tin Expression Design vào một tập tin XAML
Trang 11Hoàng Trọng Quý – Định Ngọc Mạnh – Nguyễn Minh Tâm | I – Giới thiệu về Windows Phone 7 10
Tools
Windows Phone Emulator
Giả lập Windows Phone như trong hình dưới được cài đặt thêm vào Visual Studio mô phỏng một điện thoại
Windows Phone Tuy nhiên, có những điều bạn không thể giả lập, như GPS, la bàn, FM radio, tin nhắn SMS, các tính
năng e-mail, gọi điện thoại, danh sách liên lạc, máy ảnh, và các chức năng của một thiết bị vật lý Tuy nhiên, một kỹ thuật được gọi là Reactive Extensions, trongChương 18, bạn
sẽ có thể sử dụng để mô phỏng các nguồn cấp dữ liệu giống như một điện thoại thực sự Bằng cách sử dụng các Reactive Extensions, bạn có thể mô phỏng được máy đo gia tốc
Trang 12Hoàng Trọng Quý – Định Ngọc Mạnh – Nguyễn Minh Tâm | I – Giới thiệu về Windows Phone 7 11
và GPS để bạn có thể làm việc với các giả lập khi không có thiết bị thật sự
Windows Phone Device
Cloud Services
Làm việc với một ứng dụng Windows Phone đòi hỏi phải lưu dữ liệu vào một cơ sở dữ liệu Đó là một điều khó khăn
Vấn đề lớn đầu tiên là bạn không biết làm thế nào để ứng dụng của bạn trở nên phổ biến,và nếu nó trở nên phổ biến, bạn có thể tìm thấy hàng triệu người dùng đang sử dụng ứng dụng của bạn và lưu dữ liệu vào cơ sở dữ liệu của nó với 1 tốc độ (tỉ lệ) nhất định Không chỉ cơ sở dữ liệu, bạn cũng cần phải xem xét xem các dịch vụ web có cung cấp các API cho ứng dụng của bạn để lưu
Trang 13Hoàng Trọng Quý – Định Ngọc Mạnh – Nguyễn Minh Tâm | II – Phát triển ứng dụng và games
cho Window Phones 7
sẽ tìm hiểu kĩ hơn về Microsoft Azure trong phần sau
Metro Design
II – Phát triển ứng dụng và games cho Window Phones 7
1 Các bước chuẩn bị: để phát triển ứng dụng và game cho Windows Phone 7,
chúng ta cần cài đặt môi trường và các công cụ sau:
a Visual Studio 2010 SP1(Server Park 1) hoặc Visual Studio 2010 Express for Windows Phone
b Windows Phone emulator
c Silverlight for Windows Phone
d Microsoft Expression Blend for Windows Phone
e XNA Game Studio 4
2 Building Your Windows Phone 7 Application
a Tạo một Project bằng các môi trường
Visual Studio 2010
Khởi động VS 2010
Files > New >Project trên thanh menu của VS 2010 hoặc trên màn hình khởi động chọn New Project
Trang 14Hoàng Trọng Quý – Định Ngọc Mạnh – Nguyễn Minh Tâm | II – Phát triển ứng dụng và games
cho Window Phones 7
13
Trong mục Visual C# chọn Silverlight for Windows Phone >
Windows Phone Application để tạo một ứng dụng cho Windows Phone hoặc XNA Game Studio 4.0 > Windows Phone Game để viết game cho Windows Phone
Ở mục Name, chúng ta gõ tên của project
Cuối cùng, nhấn OK trên khung, VS 2010 sẽ tự động tạo một project mới
Expression Blend 4
Khởi động Expression Blend 4
File > New Project trên thanh menu của Expression Blend 4
Trang 15Hoàng Trọng Quý – Định Ngọc Mạnh – Nguyễn Minh Tâm | II – Phát triển ứng dụng và games
cho Window Phones 7
14
Trang 16Hoàng Trọng Quý – Định Ngọc Mạnh – Nguyễn Minh Tâm | II – Phát triển ứng dụng và games
cho Window Phones 7
15
Hoặc trên Welcome screen chọn New Project
Trong cửa sổ New project Ở phần Project types chọn
Windows Phone > Windows Phone Applocation
Đặt tên cho Project sau đó OK Expression Blend 4 sẽ
tự động tạo một project mới cho chúng ta
b Viết một chương trình đơn giản cho Windows Phone bằng Visual Studio
2010
Như đã giới thiệu ở trên, để phát triển ứng dụng cho Windows Phone, chúng ta sẽ sử dụng môi trường là Visual Studio 2010 SP1 và Windows Phone SDK Visual Studio cung cấp cho chúng ta một môi trường làm việc căn bản, tiện lợi, thân thiện giúp chúng ta dễ dàng viết và hoàn thành một ứng dụng cho Windows Phone
Trang 17Hoàng Trọng Quý – Định Ngọc Mạnh – Nguyễn Minh Tâm | II – Phát triển ứng dụng và games
cho Window Phones 7
16
Để viết ứng dụng cho Windows Phone chúng ta sử dụng Silverlight
Sau đây chúng tôi sẽ tạo một ứng dụng đơn giản cho Windows Phone đó là Calculator Simple sử dụng Visual Studio 2010
Chương trình Calculator Simple chỉ đơn giản là thực hiện phép cộng hai số nguyên Bao gồm 3 textbox: txtInput1 nhập số a, txtInput2 nhập số b, txtOutput xuất ra kết quả và một button là btnCal để thực hiện sự kiện công giữa hai số nguyên đó
Trước tiên chúng ta tạo một Project mới với tên là Calculator Simple(hình dưới)
Trước tiên chúng ta sửa lại tên của ứng dụng, có hai cách để thực hiện việc này:
Cách một là nhấn chuột và chữ “page name” trong Properties panel Chọn mục text sau đó đổi tên thành Calculator Simple và giảm FontSize xuống 45
Cách hai là chúng ta sửa mục Text="page name" trong câu lệnh <TextBlock x:Name="PageTitle" Text="page name"
Margin="9,-7,0,0" Style="{StaticResource PhoneTextTitle1Style}"/>
Trang 18Hoàng Trọng Quý – Định Ngọc Mạnh – Nguyễn Minh Tâm | II – Phát triển ứng dụng và games
cho Window Phones 7
17
Và thêm vào thuộc tính FontSize FontSize="45"
Sau khi đổi tên chúng ta có kết quả như hình sau:
Tiếp theo chúng ta thêm vào 3 textbox và button bằng cách thêm vào
Trang 19Hoàng Trọng Quý – Định Ngọc Mạnh – Nguyễn Minh Tâm | II – Phát triển ứng dụng và games
cho Window Phones 7
18
Cuối cùng chúng ta xử lí xự kiện cho Cal button Nhấp đôi chuột vào btnCal sẽ xuất hiện MainPage.xalm.cs Ở đây chúng ta sẽ thêm sự kiện cho Cal button
private void btnCal_Click(object sender, RoutedEventArgs e)
Trang 20Hoàng Trọng Quý – Định Ngọc Mạnh – Nguyễn Minh Tâm | II – Phát triển ứng dụng và games
cho Window Phones 7
19
Đó là cách tạo một ứng dụng cho Windows Phone 7 sử dụng môi trường Visual Studio
2010 Chúng ta sẽ tạo ứng dụng đó trên môi trường Expression Blend 4 ở mục c
c Dùng Expression Blend 4 để tạo một chương trình đơn giản cho
Windows Phone
Ở phần b chúng ta đã làm quen với cách tạo một ứng dụng cho Windows Phone 7, ở phần này chúng ta sẽ tạo một ứng dụng bằng cách dùng Expression Blend 4 for Windows Phone 7
Visual Studio và Expression Blend cho Windows Phone về căn bản
là giống nhau Hai môi trường cung cấp cho chúng ta những công cụ cần thiết cho viêc tạo ứng dụng Điểm khác biệt lớn nhất giữa hai môi trường kia là Expression Blend 4 cung cấp các công cụ thiên về lập trình giao diện cho Windows Phone hơn Với Expression Blend 4 chúng ta có thể tùy chỉnh giao diện, giúp ta tạo chuyển động cho các thành phần giao diện và các hiệu ứng bằng cách thực hiện hoàn toàn bằng giao diện giúp dễ dàng cho việc phát triển một ứng dụng mang đậm tính thẩm mỹ nhưng vẫn đầy
đủ chức năng như chúng ta mong muốn
Trang 21Hoàng Trọng Quý – Định Ngọc Mạnh – Nguyễn Minh Tâm | II – Phát triển ứng dụng và games
cho Window Phones 7
Trang 22Hoàng Trọng Quý – Định Ngọc Mạnh – Nguyễn Minh Tâm | II – Phát triển ứng dụng và games
cho Window Phones 7
21
Với Expression Blend, ta có thể tùy chỉnh các đặc tính một cách rõ ràng, trực quan bằng cách sử dụng các công cụ có sẵn sau đây chúng tôi tùy chỉnh màu sắc của Cal button và kết quả là
Cuối cùng chúng ta thêm sự kiện cho Cal button