SlideShare a Scribd company logo
LUMIA APP LABS #6
USING THE NOKIA
MUSIC WINDOWS
PHONE APIS
Steve Robbins
Chief Architect
Nokia Music
AGENDA
What is Nokia Music?

Nokia Music Windows Phone App-to-App APIs.

Using the Nokia Music REST API to add music data to your app.
NOKIA MUSIC
Instant free music streaming
on Lumia Windows Phones

100s of curated mixes
Create your own artist mixes
Offline caching
Graphic Equalizer
No login, no ads
Gig Finder for live concerts
NOKIA MUSIC APP-TO-APP APIS

               Nokia Music 3.5 for Windows Phone 8
               added App-to-App APIs

               In the Windows Phone Store now!
APP-TO-APP APIS

App-to-App protocols allow one
app to launch another with a
specific URI scheme.

Launcher.LaunchUriAsync(
"nokia-music://show/artist/?name=
Rihanna")
NOKIA MUSIC APP-TO-APP APIS
Launch App                             nokia-music://
Search MP3 store                       nokia-music://search/anything/?term={term}
Show Artist Details                    nokia-music://show/artist/?name={name}
Play an Artist Mix                     nokia-music://play/artist/?artist={name}
Show Gigs Around You                   nokia-music://show/gigs/
Search for Gigs                        nokia-music://search/gigs/?term={term}
Show Curated Mixes                     nokia-music://show/mixes/
Play a Curated Mix                     nokia-music://play/mix/?id={id}
Show Product Details – e.g. an album   nokia-music://show/product/?id={id}
DEMOS
Create App that Launches Nokia Music

Extend App to search for music
APP-TO-APP AND NFC
ProximityDevice device = ProximityDevice.GetDefault();
if (device != null) {
 device.PublishBinaryMessage("WindowsUri:WriteTag",
   GetBufferFromUrl("nokia-music://play/mix/?id=35541874"),
   UnregisterUponSend);
 MessageBox.Show("Tap NFC tag to write link");
}

See http://nokia.ly/nfcslides
USING APP-TO-APP TO MAKE
LAUNCHER TASKS
new ShowArtistTask() {
 ArtistName = "Green Day"
}.Show();
WEB FALL-BACK
void Launch(Uri appToAppUri, Uri webFallbackUri)
{
  #if WINDOWSPHONE8
  if (IsNokiaDevice())
  {
    Launcher.LaunchUriAsync(appToAppUri);
    return;
  }
  #endif
  WebBrowserTask web = new WebBrowserTask();
  web.Uri = webFallbackUri;
  web.Show();
}
NOKIA MUSIC LAUNCHER TASKS
Launch App                                new LaunchTask().Show();

                                          new MusicSearchTask() {
Search MP3 store                                SearchTerms = "Rihanna"
                                          }.Show();
                                          new ShowArtistTask() {
Show Artist Details                               ArtistName = "Green Day”
                                          }.Show();
                                          new PlayMixTask() {
Play an Artist or Curated Mix                 ArtistName = "Green Day"
                                          }.Show();
Show Gigs Around You or Search for Gigs   new ShowGigsTask().Show();
Show Curated Mixes                        new ShowMixesTask().Show();
DEMOS
API installation with NuGet

Replace URI-based App-to-App with MusicSearchTask

Take an existing Location-based app and add “Gigs Near You” feature
NOKIA MUSIC WINDOWS PHONE API
Makes it easy for you to integrate music
data into your app.
MusicClientAsync client = new
MusicClientAsync(AppId, AppCode);
var artists =
   await client.GetTopArtists();
list.ItemsSource = artists.Result;
// when user selects artist...
artist.PlayMix();
NOKIA MUSIC WINDOWS PHONE API
Search Nokia Music            var items = await client.Search("Green Day");
Search Artist By Location     var a = await client.GetArtistsAroundLocation(51.45,-2.6);
Gets available genres         var genres = await client.GetGenres();
Gets top artists for a genre var artists = await client.GetTopArtistsForGenre(myGenre);
Gets charts                   var albums = await client.GetTopProducts(Category.Album);
Gets a list of new releases   var tracks = await client.GetNewReleases(Category.Track);
Gets the top artists          var artists = await client.GetTopArtists();
Gets products by an artist    var products = await client.GetArtistProducts(myArtist);
Gets similar artists          var artists = await client.GetSimilarArtists(myArtist);
Gets available Mix Groups     var mixGroups = await client.GetMixGroups();
Gets Mixes for a group        var mixes = await client.GetMixes(myMixGroup);
DEMOS
Sign up for API Keys

Create application to show artists on map
SUMMARY
Source and examples: http://nokia.ly/wpmusicapi

Contact @sr_gb or steve.robbins@nokia.com

More Related Content

More from Microsoft Mobile Developer

Location based services for Nokia X and Nokia Asha using Geo2tag
Location based services for Nokia X and Nokia Asha using Geo2tagLocation based services for Nokia X and Nokia Asha using Geo2tag
Location based services for Nokia X and Nokia Asha using Geo2tag
Microsoft Mobile Developer
 
HERE Maps for the Nokia X platform
HERE Maps for the Nokia X platformHERE Maps for the Nokia X platform
HERE Maps for the Nokia X platform
Microsoft Mobile Developer
 
Nokia In-App Payment - UX considerations
Nokia In-App Payment - UX considerationsNokia In-App Payment - UX considerations
Nokia In-App Payment - UX considerations
Microsoft Mobile Developer
 
Introduction to Nokia Asha SDK 1.2 (beta)
Introduction to Nokia Asha SDK 1.2 (beta)Introduction to Nokia Asha SDK 1.2 (beta)
Introduction to Nokia Asha SDK 1.2 (beta)
Microsoft Mobile Developer
 
UX considerations when porting to Nokia X
UX considerations when porting to Nokia XUX considerations when porting to Nokia X
UX considerations when porting to Nokia X
Microsoft Mobile Developer
 
Kids' games and educational app design
Kids' games and educational app designKids' games and educational app design
Kids' games and educational app design
Microsoft Mobile Developer
 
Nokia X: opportunities for developers
Nokia X: opportunities for developersNokia X: opportunities for developers
Nokia X: opportunities for developers
Microsoft Mobile Developer
 
Lumia App Labs: Nokia Imaging SDK 1.1
Lumia App Labs: Nokia Imaging SDK 1.1Lumia App Labs: Nokia Imaging SDK 1.1
Lumia App Labs: Nokia Imaging SDK 1.1
Microsoft Mobile Developer
 
Intro to Nokia X software platform and tools
Intro to Nokia X software platform and toolsIntro to Nokia X software platform and tools
Intro to Nokia X software platform and tools
Microsoft Mobile Developer
 
Lumia App Labs: Lessons learned from 50 windows phone 8 design consultations
Lumia App Labs: Lessons learned from 50 windows phone 8 design consultationsLumia App Labs: Lessons learned from 50 windows phone 8 design consultations
Lumia App Labs: Lessons learned from 50 windows phone 8 design consultations
Microsoft Mobile Developer
 
Windows Phone 8 speech: parliamo con la nostra app
Windows Phone 8 speech: parliamo con la nostra appWindows Phone 8 speech: parliamo con la nostra app
Windows Phone 8 speech: parliamo con la nostra app
Microsoft Mobile Developer
 
La pubblicazione di un'applicazione sullo store
La pubblicazione di un'applicazione sullo storeLa pubblicazione di un'applicazione sullo store
La pubblicazione di un'applicazione sullo store
Microsoft Mobile Developer
 
Il pattern mvvm come strutturare al meglio il vostro progetto
Il pattern mvvm come strutturare al meglio il vostro progettoIl pattern mvvm come strutturare al meglio il vostro progetto
Il pattern mvvm come strutturare al meglio il vostro progetto
Microsoft Mobile Developer
 
Lens app trasformare il telefono in una fotocamera
Lens app trasformare il telefono in una fotocameraLens app trasformare il telefono in una fotocamera
Lens app trasformare il telefono in una fotocamera
Microsoft Mobile Developer
 
NFC, Bluetooth e comunicazione tra app
NFC, Bluetooth e comunicazione tra appNFC, Bluetooth e comunicazione tra app
NFC, Bluetooth e comunicazione tra app
Microsoft Mobile Developer
 
Nokia Asha webinar: Developing health-care applications for Nokia Asha phones
Nokia Asha webinar: Developing health-care applications for Nokia Asha phonesNokia Asha webinar: Developing health-care applications for Nokia Asha phones
Nokia Asha webinar: Developing health-care applications for Nokia Asha phones
Microsoft Mobile Developer
 
Connettersi al Cloud Azure Mobile Services
Connettersi al Cloud Azure Mobile ServicesConnettersi al Cloud Azure Mobile Services
Connettersi al Cloud Azure Mobile Services
Microsoft Mobile Developer
 
Nokia Asha webinar: Add VoIP services to your Nokia Asha apps
Nokia Asha webinar: Add VoIP services to your Nokia Asha appsNokia Asha webinar: Add VoIP services to your Nokia Asha apps
Nokia Asha webinar: Add VoIP services to your Nokia Asha apps
Microsoft Mobile Developer
 
LUMIA APP LABS #18: INTRODUCING NOKIA IMAGING SDK 1.0
LUMIA APP LABS #18: INTRODUCING NOKIA IMAGING SDK 1.0LUMIA APP LABS #18: INTRODUCING NOKIA IMAGING SDK 1.0
LUMIA APP LABS #18: INTRODUCING NOKIA IMAGING SDK 1.0
Microsoft Mobile Developer
 
Nokia Asha webinar: Developing location-based services for Nokia Asha phones ...
Nokia Asha webinar: Developing location-based services for Nokia Asha phones ...Nokia Asha webinar: Developing location-based services for Nokia Asha phones ...
Nokia Asha webinar: Developing location-based services for Nokia Asha phones ...
Microsoft Mobile Developer
 

More from Microsoft Mobile Developer (20)

Location based services for Nokia X and Nokia Asha using Geo2tag
Location based services for Nokia X and Nokia Asha using Geo2tagLocation based services for Nokia X and Nokia Asha using Geo2tag
Location based services for Nokia X and Nokia Asha using Geo2tag
 
HERE Maps for the Nokia X platform
HERE Maps for the Nokia X platformHERE Maps for the Nokia X platform
HERE Maps for the Nokia X platform
 
Nokia In-App Payment - UX considerations
Nokia In-App Payment - UX considerationsNokia In-App Payment - UX considerations
Nokia In-App Payment - UX considerations
 
Introduction to Nokia Asha SDK 1.2 (beta)
Introduction to Nokia Asha SDK 1.2 (beta)Introduction to Nokia Asha SDK 1.2 (beta)
Introduction to Nokia Asha SDK 1.2 (beta)
 
UX considerations when porting to Nokia X
UX considerations when porting to Nokia XUX considerations when porting to Nokia X
UX considerations when porting to Nokia X
 
Kids' games and educational app design
Kids' games and educational app designKids' games and educational app design
Kids' games and educational app design
 
Nokia X: opportunities for developers
Nokia X: opportunities for developersNokia X: opportunities for developers
Nokia X: opportunities for developers
 
Lumia App Labs: Nokia Imaging SDK 1.1
Lumia App Labs: Nokia Imaging SDK 1.1Lumia App Labs: Nokia Imaging SDK 1.1
Lumia App Labs: Nokia Imaging SDK 1.1
 
Intro to Nokia X software platform and tools
Intro to Nokia X software platform and toolsIntro to Nokia X software platform and tools
Intro to Nokia X software platform and tools
 
Lumia App Labs: Lessons learned from 50 windows phone 8 design consultations
Lumia App Labs: Lessons learned from 50 windows phone 8 design consultationsLumia App Labs: Lessons learned from 50 windows phone 8 design consultations
Lumia App Labs: Lessons learned from 50 windows phone 8 design consultations
 
Windows Phone 8 speech: parliamo con la nostra app
Windows Phone 8 speech: parliamo con la nostra appWindows Phone 8 speech: parliamo con la nostra app
Windows Phone 8 speech: parliamo con la nostra app
 
La pubblicazione di un'applicazione sullo store
La pubblicazione di un'applicazione sullo storeLa pubblicazione di un'applicazione sullo store
La pubblicazione di un'applicazione sullo store
 
Il pattern mvvm come strutturare al meglio il vostro progetto
Il pattern mvvm come strutturare al meglio il vostro progettoIl pattern mvvm come strutturare al meglio il vostro progetto
Il pattern mvvm come strutturare al meglio il vostro progetto
 
Lens app trasformare il telefono in una fotocamera
Lens app trasformare il telefono in una fotocameraLens app trasformare il telefono in una fotocamera
Lens app trasformare il telefono in una fotocamera
 
NFC, Bluetooth e comunicazione tra app
NFC, Bluetooth e comunicazione tra appNFC, Bluetooth e comunicazione tra app
NFC, Bluetooth e comunicazione tra app
 
Nokia Asha webinar: Developing health-care applications for Nokia Asha phones
Nokia Asha webinar: Developing health-care applications for Nokia Asha phonesNokia Asha webinar: Developing health-care applications for Nokia Asha phones
Nokia Asha webinar: Developing health-care applications for Nokia Asha phones
 
Connettersi al Cloud Azure Mobile Services
Connettersi al Cloud Azure Mobile ServicesConnettersi al Cloud Azure Mobile Services
Connettersi al Cloud Azure Mobile Services
 
Nokia Asha webinar: Add VoIP services to your Nokia Asha apps
Nokia Asha webinar: Add VoIP services to your Nokia Asha appsNokia Asha webinar: Add VoIP services to your Nokia Asha apps
Nokia Asha webinar: Add VoIP services to your Nokia Asha apps
 
LUMIA APP LABS #18: INTRODUCING NOKIA IMAGING SDK 1.0
LUMIA APP LABS #18: INTRODUCING NOKIA IMAGING SDK 1.0LUMIA APP LABS #18: INTRODUCING NOKIA IMAGING SDK 1.0
LUMIA APP LABS #18: INTRODUCING NOKIA IMAGING SDK 1.0
 
Nokia Asha webinar: Developing location-based services for Nokia Asha phones ...
Nokia Asha webinar: Developing location-based services for Nokia Asha phones ...Nokia Asha webinar: Developing location-based services for Nokia Asha phones ...
Nokia Asha webinar: Developing location-based services for Nokia Asha phones ...
 

Recently uploaded

5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides
DanBrown980551
 
Building Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and MilvusBuilding Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and Milvus
Zilliz
 
WeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation TechniquesWeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation Techniques
Postman
 
Taking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdfTaking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdf
ssuserfac0301
 
Serial Arm Control in Real Time Presentation
Serial Arm Control in Real Time PresentationSerial Arm Control in Real Time Presentation
Serial Arm Control in Real Time Presentation
tolgahangng
 
Mariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceXMariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceX
Mariano Tinti
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Malak Abu Hammad
 
Skybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoptionSkybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoption
Tatiana Kojar
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
Octavian Nadolu
 
Webinar: Designing a schema for a Data Warehouse
Webinar: Designing a schema for a Data WarehouseWebinar: Designing a schema for a Data Warehouse
Webinar: Designing a schema for a Data Warehouse
Federico Razzoli
 
Project Management Semester Long Project - Acuity
Project Management Semester Long Project - AcuityProject Management Semester Long Project - Acuity
Project Management Semester Long Project - Acuity
jpupo2018
 
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdfHow to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
Chart Kalyan
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
Zilliz
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
Jason Packer
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
DianaGray10
 
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success StoryDriving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Safe Software
 
Recommendation System using RAG Architecture
Recommendation System using RAG ArchitectureRecommendation System using RAG Architecture
Recommendation System using RAG Architecture
fredae14
 
GenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizationsGenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizations
kumardaparthi1024
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
Edge AI and Vision Alliance
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
Quotidiano Piemontese
 

Recently uploaded (20)

5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides
 
Building Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and MilvusBuilding Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and Milvus
 
WeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation TechniquesWeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation Techniques
 
Taking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdfTaking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdf
 
Serial Arm Control in Real Time Presentation
Serial Arm Control in Real Time PresentationSerial Arm Control in Real Time Presentation
Serial Arm Control in Real Time Presentation
 
Mariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceXMariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceX
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
 
Skybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoptionSkybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoption
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
 
Webinar: Designing a schema for a Data Warehouse
Webinar: Designing a schema for a Data WarehouseWebinar: Designing a schema for a Data Warehouse
Webinar: Designing a schema for a Data Warehouse
 
Project Management Semester Long Project - Acuity
Project Management Semester Long Project - AcuityProject Management Semester Long Project - Acuity
Project Management Semester Long Project - Acuity
 
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdfHow to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
 
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success StoryDriving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success Story
 
Recommendation System using RAG Architecture
Recommendation System using RAG ArchitectureRecommendation System using RAG Architecture
Recommendation System using RAG Architecture
 
GenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizationsGenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizations
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
 

LUMIA APP LAB: USING THE NOKIA MUSIC WINDOWS PHONE API

  • 1. LUMIA APP LABS #6 USING THE NOKIA MUSIC WINDOWS PHONE APIS Steve Robbins Chief Architect Nokia Music
  • 2. AGENDA What is Nokia Music? Nokia Music Windows Phone App-to-App APIs. Using the Nokia Music REST API to add music data to your app.
  • 3. NOKIA MUSIC Instant free music streaming on Lumia Windows Phones 100s of curated mixes Create your own artist mixes Offline caching Graphic Equalizer No login, no ads Gig Finder for live concerts
  • 4. NOKIA MUSIC APP-TO-APP APIS Nokia Music 3.5 for Windows Phone 8 added App-to-App APIs In the Windows Phone Store now!
  • 5. APP-TO-APP APIS App-to-App protocols allow one app to launch another with a specific URI scheme. Launcher.LaunchUriAsync( "nokia-music://show/artist/?name= Rihanna")
  • 6. NOKIA MUSIC APP-TO-APP APIS Launch App nokia-music:// Search MP3 store nokia-music://search/anything/?term={term} Show Artist Details nokia-music://show/artist/?name={name} Play an Artist Mix nokia-music://play/artist/?artist={name} Show Gigs Around You nokia-music://show/gigs/ Search for Gigs nokia-music://search/gigs/?term={term} Show Curated Mixes nokia-music://show/mixes/ Play a Curated Mix nokia-music://play/mix/?id={id} Show Product Details – e.g. an album nokia-music://show/product/?id={id}
  • 7. DEMOS Create App that Launches Nokia Music Extend App to search for music
  • 8. APP-TO-APP AND NFC ProximityDevice device = ProximityDevice.GetDefault(); if (device != null) { device.PublishBinaryMessage("WindowsUri:WriteTag", GetBufferFromUrl("nokia-music://play/mix/?id=35541874"), UnregisterUponSend); MessageBox.Show("Tap NFC tag to write link"); } See http://nokia.ly/nfcslides
  • 9. USING APP-TO-APP TO MAKE LAUNCHER TASKS new ShowArtistTask() { ArtistName = "Green Day" }.Show();
  • 10. WEB FALL-BACK void Launch(Uri appToAppUri, Uri webFallbackUri) { #if WINDOWSPHONE8 if (IsNokiaDevice()) { Launcher.LaunchUriAsync(appToAppUri); return; } #endif WebBrowserTask web = new WebBrowserTask(); web.Uri = webFallbackUri; web.Show(); }
  • 11. NOKIA MUSIC LAUNCHER TASKS Launch App new LaunchTask().Show(); new MusicSearchTask() { Search MP3 store SearchTerms = "Rihanna" }.Show(); new ShowArtistTask() { Show Artist Details ArtistName = "Green Day” }.Show(); new PlayMixTask() { Play an Artist or Curated Mix ArtistName = "Green Day" }.Show(); Show Gigs Around You or Search for Gigs new ShowGigsTask().Show(); Show Curated Mixes new ShowMixesTask().Show();
  • 12. DEMOS API installation with NuGet Replace URI-based App-to-App with MusicSearchTask Take an existing Location-based app and add “Gigs Near You” feature
  • 13. NOKIA MUSIC WINDOWS PHONE API Makes it easy for you to integrate music data into your app. MusicClientAsync client = new MusicClientAsync(AppId, AppCode); var artists = await client.GetTopArtists(); list.ItemsSource = artists.Result; // when user selects artist... artist.PlayMix();
  • 14. NOKIA MUSIC WINDOWS PHONE API Search Nokia Music var items = await client.Search("Green Day"); Search Artist By Location var a = await client.GetArtistsAroundLocation(51.45,-2.6); Gets available genres var genres = await client.GetGenres(); Gets top artists for a genre var artists = await client.GetTopArtistsForGenre(myGenre); Gets charts var albums = await client.GetTopProducts(Category.Album); Gets a list of new releases var tracks = await client.GetNewReleases(Category.Track); Gets the top artists var artists = await client.GetTopArtists(); Gets products by an artist var products = await client.GetArtistProducts(myArtist); Gets similar artists var artists = await client.GetSimilarArtists(myArtist); Gets available Mix Groups var mixGroups = await client.GetMixGroups(); Gets Mixes for a group var mixes = await client.GetMixes(myMixGroup);
  • 15. DEMOS Sign up for API Keys Create application to show artists on map
  • 16. SUMMARY Source and examples: http://nokia.ly/wpmusicapi Contact @sr_gb or steve.robbins@nokia.com