Creating high rated and reliable Windows 8 application
-
date post
20-Oct-2014 -
Category
Technology
-
view
660 -
download
0
description
Transcript of Creating high rated and reliable Windows 8 application
![Page 1: Creating high rated and reliable Windows 8 application](https://reader034.fdocuments.in/reader034/viewer/2022051816/54451247afaf9feb2b8b467d/html5/thumbnails/1.jpg)
Mykhail Galushkoco-founder DevRain SolutionsMicrosoft MVP
Creating high rated and reliable Windows 8 application
![Page 2: Creating high rated and reliable Windows 8 application](https://reader034.fdocuments.in/reader034/viewer/2022051816/54451247afaf9feb2b8b467d/html5/thumbnails/2.jpg)
Application
1. Why bad rating?2. Problem areas in WinStore apps3. Windows Store tools4. Windows 8.1 features5. Third-party logging services
![Page 3: Creating high rated and reliable Windows 8 application](https://reader034.fdocuments.in/reader034/viewer/2022051816/54451247afaf9feb2b8b467d/html5/thumbnails/3.jpg)
Reasons of bad rating
Application
Free
zes
Crash
es
Slow
resp
onsiv
enes
s
Heavy
bat
tery
usa
ge
Too
man
y ad
s0
10
20
30
40
50
60
70
80
![Page 4: Creating high rated and reliable Windows 8 application](https://reader034.fdocuments.in/reader034/viewer/2022051816/54451247afaf9feb2b8b467d/html5/thumbnails/4.jpg)
10 problem areas in Windows Store app
Application1) Suspend/Resume2) Terminate/Restart3) App version updates4) Network connectivity5) Asynchronous operations
![Page 5: Creating high rated and reliable Windows 8 application](https://reader034.fdocuments.in/reader034/viewer/2022051816/54451247afaf9feb2b8b467d/html5/thumbnails/5.jpg)
10 problem areas in Windows Store app
Application6) Resolutions and orientations7) Device testing8) Localizability9) Accessibility10) User experience guidelines
![Page 6: Creating high rated and reliable Windows 8 application](https://reader034.fdocuments.in/reader034/viewer/2022051816/54451247afaf9feb2b8b467d/html5/thumbnails/6.jpg)
Suspend/Resume – Terminate/Restart
ApplicationRunning
Not Running
Suspended
Activated Suspending
Resuming
Terminating
![Page 7: Creating high rated and reliable Windows 8 application](https://reader034.fdocuments.in/reader034/viewer/2022051816/54451247afaf9feb2b8b467d/html5/thumbnails/7.jpg)
Suspend/Resume – Terminate/Restart
ApplicationValidate app state on resume: user sessions, sensors state, service connections
Use VS tools to simulate events:
![Page 8: Creating high rated and reliable Windows 8 application](https://reader034.fdocuments.in/reader034/viewer/2022051816/54451247afaf9feb2b8b467d/html5/thumbnails/8.jpg)
App version updates
ApplicationTest every app update before release
Make data storage migrations if needed
If using API – check min server version to communicate
![Page 9: Creating high rated and reliable Windows 8 application](https://reader034.fdocuments.in/reader034/viewer/2022051816/54451247afaf9feb2b8b467d/html5/thumbnails/9.jpg)
Network connectivity
ApplicationTest no connectionTest slow connection (with Fiddler)
Do not use NetworkInformation.GetInternetConnectionProfile(): can be null when using mobile internet
![Page 10: Creating high rated and reliable Windows 8 application](https://reader034.fdocuments.in/reader034/viewer/2022051816/54451247afaf9feb2b8b467d/html5/thumbnails/10.jpg)
Asynchronous operations
ApplicationCheck async operations:
- several starts problem – block UI after start
- invalid call order- think twice about “async void”
methods- add delays for testing
![Page 11: Creating high rated and reliable Windows 8 application](https://reader034.fdocuments.in/reader034/viewer/2022051816/54451247afaf9feb2b8b467d/html5/thumbnails/11.jpg)
Resolutions and orientations
ApplicationUse simulator to check all resolutionsCheck from 1024x768 to …Check Snapped / Filled viewsWindows 8.1: + 500px width sizeCheck popups & settings pane for small resolutions
![Page 12: Creating high rated and reliable Windows 8 application](https://reader034.fdocuments.in/reader034/viewer/2022051816/54451247afaf9feb2b8b467d/html5/thumbnails/12.jpg)
Application
![Page 13: Creating high rated and reliable Windows 8 application](https://reader034.fdocuments.in/reader034/viewer/2022051816/54451247afaf9feb2b8b467d/html5/thumbnails/13.jpg)
Device testing
Applicationx86 x64ARM
Especially for C++
![Page 14: Creating high rated and reliable Windows 8 application](https://reader034.fdocuments.in/reader034/viewer/2022051816/54451247afaf9feb2b8b467d/html5/thumbnails/14.jpg)
Localizability
ApplicationUse Multilingual App Toolkit to generate pseudo translations
![Page 15: Creating high rated and reliable Windows 8 application](https://reader034.fdocuments.in/reader034/viewer/2022051816/54451247afaf9feb2b8b467d/html5/thumbnails/15.jpg)
Accessibility
ApplicationVisual: high/contrast, text contrast
Keyboard accessibility: onscreen and physical
![Page 16: Creating high rated and reliable Windows 8 application](https://reader034.fdocuments.in/reader034/viewer/2022051816/54451247afaf9feb2b8b467d/html5/thumbnails/16.jpg)
User experience guidelines
ApplicationApp barsFlyouts (popups)NavigationLayoutAnimation
![Page 17: Creating high rated and reliable Windows 8 application](https://reader034.fdocuments.in/reader034/viewer/2022051816/54451247afaf9feb2b8b467d/html5/thumbnails/17.jpg)
Windows Store features
ApplicationJavaScript exception rateCrash rateApp unresponsive rateError reports
![Page 18: Creating high rated and reliable Windows 8 application](https://reader034.fdocuments.in/reader034/viewer/2022051816/54451247afaf9feb2b8b467d/html5/thumbnails/18.jpg)
Windows 8.1 features – Logging API
ApplicationLogging Channel
Logging Channel
Logging Channel
Logging Session
Storage file
My backend service
![Page 19: Creating high rated and reliable Windows 8 application](https://reader034.fdocuments.in/reader034/viewer/2022051816/54451247afaf9feb2b8b467d/html5/thumbnails/19.jpg)
Windows 8.1 features – Logging API
ApplicationLogging Channel
Logging Session
Storage file
My backend service
var channel = new LoggingChannel (“MyChannel");channel.LoggingEnabled += (sender, args) => { _isLoggingEnabled = sender.Enabled; _channelLoggingLevel = sender.Level; }
var level = LoggingLevel.Error;if (_isLoggingEnabled && level >= _channelLoggingLevel) { channel.LogMessage(“message", level); channel.LogValuePair(“custom parameter", 42, level); }
![Page 20: Creating high rated and reliable Windows 8 application](https://reader034.fdocuments.in/reader034/viewer/2022051816/54451247afaf9feb2b8b467d/html5/thumbnails/20.jpg)
Windows 8.1 features – Logging API
ApplicationLogging Channel
Logging Session
Storage file
My backend service
var session = new LoggingSession(“MySession");session.AddLoggingChannel(channel, LoggingLevel.Warning);
//on errorStorageFile logFile = await session.SaveToFileAsync(logFolder, name) //upload in background to my backend service
![Page 21: Creating high rated and reliable Windows 8 application](https://reader034.fdocuments.in/reader034/viewer/2022051816/54451247afaf9feb2b8b467d/html5/thumbnails/21.jpg)
Windows 8.1 features – Logging API
ApplicationLogging Channel
Logging Session
Storage file
My backend service
var session = new FileLoggingSession(“MySession");session.AddLoggingChannel(channel, LoggingLevel.Warning);
session.LogFileGenerated += (senders, args) => { await args.File.MoveAsync(logFolder); //upload in background to my backend service}
var file = await session.CloseAndSaveToFileAsync();
![Page 22: Creating high rated and reliable Windows 8 application](https://reader034.fdocuments.in/reader034/viewer/2022051816/54451247afaf9feb2b8b467d/html5/thumbnails/22.jpg)
Third-party logging services
ApplicationBugsense
• Limited Free• User analytics• WinJS support• Integration: JIRA, Pivotal Tracker, Github, Hipchat
http://www.bugsense.com
![Page 23: Creating high rated and reliable Windows 8 application](https://reader034.fdocuments.in/reader034/viewer/2022051816/54451247afaf9feb2b8b467d/html5/thumbnails/23.jpg)
Third-party logging services
ApplicationLocalytics
• User analytics• Error logging as events• WinJS support• Full free plan
http://www.localytics.com
![Page 24: Creating high rated and reliable Windows 8 application](https://reader034.fdocuments.in/reader034/viewer/2022051816/54451247afaf9feb2b8b467d/html5/thumbnails/24.jpg)
Third-party logging services
ApplicationMarkedUp
• User analytics• WinJS support• Full free plan
http://www.markedup.com
![Page 25: Creating high rated and reliable Windows 8 application](https://reader034.fdocuments.in/reader034/viewer/2022051816/54451247afaf9feb2b8b467d/html5/thumbnails/25.jpg)
Third-party logging services
ApplicationWensus
• User analytics• Free plan for 1 app• Paid plan: + reviews + performance reports
http://www.wensus.com
![Page 26: Creating high rated and reliable Windows 8 application](https://reader034.fdocuments.in/reader034/viewer/2022051816/54451247afaf9feb2b8b467d/html5/thumbnails/26.jpg)
Q&A