Siverlight trong Windows Phone 7: .... Isolated Storage: .... LINQ và Local DataBase: .... Local DataBase: ..... Application Bar: ..... Windows Phone 7 Frameworks .... Application Develo
Trang 2L I C M N
đ án đ t k t qu t t đ p, tr c h t em xin g i t i toàn
th các th y cô Khoa Công Ngh Thông Tin l i chúc s c
kh e, l i chào trân tr ng và l i c m n sâu s c nh t V i s quan tâm, ch b o t n tình chu đáo c a th y cô, s giúp đ nhi t tình c a các b n, đ n nay em đã hoàn thành đ án môn h c
có đ c k t qu này em xin g i l i c m n chân thành
nh t t i th y – Ths H Quang Kh i đã t n th i gian quý báu giúp đ em hoàn thành đ án này
V i đi u ki n th i gian có h n c ng nh kinh nghi m còn
h n ch c a em nên đ án s không tránh nh ng thi u sót
Trang 3………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
Trang 4Ch ng 1: T NG QUAN 8
1.1. Gi i thi u: 8
1.1.1. Th tr ng di đ ng: 8
1.1.2. Nh ng khó kh n khi l p trình trên di đ ng: 9
1.2. T ng quan v Windows Phone: 10
1.3. M c đích làm đ tài: 12
Ch ng 2: C S LÝ THUY T 13
2.1. Ki n trúc c a Windows Phone 7: 13
2.2. L p trình trên Windows Phone 7: 14
2.2.1. Môi tr ng l p trình: 16
2.2.2. Cài đ t: 17
2.2.3. C u trúc Project trong Windows Phone 7: 22
2.3. Nh ng ki n th c liên quan: 24
2.3.1. XAML: 24
2.3.2. Managed Code: 24
2.3.3. Ngôn ng C#: 24
2.3.4. Siverlight trong Windows Phone 7: 25
2.3.5. Isolated Storage: 25
2.3.6. Mô hình MVVM: 27
2.3.7. LINQ và Local DataBase: 28
2.3.7.1. LINQ: 28
2.3.7.2. Local DataBase: 29
2.3.8. Các control trong WP7: 30
Trang 52.3.8.1. Panaroma: 30
2.3.8.2. Pivot: 31
2.3.8.3. armChart: 32
2.3.8.4. Button: 32
2.3.8.5. Grid: 32
2.3.8.6. ListPicker : 33
2.3.8.7. WrapPanel: 33
2.3.8.8. Slider: 33
2.3.8.9. TextBlock: 33
2.3.8.10. TextBox: 34
2.3.8.11. StackPanel: 34
2.3.8.12. Tooltip: 34
2.3.8.13. ListPicker: 34
2.3.8.14. Application Bar: 34
Ch ng 3: TH C HI N NG D NG 35
3.1. Ý t ng th c hi n: 35
3.2. Mô Hình C S D Li u: 35
3.2.1. Mô hình th c th : 35
3.2.2. Mô hình v t lý d li u: 36
3.3. Các ch c n ng c a ng d ng: 38
3.3.1. Hi n th danh sách tuy n xe bus: 38
3.3.2. Xem Thông Tin M t Tuy n Xe Bus: 39
3.3.3. Xem tr m thu c m t tuy n: 40
3.4. Quá trình th c hi n: 40
Ch ng 4: K T LU N VÀ H NG PHÁT TRI N 43
4.1. K t qu đ t đ c: 43
Trang 64.2. u đi m: 43
4.3. Khuy t đi m: 43
4.4. H ng phát tri n: 44
TÀI LI U THAM KH O 45
Trang 7DANH M C HÌNH NH
Hình 1.1 Các n n t ng l p trình di đ ng 9
Hình 1.2 Giao di n c a Windows Phone 7 11
Hình 2.1 Ki n trúc c a WP7 13
Hình 2.2 B n thành ph n chính c a Windows Phone Application Pflatform 13
Hình 2.3 Windows Phone 7 Frameworks 15
Hình 2.4 Application Development Lifecycle 16
Hình 2.5 T i Windows Phone Developer Tools 18
Hình 2.6: 1.Cài đ t Visual Studio 19
Hình 2.7: 2.Cài đ t Visual Studio 19
Hình 2.8: Cài Windows SDK 7.1 20
Hình 2.9: Giao di n Visual Studio 2010 21
Hình 2.10: T o ng d ng Windows Phone 22
Hình 2.11 C u trúc c a m t project WP7 23
Hình 2.12 Ki n trúc c a Isolated Storage 26
Hình 2.13 Các lo i l u tr d li u trong Isolated Storage 26
Hình 2.14 Các lo i l u tr d li u trong Isolated Storage 27
Hình 2.15.Ki n trúc c a LINQ 28
Hình 2.16: S đ tính n ng c a LINQ trên 2 ngôn ng l p trình VB.NET và C# : 29
Hình 2.17 Mô hình Local Database trong Windows Phone 7 30
Hình 2.18 : Control Panorama 31
Hình 2.19 : Control Pivot 32
Hình 2.20 : Control WrapPanel 33
Trang 8Hình 2.21 : Control Slider 33
Hình 3.1 : M i k t h p Tr m thu c tuy n 35
Hình 3.2 : Mô hình v t lý d li u 36
Hình 3.2 :Danh sách các tuy n xe buýt 38
Hình 3.2 :Danh sách con đ ng tuy n xe buýt đi qua 39
Trang 9Ch ng 1: T NG QUAN 1.1 Gi i thi u:
1.1.1 Th tr ng di đ ng:
S l ng thi t b di đ ng ngày càng t ng Vi t Nam, nhi u ng i
đã coi đi n tho i di đ ng nh m t v t không th thi u trong cu c s ng
h ng ngày Cùng v i s phát tri n m nh m c a công ngh thông tin trong th i đ i m i, ng i s d ng di đ ng b t đ u h ng t i nh ng yêu
c u cao c p h n Không ch nghe-g i, nh n tin mà gi đây h còn
mu n s h u m t chi c đi n tho i có kh n ng truy c p m ng và th c
hi n m i ng d ng nh m t chi c máy tính b túi
có th th c hi n đ c các tính n ng cao c p nh đ c báo, ti u thuy t, tra t đi n, b n đ và nh t là th gi i gi i trí v i ca nh c, xem phim, ch i game … thì ngoài n n t ng ph n c ng do nhà s n xu t đi n tho i cung c p còn c n ph i có các ph n m m chuyên d ng cài đ t trên
Vi c l a ch n m t n n t ng phát tri n cho đi n tho i di đ ng c ng
là m t v n đ nan gi i Hi n nay có th k tên các n n t ng di đ ng ph
bi n: iPhone, Window Mobile, Android, J2ME, Symbian Nhìn vào hình d i đây có th th y đ c ph n nào s phong phú c a th tr ng này
Trang 10
Hình 1.1 Các n n t ng l p trình di đ ng
1.1.2 Nh ng khó kh n khi l p trình trên di đ ng:
So v i chi c máy tính đ bàn hay laptop, ch v i b nh trong vài
GB, RAM cao nh t là 256 MB, b nh c a chi c đi n tho i di đ ng qu
là quá nh H n n a, m t ph n b nh này l i đã đ c s d ng đ ch y
h đi u hành, x lý đ h a… Do đó khi vi t ng d ng, l p trình viên
ph i chú ý nhi u đ n b nh Có th nói r ng l p trình cho di đ ng
gi ng nh vi c đ y các l p trình viên v v i th i k đ u c a l p trình cho máy tính cá nhân, ph i ti t ki m t ng KB b nh m t n u không
mu n x y ra tình tr ng tràn b nh
Ng i s d ng ng d ng trên di đ ng đòi h i t c đ ph i nhanh,
ví nh m m t game, ng i ta không th ng i ch c ch c phút đ game load xong Do đó, quá trình đóng, m ng d ng ph i di n ra nhanh chóng H n n a, dù có thông minh đ n m y, nhi u ch c n ng
Trang 11đ n m y, chi c đi n tho i di đ ng c ng ph i là “chi c đi n tho i” tr c
đã V y khi đang ch y ng d ng, b t thình lình có m t tin nh n hay m t
cu c g i đ n thì sao? ng d ng ph i đ c đóng t m th i m t cách nhanh chóng, l u tr l i tr ng thái tr c khi đóng, cho ng i dùng nh n tin nh n, cu c g i (n u ng i dùng l a ch n nh n), sau đó l i cho phép
h tr
H n n a, màn hình hi n th c a các thi t b di đ ng c ng “tr m hoa đua n ” v i kích th c, đ phân gi i màn hình… không theo m t chu n nh t đ nh nên ch c ch c s không ra k t qu nh mong mu n khi cài đ t cùng m t ng d ng lên các thi t b khác nhau mà không có s
s a đ i hi n th đ u ra cho phù h p M t khác, các thi t b di đ ng c ng
ti p nh n t ng tác c a ng i dùng r t khác nhau: qua bàn phím, chu t, bút, c m ng… nên l p trình viên c ng c n ph i l u ý đ n đi u này
1.2 T ng quan v Windows Phone:
WP7 chính th c đ c phát hành vào ngày 21/10/2010 t i New Zealand, Australia, Singapore r i Châu Âu Tuy nhiên, nh ng hình nh
đ u tiên c a nó đã xu t hi n tr c đó khá lâu, khi Microsoft gi i thi u WP7 t i MWC 2010 di n ra vào tháng 2 n đ u tháng 10/2010, HTC chính th c gi i thi u m t lo t s n ph m ch y WP7 s ra m t nh HTC Mozart, HTC Trophy, HTC HD7, HTC Surround và HTC 7 Pro Sau
đó, nhi u hãng s n xu t khác nh Samsung, LG và Dell c ng l n l t
gi i thi u các s n ph m ch y WP7 c a mình nh Omnia 7, Optimus 7 hay Dell Venue Pro
Và ngày "l ch s " c ng đã đ n, 20/10/2010, New Zealand là qu c gia đ u tiên bán ra đi n tho i WP7 v i s n ph m HTC Trophy thông qua nhà m ng Vodafone Ch sau 3 tháng, đã có h n 2 tri u máy đi n tho i WP7 đ c xu t x ng S c h p d n c a WP7 đã khi n cho Nokia quy t đ nh h p tác v i Microsoft Thông tin v s ki n này tràn ng p các trang tin công ngh th gi i Nokia cho bi t s b t đ u xu t x ng
đi n tho i ch y WP7 c a hãng t n m 2012
Trang 12Windows Phone (hay còn g i là Windows Phone 7 Series) là h
đi u hành c a Microsolf dành cho smartphone k t c n n t ng Windows Mobile Khác v i Windows Mobile, Windows Phone t p trung vào s phát tri n c a Marketplace – n i các nhà phát tri n có th cung c p s n ph m (mi n phí ho c có phí) t i ng i dùng
Hình 1.2 Giao di n c a Windows Phone 7
Tên mã d án Windows Phone là “Photon” Ban đ u tên g i d
đ nh s là Windows 7 Series, tuy nhiên ngày 22 tháng 4 n m 2010 Microsoft chính th c thông báo phiên b n đ u tiên là Windows Phone 7
- t ng x ng v i h đi u hành Windows 7 dành cho PC
Phiên b n Windows Phone 7 đ u tiên có tên mã là “ NoDo”, ti p
đó là Windows Phone 7.1 Mango, đ n nay đã phát tri n lên phiên b n
Windows Phone 7.5 v i tên mã Mango ti p đ n s có phiên b n k ti p
v i tên mã là Tango
Microsolf v n s đ vi c s n xu t thi t b ph n c ng l i cho hãng
th 3, nh ng khác v i Windows Mobile, WP7 đòi h i m t chính sách
ph n c ng t i thi u kh t khe và nghiêm ng t h n r t nhi u M i chi c smartphone WP7 đ u s ph i đ t yêu c u t i thi u nh sau:
Trang 13• Nút b m b t bu c: Start, search, back, volume, power &
camera (half-press focus)
• Camera: 5MP, đèn flash riêng
• C m bi n: A-GPS, c m bi n ti m c n, gia t c, ánh sáng
• C ng k t n i: Micro-USB, 3.5mm TRS headphone jack
• Các l a ch n khác: b n phím c ng, khe c m th nh SD
1.3 M c đích làm đ tài:
Xây d ng ng d ng qu n lý thông tin các tuy n xe buýt t i Tp.HCM trên h
đi u hành Windows Phone 7
Trang 14Ch ng 2: C S LÝ THUY T 2.1 Ki n trúc c a Windows Phone 7:
Mô hình sau đây mô t chi ti t v ki n trúc c a Windows Phone 7
Trang 151 Runtimes – Siverlight và XNA frameworks cùng v i
tính n ng c a Windows Phone k t h p đ t o m t môi tr ng trong
vi c xây d ng các ng d ng an toàn và phong phú
2 Tools – Visual Studio, Expression Blend và các công
c và tài li u liên quan h tr cho vi c t o, g r i, tri n khai và c p
nh t các ng d ng m t cách nhanh chóng
3 Cloud Services – g m Windows Azure, Xbox LIVE
Services, Notifications services, and Location services, cùng v i m t
lo t các ng d ng web khác cho phép nh ng nhà phát tri n chia s
d li u qua clouds services Ng i dùng có th d dàng truy c p và
s d ng ng d ng đó b t c đâu thông qua thi t b mà h đang s
d ng
4 Portal Services – Windows Phone Marketplace cung
c p các d ch v cho phép nhà phát tri n đ ng ký, xác nh n và mua
bán ng d ng c a h
2.2 L p trình trên Windows Phone 7:
Công c l p trình trên WP7:
• IDE: Visual Studio Express for Windows Phone
• Công c thi t k giao di n: Express Blend for Windows
Phone
• Frameworks: Silverlight for Windows Phone and XNA Game
Studio for Windows Phone
• Và m t Windows Phone 7 emulator đ l p trình and debug
ng d ng
N n t ng ng d ng Windows Phone cung c p 2 framworks cho vi c phát tri n
ng d ng là : Silverlight và XNA
Trang 16Hình 2.3 Windows Phone 7 Frameworks
• Silverlight : có ngu n g c t công ngh Windows
Presentation Foundation (WPF) WPF s d ng Extensible Application Markup Language (XAML) đ đ nh ngh a giao
di n và mã đ s d ng các class Net frameworks cho vi c
th c hi n các ch c n ng c a m t ng d ng
• XNA: Bao g m các ph n m m d ch v , tài nguyên, tài
nguyên và c ng đ ng t p trung vào vi c phát tri n trò ch i và
ng d ng truy n thông đ phát tri n thành công trên n n t ng
game Microsolf XNA cung c p cho các nhà phát tri n kh
n ng truy c p tr c ti p các tính n ng c a thi t b nh video và
h th ng âm thanh
Trang 17Ph n này mô t làm th nào các nhà phát tri n có th s d ng ng d ng n n
t ng Windows Phone t đ u đ n cu i c a chu k phát tri n
Hình 2.4 Application Development Lifecycle
2.2.1 Môi tr ng l p trình:
Microsoft đã chính th c cung c p b công c l p trình ng d ng cho các nhà phát tri n ph n m m di đ ng c ng nh các l p trình viên th gi i B kit phát tri n
ph n m m dành cho Windows Phone 7 đ c cung c p mi n phí tr c tuy n, bao g m:
• Microsoft Visual Studio 2010 Express bao g m Windows Phone
SDK 7.1, cung c p công c mi n phí đ phát tri n ng d ng cho Windows
Phone s d ng NET, Silverlight và XNA
• Mã ngu n Silverlight, XNA Game Studio 4.0,
• Windows Phone 7 Series Emulator,
• B th vi n Windows Phone 7 Series add-in (dùng kèm Visual
Studio 2010 RC)
Trang 18T t c các công c đ u h tr c m ng đa đi m, c m bi n chuy n đ ng, ph n
c ng tích h p chip đ h a, d ch v Microsoft Location Service và Microsoft Notification Service
2.2.2 Cài đ t:
Yêu c u c u hình cài đ t :
• Windows 7 (x86 and x64), Windows® Vista® (x86 and x64) SP2
• Yêu c u 4GB c ng
• 2 GB RAM (3GB d i v i ai dùng Visual Studio đ l p trình)
• Windows Phone Emulator yêu c u card đ h a DirectX 10 v i trình đi u khi n WDDM 1.1
• Windows Phone SDK 7.1 có th t ng thích v i phiên b n m i c a Visual Studio 2010 SP1
B n SDK bao g m:
• Microsoft Visual Studio 2010 Express for Windows Phone
• Windows Phone Emulator
• Windows Phone SDK 7.1 Assemblies
• Silverlight 4 SDK and DRT
• Windows Phone SDK 7.1 Extensions for XNA Game Studio 4.0
• Microsoft Expression Blend SDK for Windows Phone 7
• Microsoft Expression Blend SDK for Windows Phone OS 7.1
• WCF Data Services Client for Window Phone
• Microsoft Advertising SDK for Windows Phone
Trang 19http://download.microsoft.com/download/2/4/7/24733615 AA11 42E9 8883
E28CDCA88ED5/X16 42552VS2010UltimTrial1.iso
• B n SP1 Visual Studio 2010 download t i :
http://download.microsoft.com/download/E/B/A/EBA0A152 F426 47E6 9E3F
B c 1: T i b cài Windows Phone 7 Development Kit (file vm_web.exe.zip
đính kèm) v máy và ti n hành cài đ t File này ch có 3.3Mb nh ng trong quá trình cài đ t nó s t đ ng t i v các thành ph n c n thi t (t ng c ng lên đ n 292Mb) Máy
b n ph i có k t n i internet
Hình 2.5 T i Windows Phone Developer Tools
Trang 22Ti p t c cài đ t cho khi hoàn thành Sau khi cài đ t xong chúng ta m Visual Studio 2010 lên
Hình 2.9: Giao di n Visual Studio 2010
B c 2: Sau khi cài đ t thành công, b n s đ c yêu c u ph i kh i đ ng l i máy
B c 3: Ti p theo ch y Microsoft Visual Studio 2010 (là ph n m m v a
Trang 23
Hình 2.10: T o ng d ng Windows Phone
B c 5: T i đây b n đã cài đ t thành công Windows Phone 7 Emulator trên
máy tính c a mình Bây gi chúng ta đã có th ti n hành l p trình ng d ng Windows
ứ File App.xaml v i các XAML markup (Extensible
Application Markup Language g m m t root element là Application và ph n Application.Resources ch a các resources m c ng d ng nh color, brushes, style object…
ứ MainPage.xaml\MainPage.xaml.cs: nh ngh a trang giao
di n kh i đ u ng d ng
ứ MainPage.xaml đ nh ngh a giao di n chính c a ng d ng
B n có th dùng designer c a Visual Studio đ thi t k UI c a
ng d ng ngay tr c ti p Toàn b UI c a ng d ng đ c xây
d ng b ng cách s d ng XAML – m t ngôn ng khai báo
gi ng ki u XML
Trang 24ứ ApplicationIcon.png: nh icon ng d ng trong application
list c a phone
ứ Background.png: nh icon ng d ng màn hình start
ứ SplashScreenImage.jpg: nh đ u tiên khi lauch ng d ng
ứ Properties\AppManifest.xml: File manifest dùng đ t o ra
gói ng d ng
ứ Properties\AssemblyInfo.cs: Ch a tên và thông tin phiên
b n đ c nhúng vào trong file assembly khi complie
ứ Properties\WMAppManifest.xml: File manifest ch a các
thông tin riêng c a ng d ng Windows Phone Silverlight
Hình 2.11 C u trúc c a m t project WP7