SlideShare ist ein Scribd-Unternehmen logo
1 von 36
Photo: phoneArena.com


                            Developing for Windows Phone:
                                a Guide for iOS Developers




                             MICROSOFT CAMPUS
                             MOUNTAIN VIEW, CA
                               MARCH 18, 2013
3.18.2013 - WWW.QUBOP.COM
Hello!

                              Evan Kirchhoff, CTO
                              evan@qubop.com
                              Twitter: @theevank




                            www.qubop.com
                             Twitter: @qubopinc
3.18.2013 - WWW.QUBOP.COM
About Qubop Inc.

     Qubop is a mobile app design, development and consulting company, originally founded as a digital agency in
     2002. Current clients include interactive agencies, consumer brands, healthcare firms, Fortune 500 companies
     and early-stage startups. Company principals have worked in mobile for over 10 years, and have deep
     knowledge of the industry and platform landscape.

     Qubop has strong in-house native development teams for both iOS and Android. We have successfully
     designed and shipped dozens of mobile apps, providing end-to-end solutions from the earliest discovery
     phases to full application programming and maintenance.

     Our own apps have been featured by Apple in the iTunes stores in the US, Canada and Japan, by Barnes &
     Noble in the Nook Shop, and by Amazon in the Appstore for Android. We have also created apps for Windows
     Phone, and are currently porting apps to BlackBerry 10.




3.18.2013 - WWW.QUBOP.COM
WWW.QUBOP.COM
Developing for Windows Phone:
                     a Guide for iOS Developers


                 1. Setting up your Mac
                 2. Configuring your environment
                 3. Porting iOS apps to Windows Phone
                 4. The Microsoft mobile toolchain


3.18.2013 - WWW.QUBOP.COM
Possibly the best Windows laptop on the market*




     X
(Difficult to run WP simulator)
                                                                        ✓
                                                                            Use BootCamp:
                                                                         Applications/Utilities/
                                                                        Boot Camp Assistant.app




                                  * Although not exactly the cheapest

3.18.2013 - WWW.QUBOP.COM
As of last week, Windows 8 finally supported on Macs (Mountain Lion only)
3.18.2013 - WWW.QUBOP.COM
Dual-booting Windows on Mac: Recommended Setup



       100GB
       MINIMUM PARTITION SIZE
                                 INSTALL UTILITIES FOR:

                                 Reading foreign filesystems
                                 Partition handling

         OPTICAL                 Tweaking Mac hardware
                                 behavior in Windows
          DRIVE
             MAKES LIFE EASIER   Also join Microsoft’s
                                 BizSpark Program!

3.18.2013 - WWW.QUBOP.COM
Join BizSpark for free OS licenses and dev tools: http://www.microsoft.com/bizspark
3.18.2013 - WWW.QUBOP.COM              (Must be less than 5 years old, less than $1M annual revenue)
Developing for Windows Phone:
                     a Guide for iOS Developers


                 1. Setting up your Mac
                 2. Configuring your environment
                 3. Porting iOS apps to Windows Phone
                 4. The Microsoft mobile toolchain


3.18.2013 - WWW.QUBOP.COM
Recommended:




                            http://www.paragon-software.com/home/ntfs-hfs-bundle/
3.18.2013 - WWW.QUBOP.COM
“Oops, I made my Windows partition too small!”




                            http://www.paragon-software.com/home/camptune/


3.18.2013 - WWW.QUBOP.COM
Recommended: install Trackpad++ http://trackpad.powerplan7.com
3.18.2013 - WWW.QUBOP.COM speed, multitouch gestures and Lion-style reverse scrolling in Windows on MacBook)
               (Fix pointer
Remap Mac keyboard (in Windows mode)
                 to avoid motor-memory madness




                   SUGGESTION: SWAP ALT AND COMMAND KEYS IN WINDOWS,
                      SO (CMD-TAB) SWITCHES APPS ON BOTH PLATFORMS



3.18.2013 - WWW.QUBOP.COM
Or just go buy a dedicated
                            Windows PC for development
                            (They’re inexpensive!)


3.18.2013 - WWW.QUBOP.COM
Developing for Windows Phone:
                     a Guide for iOS Developers


                 1. Setting up your Mac
                 2. Configuring your environment
                 3. Porting iOS apps to Windows Phone
                 4. The Microsoft mobile toolchain


3.18.2013 - WWW.QUBOP.COM
MOBIPARK (IPHONE)



3.18.2013 - WWW.QUBOP.COM
MOBIPARK (WINDOWS PHONE)



3.18.2013 - WWW.QUBOP.COM
Replicating the iOS UIPickerView control (XAML portion)
3.18.2013 - WWW.QUBOP.COM
Replicating the iOS UIPickerView control (C# portion)
3.18.2013 - WWW.QUBOP.COM
MOBIMILEAGE (IPHONE)
        (Popular, but could not port to WP7, due to requirement for constant background GPS updates)


3.18.2013 - WWW.QUBOP.COM
Now possible in Windows Phone 8!




                                MOBIMILEAGE (WINDOWS PHONE 8)


3.18.2013 - WWW.QUBOP.COM
Don’t replicate iOS/Android UI




   FOURSQUARE (IOS)         FOURSQUARE (ANDROID)   FOURSQUARE (WINDOWS PHONE)



3.18.2013 - WWW.QUBOP.COM
The Panorama Control




                            24px “peek”


3.18.2013 - WWW.QUBOP.COM
Panorama = Tab Bar (iOS) or Action Bar (Android)




                            WINDOWS
                             PHONE     IOS          ANDROID

3.18.2013 - WWW.QUBOP.COM
Pivot = Segmented Control (iOS)




                            WINDOWS MAIL


3.18.2013 - WWW.QUBOP.COM
“Application Bar” = Toolbar (iOS) + Menu Button (Android)




                                                            +




3.18.2013 - WWW.QUBOP.COM
Don’t nest draggable elements inside a draggable screen




      Top-level                                                Drill-down
          map is                                               map responds
non-draggable,                                                 to drag, pinch/
 only clickable:                                               zoom gestures




                                  Use hardware back button,
3.18.2013 - WWW.QUBOP.COM         not in-app back navigation
Take the Back Button Seriously




                 DO NOT ADD YOUR OWN BACK BUTTONS WITHIN YOUR APP
          USE HARDWARE BACK BUTTON TO CLOSE DIALOGS, DISMISS KEYBOARD
         DO NOT USE THE BACK BUTTON TO MOVE SIDEWAYS IN PIVOT/PANORAMA

3.18.2013 - WWW.QUBOP.COM
Remember that the platforms are divided differently
                      “PC”                     “MOBILE”




3.18.2013 - WWW.QUBOP.COM
Developing for Windows Phone:
                     a Guide for iOS Developers


                 1. Setting up your Mac
                 2. Configuring your environment
                 3. Porting iOS apps to Windows Phone
                 4. The Microsoft mobile toolchain


3.18.2013 - WWW.QUBOP.COM
What to expect if coming from iOS to Windows Phone

     • More rapid development
         Up to 4:1* advantage in time and code size vs. iOS

     • Apps are prettier by default
         Beautiful layouts & parallax scrolling built into stock templates

     • Typically less custom UI work
         Platform assumes high UI standardization across apps


                            * For apps where code is heavily UI-based

3.18.2013 - WWW.QUBOP.COM
4500 LINES OF CODE   900 LINES OF CODE
3.18.2013 - WWW.QUBOP.COM
Visual Studio: project templates for Windows Phone design patterns
3.18.2013 - WWW.QUBOP.COM
Visual Studio: substantial code automatically generated with app templates
3.18.2013 - WWW.QUBOP.COM
WP8 = 3 screen sizes, WP7 = 1 screen size (“Emulator 7.1”)
       Overall development experience: more like iOS than Android
3.18.2013 - WWW.QUBOP.COM
Thanks!

                              Evan Kirchhoff, CTO
                              evan@qubop.com
                              Twitter: @theevank




                            www.qubop.com
                             Twitter: @qubopinc
3.18.2013 - WWW.QUBOP.COM

Weitere ähnliche Inhalte

Was ist angesagt?

Trends in mobile technology for the event market FEO 2015
Trends in mobile technology for the event market FEO 2015Trends in mobile technology for the event market FEO 2015
Trends in mobile technology for the event market FEO 2015Allan Isfan
 
Mobile advertising by Yann Lechelle from Appsfire
Mobile advertising by Yann Lechelle from AppsfireMobile advertising by Yann Lechelle from Appsfire
Mobile advertising by Yann Lechelle from AppsfireCocoaHeads France
 
Need more speed! Pain of mobile app development. Case: Virittäjät
Need more speed! Pain of mobile app development. Case: VirittäjätNeed more speed! Pain of mobile app development. Case: Virittäjät
Need more speed! Pain of mobile app development. Case: VirittäjätVincitOy
 
What are the challenges in i os app development
What are the challenges in i os app developmentWhat are the challenges in i os app development
What are the challenges in i os app developmentSatawareTechnologies
 
Vietnam Mobile Day 2013: App Monetization 4 Secrets to Success
Vietnam Mobile Day 2013: App Monetization 4 Secrets to SuccessVietnam Mobile Day 2013: App Monetization 4 Secrets to Success
Vietnam Mobile Day 2013: App Monetization 4 Secrets to SuccessGameLandVN
 
[Vietnam Mobile Day 2013] - App monetization - 4 Secrets to success
[Vietnam Mobile Day 2013] - App monetization - 4 Secrets to success[Vietnam Mobile Day 2013] - App monetization - 4 Secrets to success
[Vietnam Mobile Day 2013] - App monetization - 4 Secrets to successAiTi Education
 
Web App VS. Hybrid App VS. Native App?
Web App VS. Hybrid App VS. Native App?Web App VS. Hybrid App VS. Native App?
Web App VS. Hybrid App VS. Native App?Justin O'Neill
 
UVic Startup Slam September 2014 (Kano Apps)
UVic Startup Slam September 2014 (Kano Apps)UVic Startup Slam September 2014 (Kano Apps)
UVic Startup Slam September 2014 (Kano Apps)sendwithus
 
Pick Your Poison – Mobile Web, Native or Hybrid?
Pick Your Poison – Mobile Web, Native or Hybrid?Pick Your Poison – Mobile Web, Native or Hybrid?
Pick Your Poison – Mobile Web, Native or Hybrid?Effective
 
[Mobile Monday T7] - 4 Secrets to successful app Monetization
[Mobile Monday T7] - 4 Secrets to successful app Monetization [Mobile Monday T7] - 4 Secrets to successful app Monetization
[Mobile Monday T7] - 4 Secrets to successful app Monetization AiTi Education
 
Mobile Monday 07/2013: App Monetization 4 Secrets to Success
Mobile Monday 07/2013: App Monetization 4 Secrets to SuccessMobile Monday 07/2013: App Monetization 4 Secrets to Success
Mobile Monday 07/2013: App Monetization 4 Secrets to SuccessGameLandVN
 
Learning salesforce-mobile-way
Learning salesforce-mobile-wayLearning salesforce-mobile-way
Learning salesforce-mobile-wayAbhinav Gupta
 
Do You Need a Web App or a Native App?
Do You Need a Web App or a Native App?Do You Need a Web App or a Native App?
Do You Need a Web App or a Native App?iFactory Digital
 
Hybrid vs Native Mobile App. Decide in 5 minutes!
Hybrid vs Native Mobile App. Decide in 5 minutes!Hybrid vs Native Mobile App. Decide in 5 minutes!
Hybrid vs Native Mobile App. Decide in 5 minutes!July Systems
 
Native vs Hybrid - Options to develop your mobile application
Native vs Hybrid - Options to develop your mobile applicationNative vs Hybrid - Options to develop your mobile application
Native vs Hybrid - Options to develop your mobile applicationLoic Ortola
 

Was ist angesagt? (20)

Trends in mobile technology for the event market FEO 2015
Trends in mobile technology for the event market FEO 2015Trends in mobile technology for the event market FEO 2015
Trends in mobile technology for the event market FEO 2015
 
Mobile advertising by Yann Lechelle from Appsfire
Mobile advertising by Yann Lechelle from AppsfireMobile advertising by Yann Lechelle from Appsfire
Mobile advertising by Yann Lechelle from Appsfire
 
Need more speed! Pain of mobile app development. Case: Virittäjät
Need more speed! Pain of mobile app development. Case: VirittäjätNeed more speed! Pain of mobile app development. Case: Virittäjät
Need more speed! Pain of mobile app development. Case: Virittäjät
 
What are the challenges in i os app development
What are the challenges in i os app developmentWhat are the challenges in i os app development
What are the challenges in i os app development
 
Vietnam Mobile Day 2013: App Monetization 4 Secrets to Success
Vietnam Mobile Day 2013: App Monetization 4 Secrets to SuccessVietnam Mobile Day 2013: App Monetization 4 Secrets to Success
Vietnam Mobile Day 2013: App Monetization 4 Secrets to Success
 
[Vietnam Mobile Day 2013] - App monetization - 4 Secrets to success
[Vietnam Mobile Day 2013] - App monetization - 4 Secrets to success[Vietnam Mobile Day 2013] - App monetization - 4 Secrets to success
[Vietnam Mobile Day 2013] - App monetization - 4 Secrets to success
 
Web App VS. Hybrid App VS. Native App?
Web App VS. Hybrid App VS. Native App?Web App VS. Hybrid App VS. Native App?
Web App VS. Hybrid App VS. Native App?
 
Native Application Development Company
Native Application Development CompanyNative Application Development Company
Native Application Development Company
 
UVic Startup Slam September 2014 (Kano Apps)
UVic Startup Slam September 2014 (Kano Apps)UVic Startup Slam September 2014 (Kano Apps)
UVic Startup Slam September 2014 (Kano Apps)
 
Pick Your Poison – Mobile Web, Native or Hybrid?
Pick Your Poison – Mobile Web, Native or Hybrid?Pick Your Poison – Mobile Web, Native or Hybrid?
Pick Your Poison – Mobile Web, Native or Hybrid?
 
Marketing
MarketingMarketing
Marketing
 
[Mobile Monday T7] - 4 Secrets to successful app Monetization
[Mobile Monday T7] - 4 Secrets to successful app Monetization [Mobile Monday T7] - 4 Secrets to successful app Monetization
[Mobile Monday T7] - 4 Secrets to successful app Monetization
 
Mobile Monday 07/2013: App Monetization 4 Secrets to Success
Mobile Monday 07/2013: App Monetization 4 Secrets to SuccessMobile Monday 07/2013: App Monetization 4 Secrets to Success
Mobile Monday 07/2013: App Monetization 4 Secrets to Success
 
Learning salesforce-mobile-way
Learning salesforce-mobile-wayLearning salesforce-mobile-way
Learning salesforce-mobile-way
 
Do You Need a Web App or a Native App?
Do You Need a Web App or a Native App?Do You Need a Web App or a Native App?
Do You Need a Web App or a Native App?
 
Mobile Web vs App
Mobile Web vs AppMobile Web vs App
Mobile Web vs App
 
Hybrid vs Native Mobile App. Decide in 5 minutes!
Hybrid vs Native Mobile App. Decide in 5 minutes!Hybrid vs Native Mobile App. Decide in 5 minutes!
Hybrid vs Native Mobile App. Decide in 5 minutes!
 
Native vs Hybrid - Options to develop your mobile application
Native vs Hybrid - Options to develop your mobile applicationNative vs Hybrid - Options to develop your mobile application
Native vs Hybrid - Options to develop your mobile application
 
Firefox OS Intro
Firefox OS IntroFirefox OS Intro
Firefox OS Intro
 
Mobile app
Mobile appMobile app
Mobile app
 

Andere mochten auch

Stretching - Si o No alla ginnastica più soft del mondo?
Stretching - Si o No alla ginnastica più soft del mondo?Stretching - Si o No alla ginnastica più soft del mondo?
Stretching - Si o No alla ginnastica più soft del mondo?kungfulife
 
Taller1 psicomotricidad
Taller1 psicomotricidadTaller1 psicomotricidad
Taller1 psicomotricidadJessy Clemente
 
Manual la-creatividad-en-el-aula-cvlp-baja
Manual la-creatividad-en-el-aula-cvlp-bajaManual la-creatividad-en-el-aula-cvlp-baja
Manual la-creatividad-en-el-aula-cvlp-bajaJessy Clemente
 
2003 Winter Newsletter
2003 Winter Newsletter2003 Winter Newsletter
2003 Winter NewsletterDirect Relief
 
Hum2220 0915 syllabus
Hum2220 0915 syllabusHum2220 0915 syllabus
Hum2220 0915 syllabusProfWillAdams
 
いつものことご紹介
いつものことご紹介いつものことご紹介
いつものことご紹介Shinichi Yamao
 
Exploring Cloud Credentials for Institutional Use
Exploring Cloud Credentials for Institutional UseExploring Cloud Credentials for Institutional Use
Exploring Cloud Credentials for Institutional UseJeremy Rosenberg
 
2006 Winter Newsletter
2006 Winter Newsletter2006 Winter Newsletter
2006 Winter NewsletterDirect Relief
 
Hum2220 art of the stone age
Hum2220 art of the stone ageHum2220 art of the stone age
Hum2220 art of the stone ageProfWillAdams
 
Виртуализирано видеонаблюдение под FreeBSD
Виртуализирано видеонаблюдение под FreeBSDВиртуализирано видеонаблюдение под FreeBSD
Виртуализирано видеонаблюдение под FreeBSDOpenFest team
 
Hum2220 fa2016 syllabus
Hum2220 fa2016 syllabusHum2220 fa2016 syllabus
Hum2220 fa2016 syllabusProfWillAdams
 
상상지니릴레이
상상지니릴레이상상지니릴레이
상상지니릴레이HaNee Seo
 

Andere mochten auch (20)

Stretching - Si o No alla ginnastica più soft del mondo?
Stretching - Si o No alla ginnastica più soft del mondo?Stretching - Si o No alla ginnastica più soft del mondo?
Stretching - Si o No alla ginnastica più soft del mondo?
 
Actividades
ActividadesActividades
Actividades
 
2 profesorado
2 profesorado2 profesorado
2 profesorado
 
Lectojuegos
LectojuegosLectojuegos
Lectojuegos
 
Taller1 psicomotricidad
Taller1 psicomotricidadTaller1 psicomotricidad
Taller1 psicomotricidad
 
2 alumno
2 alumno2 alumno
2 alumno
 
Folleto odm
Folleto odmFolleto odm
Folleto odm
 
Manual la-creatividad-en-el-aula-cvlp-baja
Manual la-creatividad-en-el-aula-cvlp-bajaManual la-creatividad-en-el-aula-cvlp-baja
Manual la-creatividad-en-el-aula-cvlp-baja
 
2003 Winter Newsletter
2003 Winter Newsletter2003 Winter Newsletter
2003 Winter Newsletter
 
Hum2220 0915 syllabus
Hum2220 0915 syllabusHum2220 0915 syllabus
Hum2220 0915 syllabus
 
ARH2050 Syllabus
ARH2050 SyllabusARH2050 Syllabus
ARH2050 Syllabus
 
いつものことご紹介
いつものことご紹介いつものことご紹介
いつものことご紹介
 
Exploring Cloud Credentials for Institutional Use
Exploring Cloud Credentials for Institutional UseExploring Cloud Credentials for Institutional Use
Exploring Cloud Credentials for Institutional Use
 
2006 Winter Newsletter
2006 Winter Newsletter2006 Winter Newsletter
2006 Winter Newsletter
 
Hum2220 art of the stone age
Hum2220 art of the stone ageHum2220 art of the stone age
Hum2220 art of the stone age
 
Виртуализирано видеонаблюдение под FreeBSD
Виртуализирано видеонаблюдение под FreeBSDВиртуализирано видеонаблюдение под FreeBSD
Виртуализирано видеонаблюдение под FreeBSD
 
Hum2220 fa2016 syllabus
Hum2220 fa2016 syllabusHum2220 fa2016 syllabus
Hum2220 fa2016 syllabus
 
Power point harp seal
Power point harp sealPower point harp seal
Power point harp seal
 
상상지니릴레이
상상지니릴레이상상지니릴레이
상상지니릴레이
 
Websurvey
WebsurveyWebsurvey
Websurvey
 

Ähnlich wie Developing for Windows Phone: A Guide for iOS Developers

iOS & Android Application Development - Pee Dee User Group Meeting
iOS & Android Application Development - Pee Dee User Group MeetingiOS & Android Application Development - Pee Dee User Group Meeting
iOS & Android Application Development - Pee Dee User Group MeetingJim Tochterman
 
Dia 1 intro to mobile and xamarin
Dia 1   intro to mobile and xamarinDia 1   intro to mobile and xamarin
Dia 1 intro to mobile and xamarinHernan Zaldivar
 
Mobile application testing tutorial
Mobile application testing tutorialMobile application testing tutorial
Mobile application testing tutorialLokesh Agrawal
 
Wireless Wednesdays: Part 1
Wireless Wednesdays: Part 1Wireless Wednesdays: Part 1
Wireless Wednesdays: Part 1Teamstudio
 
Why progressive apps for WordPress - WordSesh 2020
Why progressive apps for WordPress - WordSesh 2020Why progressive apps for WordPress - WordSesh 2020
Why progressive apps for WordPress - WordSesh 2020Imran Sayed
 
Responsive Web Design (Microsoft Web & Phone UX Tour 2011)
Responsive Web Design (Microsoft Web & Phone UX Tour 2011)Responsive Web Design (Microsoft Web & Phone UX Tour 2011)
Responsive Web Design (Microsoft Web & Phone UX Tour 2011)Bram Vanderhaeghe
 
Wrangling Apps in the Smartphone Wild West
Wrangling Apps in the Smartphone Wild WestWrangling Apps in the Smartphone Wild West
Wrangling Apps in the Smartphone Wild WestGinsburg Design
 
Developing Enterprise-Grade Mobile Applications
Developing Enterprise-Grade Mobile ApplicationsDeveloping Enterprise-Grade Mobile Applications
Developing Enterprise-Grade Mobile ApplicationsSimon Guest
 
X-Platform native apps in C# and .NET using Xamarin tools (iOS/WP/Android)
X-Platform native apps in C# and .NET using Xamarin tools (iOS/WP/Android)X-Platform native apps in C# and .NET using Xamarin tools (iOS/WP/Android)
X-Platform native apps in C# and .NET using Xamarin tools (iOS/WP/Android)Mark Radacz
 
Get the Jump on Mobilizing your Notes and Domino Applications Today! (JMP103...
Get the Jump on Mobilizing your Notes and Domino Applications Today!  (JMP103...Get the Jump on Mobilizing your Notes and Domino Applications Today!  (JMP103...
Get the Jump on Mobilizing your Notes and Domino Applications Today! (JMP103...Paul Della-Nebbia
 
BP110: The Mobile Distruption - Why XPages Development is targeting Mobile First
BP110: The Mobile Distruption - Why XPages Development is targeting Mobile FirstBP110: The Mobile Distruption - Why XPages Development is targeting Mobile First
BP110: The Mobile Distruption - Why XPages Development is targeting Mobile FirstJohn Head
 
Openmokast: The open broadcasting software stack for mobile devices
Openmokast: The open broadcasting software stack for mobile devicesOpenmokast: The open broadcasting software stack for mobile devices
Openmokast: The open broadcasting software stack for mobile devicesJean-Michel Bouffard
 
Why Progressive Web Apps For WordPress - WordCamp Finland
Why Progressive Web Apps For WordPress - WordCamp FinlandWhy Progressive Web Apps For WordPress - WordCamp Finland
Why Progressive Web Apps For WordPress - WordCamp FinlandImran Sayed
 
HTML5 Can't Do That
HTML5 Can't Do ThatHTML5 Can't Do That
HTML5 Can't Do ThatNathan Smith
 
Drupalcamp New York 2009
Drupalcamp New York 2009Drupalcamp New York 2009
Drupalcamp New York 2009Tom Deryckere
 

Ähnlich wie Developing for Windows Phone: A Guide for iOS Developers (20)

[IJCT-V3I2P36] Authors: Amarbir Singh
[IJCT-V3I2P36] Authors: Amarbir Singh[IJCT-V3I2P36] Authors: Amarbir Singh
[IJCT-V3I2P36] Authors: Amarbir Singh
 
Mobile Application Testing
Mobile Application TestingMobile Application Testing
Mobile Application Testing
 
iOS & Android Application Development - Pee Dee User Group Meeting
iOS & Android Application Development - Pee Dee User Group MeetingiOS & Android Application Development - Pee Dee User Group Meeting
iOS & Android Application Development - Pee Dee User Group Meeting
 
Dia 1 intro to mobile and xamarin
Dia 1   intro to mobile and xamarinDia 1   intro to mobile and xamarin
Dia 1 intro to mobile and xamarin
 
Mobile application testing tutorial
Mobile application testing tutorialMobile application testing tutorial
Mobile application testing tutorial
 
Wireless Wednesdays: Part 1
Wireless Wednesdays: Part 1Wireless Wednesdays: Part 1
Wireless Wednesdays: Part 1
 
Why progressive apps for WordPress - WordSesh 2020
Why progressive apps for WordPress - WordSesh 2020Why progressive apps for WordPress - WordSesh 2020
Why progressive apps for WordPress - WordSesh 2020
 
Responsive Web Design (Microsoft Web & Phone UX Tour 2011)
Responsive Web Design (Microsoft Web & Phone UX Tour 2011)Responsive Web Design (Microsoft Web & Phone UX Tour 2011)
Responsive Web Design (Microsoft Web & Phone UX Tour 2011)
 
Wrangling Apps in the Smartphone Wild West
Wrangling Apps in the Smartphone Wild WestWrangling Apps in the Smartphone Wild West
Wrangling Apps in the Smartphone Wild West
 
Developing Enterprise-Grade Mobile Applications
Developing Enterprise-Grade Mobile ApplicationsDeveloping Enterprise-Grade Mobile Applications
Developing Enterprise-Grade Mobile Applications
 
X-Platform native apps in C# and .NET using Xamarin tools (iOS/WP/Android)
X-Platform native apps in C# and .NET using Xamarin tools (iOS/WP/Android)X-Platform native apps in C# and .NET using Xamarin tools (iOS/WP/Android)
X-Platform native apps in C# and .NET using Xamarin tools (iOS/WP/Android)
 
Introduction to Android
Introduction to AndroidIntroduction to Android
Introduction to Android
 
Get the Jump on Mobilizing your Notes and Domino Applications Today! (JMP103...
Get the Jump on Mobilizing your Notes and Domino Applications Today!  (JMP103...Get the Jump on Mobilizing your Notes and Domino Applications Today!  (JMP103...
Get the Jump on Mobilizing your Notes and Domino Applications Today! (JMP103...
 
BP110: The Mobile Distruption - Why XPages Development is targeting Mobile First
BP110: The Mobile Distruption - Why XPages Development is targeting Mobile FirstBP110: The Mobile Distruption - Why XPages Development is targeting Mobile First
BP110: The Mobile Distruption - Why XPages Development is targeting Mobile First
 
Openmokast: The open broadcasting software stack for mobile devices
Openmokast: The open broadcasting software stack for mobile devicesOpenmokast: The open broadcasting software stack for mobile devices
Openmokast: The open broadcasting software stack for mobile devices
 
Why Progressive Web Apps For WordPress - WordCamp Finland
Why Progressive Web Apps For WordPress - WordCamp FinlandWhy Progressive Web Apps For WordPress - WordCamp Finland
Why Progressive Web Apps For WordPress - WordCamp Finland
 
Firefox OS Presentation
Firefox OS PresentationFirefox OS Presentation
Firefox OS Presentation
 
HTML5 Can't Do That
HTML5 Can't Do ThatHTML5 Can't Do That
HTML5 Can't Do That
 
Drupalcamp New York 2009
Drupalcamp New York 2009Drupalcamp New York 2009
Drupalcamp New York 2009
 
Responsive design
Responsive designResponsive design
Responsive design
 

Kürzlich hochgeladen

How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsRoshan Dwivedi
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 

Kürzlich hochgeladen (20)

How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 

Developing for Windows Phone: A Guide for iOS Developers

  • 1. Photo: phoneArena.com Developing for Windows Phone: a Guide for iOS Developers MICROSOFT CAMPUS MOUNTAIN VIEW, CA MARCH 18, 2013 3.18.2013 - WWW.QUBOP.COM
  • 2. Hello! Evan Kirchhoff, CTO evan@qubop.com Twitter: @theevank www.qubop.com Twitter: @qubopinc 3.18.2013 - WWW.QUBOP.COM
  • 3. About Qubop Inc. Qubop is a mobile app design, development and consulting company, originally founded as a digital agency in 2002. Current clients include interactive agencies, consumer brands, healthcare firms, Fortune 500 companies and early-stage startups. Company principals have worked in mobile for over 10 years, and have deep knowledge of the industry and platform landscape. Qubop has strong in-house native development teams for both iOS and Android. We have successfully designed and shipped dozens of mobile apps, providing end-to-end solutions from the earliest discovery phases to full application programming and maintenance. Our own apps have been featured by Apple in the iTunes stores in the US, Canada and Japan, by Barnes & Noble in the Nook Shop, and by Amazon in the Appstore for Android. We have also created apps for Windows Phone, and are currently porting apps to BlackBerry 10. 3.18.2013 - WWW.QUBOP.COM WWW.QUBOP.COM
  • 4. Developing for Windows Phone: a Guide for iOS Developers 1. Setting up your Mac 2. Configuring your environment 3. Porting iOS apps to Windows Phone 4. The Microsoft mobile toolchain 3.18.2013 - WWW.QUBOP.COM
  • 5. Possibly the best Windows laptop on the market* X (Difficult to run WP simulator) ✓ Use BootCamp: Applications/Utilities/ Boot Camp Assistant.app * Although not exactly the cheapest 3.18.2013 - WWW.QUBOP.COM
  • 6. As of last week, Windows 8 finally supported on Macs (Mountain Lion only) 3.18.2013 - WWW.QUBOP.COM
  • 7. Dual-booting Windows on Mac: Recommended Setup 100GB MINIMUM PARTITION SIZE INSTALL UTILITIES FOR: Reading foreign filesystems Partition handling OPTICAL Tweaking Mac hardware behavior in Windows DRIVE MAKES LIFE EASIER Also join Microsoft’s BizSpark Program! 3.18.2013 - WWW.QUBOP.COM
  • 8. Join BizSpark for free OS licenses and dev tools: http://www.microsoft.com/bizspark 3.18.2013 - WWW.QUBOP.COM (Must be less than 5 years old, less than $1M annual revenue)
  • 9. Developing for Windows Phone: a Guide for iOS Developers 1. Setting up your Mac 2. Configuring your environment 3. Porting iOS apps to Windows Phone 4. The Microsoft mobile toolchain 3.18.2013 - WWW.QUBOP.COM
  • 10. Recommended: http://www.paragon-software.com/home/ntfs-hfs-bundle/ 3.18.2013 - WWW.QUBOP.COM
  • 11. “Oops, I made my Windows partition too small!” http://www.paragon-software.com/home/camptune/ 3.18.2013 - WWW.QUBOP.COM
  • 12. Recommended: install Trackpad++ http://trackpad.powerplan7.com 3.18.2013 - WWW.QUBOP.COM speed, multitouch gestures and Lion-style reverse scrolling in Windows on MacBook) (Fix pointer
  • 13. Remap Mac keyboard (in Windows mode) to avoid motor-memory madness SUGGESTION: SWAP ALT AND COMMAND KEYS IN WINDOWS, SO (CMD-TAB) SWITCHES APPS ON BOTH PLATFORMS 3.18.2013 - WWW.QUBOP.COM
  • 14. Or just go buy a dedicated Windows PC for development (They’re inexpensive!) 3.18.2013 - WWW.QUBOP.COM
  • 15. Developing for Windows Phone: a Guide for iOS Developers 1. Setting up your Mac 2. Configuring your environment 3. Porting iOS apps to Windows Phone 4. The Microsoft mobile toolchain 3.18.2013 - WWW.QUBOP.COM
  • 18. Replicating the iOS UIPickerView control (XAML portion) 3.18.2013 - WWW.QUBOP.COM
  • 19. Replicating the iOS UIPickerView control (C# portion) 3.18.2013 - WWW.QUBOP.COM
  • 20. MOBIMILEAGE (IPHONE) (Popular, but could not port to WP7, due to requirement for constant background GPS updates) 3.18.2013 - WWW.QUBOP.COM
  • 21. Now possible in Windows Phone 8! MOBIMILEAGE (WINDOWS PHONE 8) 3.18.2013 - WWW.QUBOP.COM
  • 22. Don’t replicate iOS/Android UI FOURSQUARE (IOS) FOURSQUARE (ANDROID) FOURSQUARE (WINDOWS PHONE) 3.18.2013 - WWW.QUBOP.COM
  • 23. The Panorama Control 24px “peek” 3.18.2013 - WWW.QUBOP.COM
  • 24. Panorama = Tab Bar (iOS) or Action Bar (Android) WINDOWS PHONE IOS ANDROID 3.18.2013 - WWW.QUBOP.COM
  • 25. Pivot = Segmented Control (iOS) WINDOWS MAIL 3.18.2013 - WWW.QUBOP.COM
  • 26. “Application Bar” = Toolbar (iOS) + Menu Button (Android) + 3.18.2013 - WWW.QUBOP.COM
  • 27. Don’t nest draggable elements inside a draggable screen Top-level Drill-down map is map responds non-draggable, to drag, pinch/ only clickable: zoom gestures Use hardware back button, 3.18.2013 - WWW.QUBOP.COM not in-app back navigation
  • 28. Take the Back Button Seriously DO NOT ADD YOUR OWN BACK BUTTONS WITHIN YOUR APP USE HARDWARE BACK BUTTON TO CLOSE DIALOGS, DISMISS KEYBOARD DO NOT USE THE BACK BUTTON TO MOVE SIDEWAYS IN PIVOT/PANORAMA 3.18.2013 - WWW.QUBOP.COM
  • 29. Remember that the platforms are divided differently “PC” “MOBILE” 3.18.2013 - WWW.QUBOP.COM
  • 30. Developing for Windows Phone: a Guide for iOS Developers 1. Setting up your Mac 2. Configuring your environment 3. Porting iOS apps to Windows Phone 4. The Microsoft mobile toolchain 3.18.2013 - WWW.QUBOP.COM
  • 31. What to expect if coming from iOS to Windows Phone • More rapid development Up to 4:1* advantage in time and code size vs. iOS • Apps are prettier by default Beautiful layouts & parallax scrolling built into stock templates • Typically less custom UI work Platform assumes high UI standardization across apps * For apps where code is heavily UI-based 3.18.2013 - WWW.QUBOP.COM
  • 32. 4500 LINES OF CODE 900 LINES OF CODE 3.18.2013 - WWW.QUBOP.COM
  • 33. Visual Studio: project templates for Windows Phone design patterns 3.18.2013 - WWW.QUBOP.COM
  • 34. Visual Studio: substantial code automatically generated with app templates 3.18.2013 - WWW.QUBOP.COM
  • 35. WP8 = 3 screen sizes, WP7 = 1 screen size (“Emulator 7.1”) Overall development experience: more like iOS than Android 3.18.2013 - WWW.QUBOP.COM
  • 36. Thanks! Evan Kirchhoff, CTO evan@qubop.com Twitter: @theevank www.qubop.com Twitter: @qubopinc 3.18.2013 - WWW.QUBOP.COM