Presentation from Andy Wigley, Microsoft on Windows Phone 8 Development- presented at Microsoft want to show you how Windows 8 and Windows Phone 8 are the perfect platform for you to build your next app! Event At Portsmouth University http://blogs.msdn.com/b/uk_faculty_connection/archive/2013/03/21/microsoft-want-to-show-you-how-windows-8-and-windows-phone-8-are-the-perfect-platform-for-you-to-build-your-next-app.aspx
5. New multicore chipset
New graphics processor
Increased RAM: 1GB or 512MB
More Screen resolutions
Removable, encryptable storage
NFC
Modern Smartphone Platform
6. Windows 8 and Windows Phone 8 Share Many Components At The Operating System Level
Shared Windows Core
Windows KernelWindows KernelWindows NT Kernel
OS Modules
7.
8. • The Windows Phone Developer Center is your base for all things Windows Phone related!
• In Windows Phone 7.x, used to be called AppHub and was at http://create.msdn.com
• Now, at http://dev.windowsphone.com
• Get the SDK - FREE download!
• Read articles, browse and download samples and participate in the community forums
• Submit apps for testing and publication to the Windows Phone Store
Getting The Tools
10. • Your computer must meet the following system requirements to run
Windows Phone SDK 8.0:
Development PC Requirements
Supported operating systems Windows 8 64-bit (x64) client versions
Hardware
8 GB of free disk space
4 GB of RAM (recommended)
64-bit (x64) motherboard
Windows Phone Emulator
Windows 8 Pro or higher (for Hyper-V) and
Second Level Address Translation (SLAT)
11. • You do not need a Windows Phone Developer account to download the SDK and start developing apps
• You do need a developer account to unlock a phone for development and to submit apps for testing
and publication in the Windows Phone Store (formerly known as Windows Phone Marketplace)
• To get a Developer Account:
• Included if you have an MSDN subscription
• Free to students who have a Dreamspark subscription
• $99 charge per annum for individual developers
• Register for an account at the Windows Phone Developer Center http://dev.windowsphone.com
Getting a Windows Phone Developer Account
12.
13. • Windows Phone 8 supports
• Managed app dev using the
WP7.1, WP8.0 .NET and
Windows Phone Runtime APIs
• Native app dev using WinPRT
and Win32
• Games dev using the WP7.1
XNA framework
• Games dev using Direct3D or
DirectX
Windows Phone 8 Programming APIs
.NET API for
Windows
Phone
Windows
Phone
Runtime
Win32 &
COM
Managed Managed &
Native
Native
WP7.1 XAML & C#/VB
WP8.0 XAML & C#/VB
WP8.0 Games DirectX/Direct 3D & C++
WP7.1 XNA & C#/VB
WP8.0 XAML & C#/VB with Direct3D Graphics
+ C++
+ C++
14.
15. Tile Templates and Tile Sizes
•Windows Phone 8 supports three
Tile templates
•Flip – flips from front to back
(similar to the WP 7.1 Tile template)
•Iconic – clean iconic layout designed
to reflect Windows Phone design
principles
•Cycle – cycles through up to
nine images
16. • You can register your app as a lock screen
provider, which enables:
• User can select your app to show
detailed status on the lock screen
• Can select your app as one of the
five apps to show quick status (icon
and count)
• Can select your app as the lock screen
background image provider
Lock Screen on Windows Phone 8
17. • Windows Phone 8 has new Maps controls
• Bing Maps control from Windows Phone OS 7.1 is still supported, but deprecated
• The new Maps controls use technology supplied by Nokia
• New features:
• Vector-based for faster rendering
• Four cartographic map modes
• Light and dark color modes
• Display landmark and pedestrian features
Maps
18. • New Location API in the Windows Phone Runtime API set
• Similar to Windows 8 Location API
• Windows Phone OS 7.1 .NET Location API still supported
• Background location-tracking apps
• Run continuously in the background when the user
navigates away from the app
• Enables scenarios such as Run Trackers, turn-by-
turn navigation
Location and Location Tracking
19. • Windows Phone 8 allows you to enable users to robustly interact
with your app using their voice
• Two types of voice interaction are new:
• Voice Commands - Allows users to deep-link into your app by
holding down the Start button and speaking a prefix you
specify for your app, followed by a command that you define.
• Speech Recognition and Text-to-Speech APIs - While in the
context of your app, allow users to provide input using their
voice, and readout text to users via text-to-speech
Speech
21. • Create apps that communicate with other phones using Bluetooth technology
• Bluetooth API enables the following scenarios for Windows Phone 8:
• App-to-app communication
• App-to-device communication
• Proximity API enables:
• App-to-app connection using Bluetooth technology
• Establish a Wi-Fi, Bluetooth, or Wi-Fi Direct connection between your app and an
instance of your app on a proximate device
• Send data between devices using NFC.
• Use a phone to interact with NFC tags
Bluetooth and NFC
23. • App can register a File Association
• Automatically launch your app when a file of the registered type is
received as an email attachment or opened in the browser, or through
Sharepoint
• One app can launch another by sending it a file of the registered type
• App can register a protocol
• Allows your app to automatically launch when another app ‘opens’ a
special URI
• Protocol is the first part of a URI, e.g.
myprotocol:/ShowProducts?CategoryID=aea6ae1f
• App launches another and passes it data in the remainder of the
launch URI
File and Protocol Associations
Enables App to App Communication
24. In-App Purchase used for digital content
Durables: buy once & own forever,
e.g. new game levels, maps, game items
Consumables: game currency, movie
rentals, access to digital magazines for 6
months, etc.
Offer digital assets
26. 26 New
Languages: 50 languages
Windows Phone 7.5
24 Languages
Windows Phone 8
50 Languages
27. • Managed Apps are NGEN’d for you (compiled to native) in the Windows Phone Store in
Windows Phone 8, so typically start and run faster
• When you build your app in Visual Studio, the code is not compiled into a native image,
but into a machine-independent Common Intermediate Language (CIL) binary file
(formerly known as Microsoft Intermediate Language, or MSIL)
• When you submit your app to the Windows Phone Store, you submit the CIL file
• On submission, CIL file is converted to optimized Machine Dependent Intermediate
Language, or MDIL
• When a user downloads your app to a device, it is pre-jitted to a native image
Windows Phone 8 Apps Run Faster
31. • The Windows Phone Store is the only way you can get executable content onto a “public”
phone
• Enterprises can register with Microsoft to allow them to distribute applications to
devices that have been enrolled into their Enterprise
• Users can buy applications and deploy them onto their devices
• Developers can write applications and deploy them to their own devices for testing
• Registered developers can use up to 3 devices
• Student developers can use one device
Windows Phone Store Rules
32. • Register to be a publisher in the Windows Phone Store for $99 per year
• Students can register for free via Dreamspark
• Registered developers can submit applications for approval in the Windows Phone Store
• Windows Phone dev account members have their identity validated when they join and
are allocated a unique digital signature to sign their Windows Phone Store submissions
• Join at: http://dev.windowsphone.com
Joining the Store
33. • Developers can set a price for an application or give it away free
• Developers receive 70% of the price paid for the application
• Payment starts once the developer has earned up to $200
• The payment is made by bank transfer
• All payments are from the USA, which can cause some issues
• Very good support on the developers site and the Windows Phone Forums for this
Payment
34. • Developers are limited in the number of free applications they can make available
• Only 100 (!) free app submissions per developer per year
• Can make additional free application submissions at an extra cost of $20 per submission
• Developers can publish as many paid applications as they like
• Number of apps any one developer can have certified in a single day is limited to 20
• Avoids bulk publishing flooding the market
Free and Paid Applications
35. • Applications can be free or paid
• Developers can also allow customers to use an application in “try before buy” mode
• Your application can determine which mode it is running in by calling a status API
• Applications sold on a “try before buy” basis don’t show up as Free Applications
• This may reduce the number of people who will download it
• Some people only browse the free lists
“Try before Buy” mode
36. • It is easy for an application to determine whether it is running in Trial mode
• But remember that a paid application with Trial Mode will not show up as free in the
Windows Phone Store
• It might be more effective to also distribute a free “lite” version of your application
which can be upgraded by an in-application purchase
Detecting Trial Mode
using Microsoft.Phone.Marketplace;
LicenseInformation info = new LicenseInformation();
if ( info.IsTrial() )
{
// running in trial mode
}
37. • Windows 8 allows you to sell upgrades and additional features to users from within your application
• There are two kinds of purchase
• Durables are bought once
• They can be used to activate program features or game levels
• Consumables can be purchased repeatedly
• They can be used to buy any resources (access time, in game currency) that will expire and must be
replaced
• Apps can be sold as a Free app or at a low initial purchase price but offer reduced functionality, and
then use in-app purchase to allow the user to buy access to additional features
In-Application Sales
38. • The Advertising SDK is distributed as part of the Windows 8 SDK
• You need to add the assembly to any project that wants to include adverts
In-App Advertising
39. • Very easy to incorporate ads into applications
• The Ad-Control SDK provides the adControl that can put adverts onto your application
• The AdManager can be added to XNA games
• Players can click through an advertisement to a web site or call the advertiser from within
your game
• Advertisements are specifically targeted at each player demographic
• You get 70% of the revenue
Adding Advertisements to Applications
AdControl adControl = new AdControl("test_client", // ApplicationID
"Image480_80", // AdUnitID
true); // isAutoRefreshEnabled
40. Microsoft pubCenter
• Sign up here so that you can incorporate ads in your games http://pubcenter.microsoft.com
41.
42. • When you submit your application for validation the Microsoft app validation
service performs a number of automated tests
• Checks if the application makes use of any capabilities that were not specified
• Checks for any unmanaged or disallowed libraries
• Ensures that all the required assets are provided
• Then the application is manually tested to ensure proper behaviour in a
number of scenarios
• Proper dormant/tombstone behaviour
Application Validation
43. • The testing process takes a few days and generates a testing report that you can use
to fix the problems
• This will include specific feedback on the issues that were identified
• When the application is resubmitted the retest will focus only on those parts of the
application that have changed
Validation Results
44. Private Beta Testing
• Apps can be submitted for Private Beta testing
• You can send invitation emails to up to 10,000 testers who will receive a deep link
to the beta application
• They have 90 days to test your application and give you feedback
45
45. • When you submit an application, you have the option of making it
‘Hidden’
• It will not appear in any Windows Phone Store listings or searches
• It is still verified and certified and published in the same way
• You can still link to the app – if you know the link
• You can create a dashboard app to distribute to your user community
which allows them to discover and install the hidden apps
• Keeps the link to the app in the Store undisclosed
• Safer than insecure ways of communicating the App location by email
or messaging
• Lightweight alterative to full Enterprise Distribution
Private Distribution
46. Windows Phone Applications in the Enterprise
• Windows 8 allows enterprises to configure enterprise wide application distribution
• The enterprise can create and distribute Windows Phone applications without requiring
them to be approved by the Microsoft Windows Store
• User phones can either be managed or unmanaged
• Very high level of control over a managed phone
• An unmanaged phone can be used in a “Bring Your Own Device” mode
• An Enterprise can create its own Application Hub which can be made available on
managed devices
47. Company Hub Example
• Microsoft have created an internal Company hub that provides corporate information
alongside other information
48.
49. 10 Tips to Make More Money (1/2)
1. Use Trial API 70x More Downloads, 7x More Revenue
2. Use Live Tile Top 50 apps are 3.7x more likely to have
50. 10 Tips to Make More Money Today (2/2)
6. Publish Globally Fastest growth occurring in new markets
7. Localize Smartly Language, currency, symbols
51.
52. Building Apps for Windows Phone 8 Jump Start
This course is tailored for developers looking to leverage C#/XAML to build cool apps and games for Windows Phone 8.
This platform is another leap forward in Microsoft’s overall mobile strategy and the developer community has taken notice.
Now is the time to embrace your opportunity and start building Windows Phone apps.
This fast-paced, demo-rich online course features two mobile development thought leaders as presenters: Andy Wigley, a
sought-after mobile app developer and co-author of three best-selling books on mobile application development and
Rob Tiffany, mobile strategist, author, and speaker for Microsoft.
If you’re a developer or architect who needs to move beyond the hype and come face-to-face with what’s real, you will
love this experience.
http://aka.ms/wp8-jumpstart
or
https://www.microsoftvirtualacademy.com/tracks/building-apps-
for-windows-phone-8-jump-start?o=2070&ct=14352