LỜI MỞ ĐẦU
Ngày nay, cuộc sống luôn rất năng động và biến động không ngừng đòi hỏi
chúng ta cần phải biết tận dụng từng phút từng giây trôi qua để hoàn thành các
công việc đề ra nhất là đối với những người bận rộn. Nhưng đôi khi, do một lý
do nào đó hay ta có quá nhiều việc cần giải quyết làm chúng ta không thể xử lý
một cách trọn vẹn, khoa học. Các công việc trùng lặp làm ta cảm thấy mệt mỏi
và xử lý không hiệu quả. Vì vậy, việc tổ chức thời gian, ghi lại các thông tin một
cách khoa học là điều cực kỳ cần thiết trong cuộc sống hiện nay.
Trong giai đoạn phát triển hiện nay, các điện thoại smartphone trở nên hết
sức phổ biến, nền tảng Windows Phone là một trong số đó. Mặc dù còn chiếm
thị phần nhỏ nhưng theo các đánh giá trên thế giới thì Windows Phone là nền
tảng phát triển với tốc độ nhanh nhất với thành công từ hàng loạt các dòng điện
thoại Smartphone. Theo đó, trong quý cuối cùng năm 2013, Windows Phone đã
nắm giữ 3,6% thị phần hệ điều hành smartphone, đạt mức tăng trưởng 150% so
với cùng kỳ năm 2012, đánh bại mức tăng trưởng 51,3% của hệ điều hành phổ
biến nhất hiện nay là Android. Và Windows Phone đã vượt qua BlackBerry để
tự tin vươn lên vị trí thứ 3 trên thị trường hệ điều hành smartphone. Với tốc độ
phát triển đó hứa hẹn trong tương lai Windows Phone sẽ là một nền tảng di
động được rất nhiều người dùng và phổ biến trên thế giới.
Xuất phát từ những điều trên em đã chọn đồ án : “Xây dựng ứng dụng nhật
ký, đặt lịch công tác trên Windows Phone”. Đồ án đã xây dựng được một ứng
dụng cần thiết cho người dùng.
Quá trình làm đồ án em đã được thầy tận tình chỉ dạy và giúp đỡ nhiều,
song trong thời gian làm đồ án chắc chắn còn thiếu sót, rất mong thầy cùng các
bạn đóng góp ý kiến để đồ án hoàn thành tốt hơn.
Em xin chân thành cám ơn!
1
Chương 1
CƠ SỞ LÝ THUYẾT
1. Tổng quan về Windows Phone
Microsoft Windows Phone là một chiếc điện thoại tuyệt vời của người
Đương nhiên, ta muốn biết những gì ngôn ngữ mà bạn sẽ cần phải nắm
vững cho công việc của bạn ,ta cần thành thạo các ngôn ngữ mà cần thiết cho
công việc lập trình của bạn.Ngôn ngữ thong dụng là C # và Visual Basic (VB) .
Đối với một phát triển ứng dụng , bạn có hai lựa chọn: Silverlight hoặc
XNA, hoặc cả 2
Trước tiên, chúng ta cần xem xét kỹ hơn các tính năng phần cứng mà bạn
cần biết trên một điện thoại Windows.
2. Thông số kỹ thuật Windows Phone
Trước hết chúng ta cần biết có những gì trong thông số kỹ thuật phần cứng
của 1 chiếc điện thoại Microsoft Windows điều này sẽ giúp chúng ta chuẩn bị
cho các yêu cầu của dự án lập trình ứng dụng điện thoại Microsoft Windows
Phone.
Bảng ở dưới liệt kê các phần cứng tối thiểu yêu cầu bất kỳ nhà sản xuất
Windows Phone phải đáp ứng và cũng bao gồm các đề xuất họ có thể tác động
đến các nhà phát triển như bạn như thế nào.
3
Tính năng phần cứng Mô tả chi tiết
• Must display at
WVGA (800 x 480)
WP7 được thiết kế để hiển thị tốt các hình ảnh có
chất lượng cao với mật độ pixel lớn. Trên WP7
chúng ta có thể thấy các dòng chữ được hiển thị
với độ mịn cao. Thế nhưng để hiển thị càng nhiều
pixel ảnh ta sẽ phải hao tổn bộ nhớ ram cũng như
hao tốn pin hơn. WP7 biết sẽ làm cho màn hình
hiển thị ảnh thích hợp nhất với màn hình và pin của
cellphone. Vì vậy bạn có thể mở những file ảnh lớn
mà không lo về chất lượng hiển thị cũng như sử
ảnh hưởng tới thời lượng pin.
• Four-point multi-
của thiết bị. Từ thiết bị này xuất hiện rất nhiều
chức năng được yêu thích như lắc đổi bài nhạc,
chơi game đua xe trên iphone
• Compass
Với điều này, bạn có thể tìm thấy ở phía bắc, nam,
đông và tây.
• Light
Tính năng này có thể được sử dụng như một đèn
flash cho máy ảnh.
• Digital Camera
Hầu hết các thiết bị cellphone hiện nay đều có
camera và WP7 không nằm ngoại lệ. Các camera
trên WP7 có ít nhất 5Mpx với những bức hình lên
tới hơn 5 triệu điểm ảnh. Khi viết chương trình
thao tác với camera chúng ta có vài điểm cần quan
tâm:
− Chúng ta không thể can thiệp vào camera khi
đang quay nếu không được hỗ trợ từ phía
phần cứng camera. Tức ở đây bạn không thể
chèn hình lên camera đang hoạt động được.
Thứ 2: chúng ta không thể chụp một bức ảnh mà
không có sự đồng ý từ phía người dùng
• Hardware controls:
Back, Start, and
Search buttons
Mỗi điện thoại sẽ có ba nút trên mặt trước của điện
thoại. Hãy ghi nhớ mà bạn sẽ được yêu cầu để sử
dụng lại các nút cho đi ngược trong của bạn ứng
dụng, bởi vì có nút Back riêng biệt trong sức mạnh
ứng dụng gây nhầm lẫn cho người dùng. Tìm hiểu
Một lớp cơ sở thư viện phổ biến mà tất cả những gì .NET cung cấp là
Microsoft.NET nó bao gồm các hỗ trợ cho multithreading, XML, Linq,
collections, events, data, exceptions, IO, service model, networking, text,
location, reflection, globalization, resources, runtime, security, and diagnostics.
Nền tảng ứng dụng Windows Phone bao gồm hai frameworks: Silverlight và
XNA. Bạn có thể dung Silverlight cho các ứng dụng kinh doanh hay trò chơi
đơn giản 2D .
Silverlight sử dụng Extensible Application Markup Language ( XAML ) ,
một đánh dấu khai báo ngôn ngữ để tạo ra giao diện người dùng hấp dẫn. Nhà
thiết kế sẽ có sự linh hoạt rất lớn trong việc tạo ra UI 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. Với các công cụ này chúng ta có thể tạo ra
một giao diện người dùng có thể dễ dàng chuyển đổi thành XAML.
XNA được sử dụng chủ yếu cho tạo ra các trò chơi. Nó có thể cho phép
chúng ta tạo ra được các trò chơi 3D
3.1. Silverlight cho Windows Phone
6
Microsoft Silverlight là một nền tảng ứng dụng (application framework)
được viết và chạy các ứng dụng Internet phong phú với sự nhấn mạnh về đa
phương tiện, hình động, và đồ họa, với các tính năng và mục đích tương tự như
của Adobe Flash. Môi trường thời gian chạy (hệ thống thực thi) cho Silverlight
có sẵn như là một plug-in cho hầu hết các trình duyệt web. Trong khi những
phiên bản đầu của Silverlight tập trung vào dòng phương tiện truyền
thông (streaming media), các phiên bản hiện tại hỗ trợ đa phương tiện, đồ
họa và hoạt hình (animation), và cung cấp cho các nhà phát triển hỗ trợ
cho ngôn ngữ CLI và công cụ phát triển.
Silverlight phiên bản 3 hổ trợ cho Windows Phone 7 các tính năng như :
- Input
- UI rendering
- Media
Window Phone từ các trang tải công cụ của Microsoft.Trang Getting Started
cũng có tài liệu và các hướng dẫn phong phú. Chúng ta cũng cần xem xét tải về
Giao diện thiết kế và tương tác , các hướng dẫn để hiểu được Metro
3.4. Visual Studio
Là 1 công cụ giúp chúng ta có thể phát triển các ứng dụng trên Microsoft
Windows Phone 1 cách thuận tiện, và đơn giản.
Với Microsoft Visual Studio ta có thể Debug ứng dụng qua Windows Phone
Emuration. Điều này giúp nhà phát triển có thể kiểm tra ứng dụng 1 cách thuận
tiện và nhanh chóng.
8
Màn hình cho công cụ lập trình Visual Stuodio
3.5. Expression Blend
Với Expression Blend chúng ta có thể phát triển các ứng dụng hấp dẫn sử
dụng Silverlight cho Windows Phone. Thông thường Expression Blend được sử
dụng bởi các nhà thiết kế, và hầu hết các chức năng của Expression Blend cũng
tương tự như trong Adobe Illustrator, Photoshop.
Chúng ta cũng có thể nhập bất kỳ Illustrator và Photoshop tập tin vào
Expression Blend
Khi sử dụng Expression Design, bạn có thể xuất file thiết kế biểu hiện trực
tiếp vào một tập tin XAML.
Expression Blend cũng cung cấp một cách để tạo ra những chuỗi động. Mặc
dù chúng ta có thể tạo hình ảnh động trong Visual Studio sử dụng XAML, tuy
9
Các dịch vụ còn có thể được chứa, hoặc chạy trong một tệp thực thi được quản
lý bởi một agent bên ngoài như IIS hay Windows Activation Services (WAS).
WAS cho phép WCF được kích hoạt một cách tự động khi phân phối tới một
máy tính có chạy WAS.
4.7. Các tính năng của WCF
WCF có nhiều tính năng và sẽ được mô tả chi tiết trong toàn bộ khoá học. Mục
này chỉ nhằm mục đích thảo luận một số tính năng của WCF. Danh sách các tính
vận chuyển. WCF bao gồm việc đảm bảo tính toàn vẹn và bảo
mật của bản tin.
• WCF còn cho phép bạn tích hợp ứng dụng của bạn với cơ sở hạ
tầng bảo mật sẵn có, bao gồm cả các chuẩn bên ngoài môi
trường Windows bằng cách sử dụng các bản tin SOAP bảo mật.
cung cấp một nền tảng chung cho tất cả .NET
Khái quát lại ta có thể hiểu WCF là một sự kết hợp các tính năng của Web
Service, Remoting, MSMQ và COM+. WCF cung cấp một nền tảng chung cho
tất cả .NET. Nó là một phần của .NET
Chương 2
LẬP TRÌNH TRÊN WINDOWS PHONE
Với việc ngày càng thu hút được nhiều người dùng các sản phẩm của
Windows Phone . Microsoft đã phát triển rất nhiều các hỗ trợ nhằm phục vụ cho
lập trình viên để phát triển các ứng dụng trên Windows Phone. Dưới đây là 1 số
19
các nền tảng chung nhất cần thiết giúp em lập trình ứng dụng nhật ký, đặt lịch
trên Windows Phone. Cụ thể là các lập trình ứng dụng trên Windows Phone
SDK 7.1
1. Các thành phần cơ bản trong WP
1.1. Ứng dụng đầu tiên với WP7
Mã code WP7 được viết trên nền .NET nên nó rất quen thuộc với lập trình
viên .NET. Chúng ta có thể download Visual Studio Express For WP7 phiên bản
miễn phí để có thể lập trình cho thiết bị WP7. Ngoài ra Microsoft còn cung cấp
bộ công cụ Blend miễn phí để lập trình viên có thể dễ dàng thiết kế giao diện
trên WP7.
Tóm lại ban đầu ta cần phải cài các bộ công cụ sau để có thể lập trình trên WP7:
- Visual studio 2010 express for window phone
- Windows Phone Developer Tools
- Silverlight For WP7 Toolkit
Bây giờ chúng ta đã có thể bắt đầu ứng dụng đầu tiên với WP7. Ban đầu
…
22
}
}
}
Ở đây ta cần chú ý các class được đặt là “partial” vì Microsoft đã chuẩn
bị cho nó khả năng kêu thêm một file cs mới có các thành viên của class App
này.
Cấu trúc file App.xaml như sau:
<Application
x:Class="PhoneApp1.App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:phone="clr-
namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone"
xmlns:shell="clr-
namespace:Microsoft.Phone.Shell;assembly=Microsoft.Phone">
…
</Application>
File App.xaml thường được sử dụng để lưu trữ các resource của toàn bộ
ứng dụng. Resource của ứng dụng thường bao gồm giá trị của các biến màu, giá
trị các brush hoặc các style và animation.
Đúng cú pháp của ngôn ngữ XAML trong Silverlight bạn phải có
element root và sau đó phải khai báo 4 XML Namespace.
Property “xmlns” là namespace tiêu chuẩn rất phổ biến trong Silverlight
và property xmlns đầu tiên giúp cho compiler định nghĩa được class khi thực thi.
Propery XML thứ 2 thì tham chiếu tới những element và đặc tính khác
đã được trong nhân Silverlight.
Trong project WP7 ta có thể gặp thường xuyên 2 property tương tự nhau
public partial class MainPage : PhoneApplicationPage
{
// Constructor
public MainPage()
{
24
InitializeComponent();
}
}
}
Việc kết thừa class PhoneApplicationPage mang lại cho class MainPage
kế thừa đầu đủ các tính năng của một trang ứng dụng WP7. Phần giao diện sẽ do
file MainPage.xaml quyết định. Mở file MainPage.xaml ta sẽ thấy cấu trúc như
sau:
<phone:PhoneApplicationPage
x:Class="PhoneApp1.MainPage"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/pres
entation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:phone="clr-
namespace:Microsoft.Phone.Controls;assembly=Microsoft.Ph
one"
xmlns:shell="clr-
namespace:Microsoft.Phone.Shell;assembly=Microsoft.Phone
"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-