Successfully reported this slideshow.

Wi phug windows phone development from z to a

0

Share

1 of 41
1 of 41

More Related Content

Related Books

Free with a 14 day trial from Scribd

See all

Wi phug windows phone development from z to a

  1. 1. @WiPhug Windows Phone App Development from Z to A 26/04/201 2
  2. 2. about WiPhug • sharing is caring • developers for developers @depechie @johanpeters @modul8com @nicovermeir @bartlannoeye @goofys_friend @miscoriadennis 26/04/201 2
  3. 3. thank you sponsors 26/04/201 2
  4. 4. community request • Belgian Apps • are a Windows Phone developer ? • can‟t find your app in this app ? • mail your ApplicationId to : johan.p@live.be 26/04/201 2
  5. 5. speakers of today Michael Bruyninckx @modul8com Bart Lannoeye @bartlannoeye Glenn Versweyveld tweet @depechie #wiphug 26/04/201 2
  6. 6. agenda Marketplace submission process MVVMLight 4.0 MS SQL Server CE AgFx Cimbalino HubTiles JeffWilcox.Maps & Bing Maps mtiks for Windows Phone 26/04/201 2
  7. 7. Marketplace submission submit a new app status ongoing submissions download statistics daily vs total 26/04/201 2
  8. 8. Marketplace submission upload page give your app a name select XAP select if it‟s a beta or not give a version number beta submission give your app to max 50 testers and let them evaluate it during max 90 days 26/04/201 2
  9. 9. Marketplace submission describe your App the xap is uploaded and analyzed in case of multi language support, several “detail pages” have to be filled out, short description, detailed description, keywords, even artwork and screenshots, etc. – a lot of work! add multi language support directly in project file <project name>.csproj <SupportedCultures>nl,fr,de,en</SupportedCultures> 26/04/201 2
  10. 10. Marketplace submission set your price and select the availability per country 26/04/201 2
  11. 11. Marketplace submission test information the most important setting of the publishing process, i.e. “the publish options” 26/04/201 2
  12. 12. Marketplace submission Approval process = +- 5 working days If rejected, perfect explanation why • pdf document that details problems • step by step reproduction of problem Test your app with the Marketplace Test kit 26/04/201 2 Bart Demo
  13. 13. MVVMLight 4.0 what is MVVM ? • architectural design pattern • targeted to modern UI development • Windows Presentation Foundation (WPF) • Silverlight • Windows Phone • HTML5 (KnockOut.js for example) • Windows 8 26/04/201 2
  14. 14. MVVMLight 4.0 why MVVM ? • collaboration (designers and developers) • maintainability • model never changes when view changes • viewmodel rarely changes when view changes • code is easier to find • flexible UI changes • separation of concerns • single responsibility • unit testability • reusability of components 26/04/201 2
  15. 15. MVVMLight 4.0 MVVM’s how ? • INotifyPropertyChanged • bindings • commanding 26/04/201 2
  16. 16. MVVMLight 4.0 the Model • as good as all possible data sources • expose data as collections • one Model can serve several ViewModels • use Interfaces to provide data • allows database mocking • Eliminate tight coupling of services with Model 26/04/201 2
  17. 17. MVVMLight 4.0 the View • represent the user interface • contains no testable logic • keep as simple as possible • designers playground 26/04/201 2
  18. 18. MVVMLight 4.0 the ViewModel • abstraction of the view • glue between view and model • keeps the View‟s state 26/04/201 2
  19. 19. MVVMLight 4.0 why MVVMLight 4.0 ? • developed by Laurent Bugnion (MVP) • same framework for Silverlight, WPF, Windows Phone 7 and Windows 8 • emphasis on “blend-ability” • easy to learn, lots of examples online 26/04/201 2
  20. 20. MVVMLight 4.0 How does it work ? • uses a locator pattern via ViewModelLocator • uses ICommand for Commanding • bind with Buttons • bind with Event Triggers for Events • Or with MVVM Light RelayCommands • uses Event Aggregator / mediator / messenger • ViewModels communicate with each other 26/04/201 2 Glenn Demo
  21. 21. MS SQL Server CE • build in database support since WP 7.5 • database SQL Server CE (.sdf file) • uses isolated storage • DB server runs only when app is active • code first approach • Linq to SQL to query 26/04/201 2
  22. 22. MS SQL Server CE create POCO‟s • classes = tables • properties = columns (& indexes) • create associations between tables create DataContext classes • expose tables 26/04/201 2 Bart Demo
  23. 23. AgFx what is it ? • framework for fetching and caching data • keeps the work off the UI thread • optimizes network usage • automatically determines if cache is valid • MVVM support 26/04/201 2
  24. 24. AgFx how ? • describe how to fetch data • tell it how to deserialize that data • say when the data expires, so fresh data can be fetched • then all the rest happens automagically 26/04/201 2 Glenn Demo
  25. 25. Cimbalino what is it ? a set of useful and powerful elements: • an ApplicationBar behaviour to make it bindable • MVVM navigation service • MVVM compatible services for camera access • and a few other sevices • converters, helper classes and extension methods 26/04/201 2
  26. 26. Cimbalino how ? • NavigationService • constructor injects the NavigationService in your ViewModels • ApplicationBar Behaviour • add a namespace reference in XAML to Cimbalino.Phone.Toolkit.Behaviors 26/04/201 2 Glenn Demo
  27. 27. HubTiles what is it ? • in-app „live tiles‟ • makes the app more vivid • control available in the Silverlight Toolkit for WP 26/04/201 2 Bart Demo
  28. 28. Bing Maps how to use the map ? • register at http://www.bingmapsportal.com • use your Windows (Live) Account • generate a “mobile” key • 1 key for all your mobile apps ! • use key in app • BingMaps Control : CredentialsProvider property • JeffWilcox.Maps : Application.Resources 26/04/201 2
  29. 29. JeffWilcox.Maps what is it ? • performance optimisation • image button • image = Bing or Google Map • only 1 – non templated pushpin • click event shows Bing Maps • Bing Maps key via Application.Resources 26/04/201 2 Glenn Demo
  30. 30. mtiks for Windows Phone allows analytics real time app usage statistics anti piracy protection super easy implementation 26/04/201 2
  31. 31. mtiks for Windows Phone 26/04/201 2
  32. 32. mtiks for Windows Phone 26/04/201 2
  33. 33. mtiks for Windows Phone 26/04/201 2
  34. 34. mtiks for Windows Phone 26/04/201 2
  35. 35. mtiks for Windows Phone why mtiks and not another ? Microsoft Marketplace Flurry + out of box + fast results - delay 1 week - incorrect results Distimo Google Analytics + rich data + feature rich - 3 to 4 days delay - lots of code 26/04/201 2
  36. 36. mtiks for Windows Phone how to implement ? 1. register at http://www.mtiks.com/signup 2. nuget mtiks or download SDK = zip containing a DLL and reference it 3. in App.XAML using System.Reflection; using com.mtiks.winmobile; 4. in Application_Launching and Application_Activated mtiks.Instance.Start(“YourKey", Assembly.GetExecutingAssembly()); 5. In Application_Deactivated and Application_Closing mtiks.Instance.Stop(); 26/04/201 2 Bart Demo
  37. 37. mtiks for Windows Phone anti piracy ? protection against illegal downloads how ? - silent piracy tracking - automatic message box 26/04/201 2 Demo
  38. 38. used tools MVVMLight • http://mvvmlight.codeplex.com/releases • http://nuget.org/packages/MvvmLightPreview AgFx • http://agfx.codeplex.com/ • http://nuget.org/packages/AgFx Cimbalino • https://github.com/PedroLamas/Cimbalino-Phone-Toolkit • http://nuget.org/packages/Cimbalino.Phone.Toolkit 26/04/201 2
  39. 39. used tools JeffWilcox.Maps • http://www.jeff.wilcox.name/2012/01/jeffwilcox-maps/ • https://github.com/jeffwilcox/wp-maps • http://nuget.org/packages/JeffWilcox.Maps mtiks • http://www.mtiks.com • http://nuget.org/packages/mtiks SQL Compact Edition • http://www.microsoft.com/download/en/details.aspx?id=17876 26/04/201 2
  40. 40. planned events 24/05 Advanced data access strategies Kevin Dockx 21/06 Community Day June 3 speakers, 3 sessions 20/09 MVVMLight & Bing Maps Joost Van Schaik (MVP NL) 25/10 Application lifecycle, isolated Storage & local database Kevin Dockx more planned in november & december ! 26/04/201 2
  41. 41. q&a 26/04/201 2

Editor's Notes

  • eervollevernoemingCronos
  • eervollevernoemingCronos
  • Project -&gt; Open Marketplace Test Kit
  • Model
  • Demo
  • ×