go mobile with windows phone
DESCRIPTION
A talk for Lviv .net User Group on Windows Phone 7: Brief overview of the platform and application development using Silverlight.TRANSCRIPT
GOMOBILEWITHWINDOWSPHONE
yuriy opryshko
GO MOBILE
history
GO MOBILE
touch era windows mobile
brick candy bar feature phone
smartphone
iPhone :)
touch era
• GPRS/3G/Wi-Fi• fingers, not stylus• accelerometers• GPS and location services• rich interface• media platform• “it’s about the web”
GO MOBILE
windows mobile history
windows mobile
• old and bloated• fragmented• stylus-oriented• UX varies on different phones• non-centralized app deployment• etc
• overall: needs a change
GO MOBILE
history touch era
WINDOWS PHONE 7
what‘s new
• completely different• end user comes first• “glance and go”• consistent user interface• consistent hardware
WINDOWS PHONE 7
hardware metro
hardware
• 1 GHz ARMv7 processor• 4-point multi-touch• DirectX9-capable GPU• at least 256MB ram and 8GB flash• accelerometer/compass• GPS• 5-megapixel camera• 6 dedicated hardware buttons
WINDOWS PHONE 7
metro what’s new
metro
WINDOWS PHONE 7
what’s new hardwareCLEAN, LIGHT, OPEN, FAST
• feels fast and responsive• focus on primary tasks• do a lot with very little• fierce reduction of unnecessary elements• delightful use of whitespace• full bleed canvas
CELEBRATE TYPOGRAPHY
• type is beautiful, not just legible• clear, straightforward information design• uncompromising sensitivity to weight, balance and scale
ALIVE IN MOTION
• feels responsive and alive• creates a system• gives context to improve usability• transition between UI is as important as the design of UI• adds dimension and depth
CONTENT, NOT CHROME
• delight through content instead of decoration• reduce visuals that are not content• content is the UI• direct integration with the content
AUTHENTICALLY DIGITAL
• design for the form factor• don’t try to be what it’s not• be direct
DEVELOPMENT I
• silverlight– all you would expect from browser one
(except shaders and some small limitations)
• XNA– the ultimate framework for your game
development needs
• developer tools – free!– http://create.mdsn.com/
technologies
DEVELOPMENT
dev lifecycle marketplace
dev lifecycle
DEVELOPMENT
marketplace technologies
marketplace
• centralized place for apps and games• support for trial mode• good apps get featured
• hint: there’re lots of crappy apps now,go write your cool one and earn
money!
DEVELOPMENT
technologies dev lifecycle
DEVELOPMENT II
sensors
• vibration
• accelerometer
• location
DEVELOPMENT
input media browser and more
VibrateController vc = VibrateController.Default;vc.Start(TimeSpan.FromSeconds(3));
var accelerometer = new Accelerometer();accelerometer.ReadingChanged += (s, e) => { textBox.Text = String.Format("{0}:{1}:{2}", e.X, e.Y, e.Z); };accelerometer.Start();
GeoCoordinateWatcher watcher = new GeoCoordinateWatcher(GeoPositionAccuracy.Low);
input
• TextBox supports different input scopes– Text, Url, Number, Time, TelephoneNumber,
etc
• microphone input gives access to raw WAV data– calls BufferReady regularly, or the app can
call GetData at any time
• silverlight toolkit has support for all your gesturing needs– tap, hold, swipe, flick, pinch&zoom
DEVELOPMENT
media browser and more sensors
media
• hardware accelerated• xna framework sound effect api– supports polyphonic, looping wav data
• some limitations exist– only one MediaElement per page– no VideoBrush support
DEVELOPMENT
browser and more sensors input
browser
• displays local and network content• supports pan, double tap and pinch for
zooming• no in-browser silverlight for now :(• interacting with javascript and vice versa
DEVELOPMENT
and more sensors input media
string result = webBrowser.InvokeScript(“Hello”, “Hello from Silverlight”);
function Hello(arg) { document.write(arg) }
void webBrowser_ScriptNotify(object sender, NotifyEventArgs e){ MessageBox.Show(e.Value) }
window.external.notify(“Hello from JavaScript”);
and more
• silverlight toolkit – things that should have been out of the box– DatePicker and TimePicker and ListPicker– page transitions– ToggleSwitch–WrapPanel– AutoCompleteBox– and many more
• lots of cool and useful libs on codeplex
DEVELOPMENT
sensors input media browser
WP7 IN UKRAINE
now and in future
• phones – available now! :)
• no keyboard :(• no marketplace :(• no developer accounts :(
• those will be available in the second half of the year
• contact microsoft ukraine guys – they can help
WP7 IN UKRAINE
RESOURCES
design
• windows phone design system: codenamed “Metro” http://go.microsoft.com/fwlink/?LinkID=189338
• ui design and interaction guide http://go.microsoft.com/fwlink/?LinkID=183218
• expression blend for windows phone- included with the developer tools
• design templates for windows phone 7 http://go.microsoft.com/fwlink/?LinkId=196225
RESOURCES
develop publish
develop
• windows phone developer tools http://bit.ly/wp7developer
• ui design and interaction guide http://go.microsoft.com/fwlink/?LinkID=183218
• app hub learning catalog http://create.msdn.com/en-US/education/
• channel9 windows phone videos http://channel9.msdn.com/tags/Windows+Phone/
• free Programming Windows Phone 7 ebook http://www.charlespetzold.com/phone/
RESOURCES
publish design
publish
• application certification requirements http://go.microsoft.com/?linkid=9730558
• windows phone marketplace submission walkthrough http://create.msdn.com/home/about/app_submission_walkthrough_upload
RESOURCES
design develop
Q&A
thanks for listening!