Enviar búsqueda
Cargar
Building a mobile application for dot netnuke
•
Descargar como PPTX, PDF
•
4 recomendaciones
•
3,451 vistas
B
brchapman
Seguir
Online Webinar version of Mobile Application for DotNetNuke
Leer menos
Leer más
Tecnología
Denunciar
Compartir
Denunciar
Compartir
1 de 29
Descargar ahora
Recomendados
Mobile App Development Using Appcelerator and DNN WebAPIs
Mobile App Development Using Appcelerator and DNN WebAPIs
DNN
DNN Web API For Mobile
DNN Web API For Mobile
ashishpd
Dnn connect dnnmobi-slides
Dnn connect dnnmobi-slides
ashishpd
Hybrid Mobile App Development - Xamarin
Hybrid Mobile App Development - Xamarin
Deepu S Nath
Android - Anroid Pproject
Android - Anroid Pproject
Vibrant Technologies & Computers
Hybrid Mobile Development
Hybrid Mobile Development
Shai Raiten
Introduction to the Ionic Framework
Introduction to the Ionic Framework
rrjohnson85
Ember At Scale
Ember At Scale
Chad Hietala
Recomendados
Mobile App Development Using Appcelerator and DNN WebAPIs
Mobile App Development Using Appcelerator and DNN WebAPIs
DNN
DNN Web API For Mobile
DNN Web API For Mobile
ashishpd
Dnn connect dnnmobi-slides
Dnn connect dnnmobi-slides
ashishpd
Hybrid Mobile App Development - Xamarin
Hybrid Mobile App Development - Xamarin
Deepu S Nath
Android - Anroid Pproject
Android - Anroid Pproject
Vibrant Technologies & Computers
Hybrid Mobile Development
Hybrid Mobile Development
Shai Raiten
Introduction to the Ionic Framework
Introduction to the Ionic Framework
rrjohnson85
Ember At Scale
Ember At Scale
Chad Hietala
Cross platform mobile application development
Cross platform mobile application development
webprogr.com
Firefox OS Weekend
Firefox OS Weekend
Máté Nádasdi
Ember Conf 2016: Building Mobile Apps with Ember
Ember Conf 2016: Building Mobile Apps with Ember
Alex Blom
Workshop Ionic Framework - CC FE & UX
Workshop Ionic Framework - CC FE & UX
JWORKS powered by Ordina
Cross platform Xamarin Apps With MVVM
Cross platform Xamarin Apps With MVVM
Jim Bennett
Phonegap/Cordova vs Native Application
Phonegap/Cordova vs Native Application
Muhammad Hakim A
Cross platform approach for mobile application development : a survey
Cross platform approach for mobile application development : a survey
Mounaim Latif
Cross-Platform Mobile Development - Technical Stuff
Cross-Platform Mobile Development - Technical Stuff
Akash Kubavat
Cordova: APIs and instruments
Cordova: APIs and instruments
Ivano Malavolta
Xamarin.Forms Bootcamp
Xamarin.Forms Bootcamp
Mike Melusky
Hybrid Mobile Development with Apache Cordova and Java EE 7 (JavaOne 2014)
Hybrid Mobile Development with Apache Cordova and Java EE 7 (JavaOne 2014)
Ryan Cuprak
Building Native “apps” with Visual Studio 2015
Building Native “apps” with Visual Studio 2015
Mike Melusky
Webapi
Webapi
Jan Jongboom
Widgets neil
Widgets neil
RavingTiger
The voicesignin.com authentication and identity platform
The voicesignin.com authentication and identity platform
Steven Bowden
Xamarin v.Now
Xamarin v.Now
Craig Dunn
Building iOS app using meteor
Building iOS app using meteor
Entrepreneur / Startup
Florin React Native Meetup
Florin React Native Meetup
Sebastiaan de Vries
Building mobile apps using meteorJS
Building mobile apps using meteorJS
Entrepreneur / Startup
Introduction to Phonegap
Introduction to Phonegap
Andrei Firoiu
Building a mobile application for dot netnuke v3
Building a mobile application for dot netnuke v3
brchapman
Mobile trends and impressions
Mobile trends and impressions
Shafaq Abdullah
Más contenido relacionado
La actualidad más candente
Cross platform mobile application development
Cross platform mobile application development
webprogr.com
Firefox OS Weekend
Firefox OS Weekend
Máté Nádasdi
Ember Conf 2016: Building Mobile Apps with Ember
Ember Conf 2016: Building Mobile Apps with Ember
Alex Blom
Workshop Ionic Framework - CC FE & UX
Workshop Ionic Framework - CC FE & UX
JWORKS powered by Ordina
Cross platform Xamarin Apps With MVVM
Cross platform Xamarin Apps With MVVM
Jim Bennett
Phonegap/Cordova vs Native Application
Phonegap/Cordova vs Native Application
Muhammad Hakim A
Cross platform approach for mobile application development : a survey
Cross platform approach for mobile application development : a survey
Mounaim Latif
Cross-Platform Mobile Development - Technical Stuff
Cross-Platform Mobile Development - Technical Stuff
Akash Kubavat
Cordova: APIs and instruments
Cordova: APIs and instruments
Ivano Malavolta
Xamarin.Forms Bootcamp
Xamarin.Forms Bootcamp
Mike Melusky
Hybrid Mobile Development with Apache Cordova and Java EE 7 (JavaOne 2014)
Hybrid Mobile Development with Apache Cordova and Java EE 7 (JavaOne 2014)
Ryan Cuprak
Building Native “apps” with Visual Studio 2015
Building Native “apps” with Visual Studio 2015
Mike Melusky
Webapi
Webapi
Jan Jongboom
Widgets neil
Widgets neil
RavingTiger
The voicesignin.com authentication and identity platform
The voicesignin.com authentication and identity platform
Steven Bowden
Xamarin v.Now
Xamarin v.Now
Craig Dunn
Building iOS app using meteor
Building iOS app using meteor
Entrepreneur / Startup
Florin React Native Meetup
Florin React Native Meetup
Sebastiaan de Vries
Building mobile apps using meteorJS
Building mobile apps using meteorJS
Entrepreneur / Startup
Introduction to Phonegap
Introduction to Phonegap
Andrei Firoiu
La actualidad más candente
(20)
Cross platform mobile application development
Cross platform mobile application development
Firefox OS Weekend
Firefox OS Weekend
Ember Conf 2016: Building Mobile Apps with Ember
Ember Conf 2016: Building Mobile Apps with Ember
Workshop Ionic Framework - CC FE & UX
Workshop Ionic Framework - CC FE & UX
Cross platform Xamarin Apps With MVVM
Cross platform Xamarin Apps With MVVM
Phonegap/Cordova vs Native Application
Phonegap/Cordova vs Native Application
Cross platform approach for mobile application development : a survey
Cross platform approach for mobile application development : a survey
Cross-Platform Mobile Development - Technical Stuff
Cross-Platform Mobile Development - Technical Stuff
Cordova: APIs and instruments
Cordova: APIs and instruments
Xamarin.Forms Bootcamp
Xamarin.Forms Bootcamp
Hybrid Mobile Development with Apache Cordova and Java EE 7 (JavaOne 2014)
Hybrid Mobile Development with Apache Cordova and Java EE 7 (JavaOne 2014)
Building Native “apps” with Visual Studio 2015
Building Native “apps” with Visual Studio 2015
Webapi
Webapi
Widgets neil
Widgets neil
The voicesignin.com authentication and identity platform
The voicesignin.com authentication and identity platform
Xamarin v.Now
Xamarin v.Now
Building iOS app using meteor
Building iOS app using meteor
Florin React Native Meetup
Florin React Native Meetup
Building mobile apps using meteorJS
Building mobile apps using meteorJS
Introduction to Phonegap
Introduction to Phonegap
Similar a Building a mobile application for dot netnuke
Building a mobile application for dot netnuke v3
Building a mobile application for dot netnuke v3
brchapman
Mobile trends and impressions
Mobile trends and impressions
Shafaq Abdullah
AD114 -- Beyond the Mobile Browser? Building Rich Mobile Applications for IBM...
AD114 -- Beyond the Mobile Browser? Building Rich Mobile Applications for IBM...
ddrschiw
Citrix Receiver: the road ahead
Citrix Receiver: the road ahead
Citrix
Redefining Perspectives 4 - Metro ui Session 1
Redefining Perspectives 4 - Metro ui Session 1
sapientindia
Lotus Notes Mobile Application Development Using XPages
Lotus Notes Mobile Application Development Using XPages
Cognizant
Windows Server 2003 EOS : l'opportunité de repenser votre IT et mettre en pla...
Windows Server 2003 EOS : l'opportunité de repenser votre IT et mettre en pla...
Microsoft Décideurs IT
Windows Server 2003 EOS : l'opportunité de repenser votre IT et mettre en pla...
Windows Server 2003 EOS : l'opportunité de repenser votre IT et mettre en pla...
Microsoft Technet France
Windows Server 2003 EOS : l'opportunité de repenser votre IT et mettre en pla...
Windows Server 2003 EOS : l'opportunité de repenser votre IT et mettre en pla...
Microsoft Décideurs IT
Communication Patterns Using Data-Centric Publish/Subscribe
Communication Patterns Using Data-Centric Publish/Subscribe
Sumant Tambe
Communication Patterns Using Data-Centric Publish/Subscribe
Communication Patterns Using Data-Centric Publish/Subscribe
Real-Time Innovations (RTI)
INF104 - HCL Domino AppDev Pack – The Future of Domino App Dev Nobody Knows A...
INF104 - HCL Domino AppDev Pack – The Future of Domino App Dev Nobody Knows A...
Heiko Voigt
Presentation build and connect apps, devices and data ibm worklight overview
Presentation build and connect apps, devices and data ibm worklight overview
xKinAnx
Citrix Day 2014: XenApp / XenDesktop 7.6
Citrix Day 2014: XenApp / XenDesktop 7.6
Digicomp Academy AG
Building Mobile Cross-Platform Apps with HTML5, jQuery Mobile & PhoneGap
Building Mobile Cross-Platform Apps with HTML5, jQuery Mobile & PhoneGap
Nick Landry
Building your Own Mobile Enterprise Application: It’s Not as Hard as You Migh...
Building your Own Mobile Enterprise Application: It’s Not as Hard as You Migh...
Jason Conger
Cloud Native Patterns with Bluemix Developer Console
Cloud Native Patterns with Bluemix Developer Console
Matthew Perrins
.NET Cloud-Native Bootcamp
.NET Cloud-Native Bootcamp
VMware Tanzu
The Revolution in Licensing - Cloud-Based Licensing
The Revolution in Licensing - Cloud-Based Licensing
LicensingLive! - SafeNet
Integrating Novell Collaboration Products with SugarCRM, Salesforce.com and S...
Integrating Novell Collaboration Products with SugarCRM, Salesforce.com and S...
Novell
Similar a Building a mobile application for dot netnuke
(20)
Building a mobile application for dot netnuke v3
Building a mobile application for dot netnuke v3
Mobile trends and impressions
Mobile trends and impressions
AD114 -- Beyond the Mobile Browser? Building Rich Mobile Applications for IBM...
AD114 -- Beyond the Mobile Browser? Building Rich Mobile Applications for IBM...
Citrix Receiver: the road ahead
Citrix Receiver: the road ahead
Redefining Perspectives 4 - Metro ui Session 1
Redefining Perspectives 4 - Metro ui Session 1
Lotus Notes Mobile Application Development Using XPages
Lotus Notes Mobile Application Development Using XPages
Windows Server 2003 EOS : l'opportunité de repenser votre IT et mettre en pla...
Windows Server 2003 EOS : l'opportunité de repenser votre IT et mettre en pla...
Windows Server 2003 EOS : l'opportunité de repenser votre IT et mettre en pla...
Windows Server 2003 EOS : l'opportunité de repenser votre IT et mettre en pla...
Windows Server 2003 EOS : l'opportunité de repenser votre IT et mettre en pla...
Windows Server 2003 EOS : l'opportunité de repenser votre IT et mettre en pla...
Communication Patterns Using Data-Centric Publish/Subscribe
Communication Patterns Using Data-Centric Publish/Subscribe
Communication Patterns Using Data-Centric Publish/Subscribe
Communication Patterns Using Data-Centric Publish/Subscribe
INF104 - HCL Domino AppDev Pack – The Future of Domino App Dev Nobody Knows A...
INF104 - HCL Domino AppDev Pack – The Future of Domino App Dev Nobody Knows A...
Presentation build and connect apps, devices and data ibm worklight overview
Presentation build and connect apps, devices and data ibm worklight overview
Citrix Day 2014: XenApp / XenDesktop 7.6
Citrix Day 2014: XenApp / XenDesktop 7.6
Building Mobile Cross-Platform Apps with HTML5, jQuery Mobile & PhoneGap
Building Mobile Cross-Platform Apps with HTML5, jQuery Mobile & PhoneGap
Building your Own Mobile Enterprise Application: It’s Not as Hard as You Migh...
Building your Own Mobile Enterprise Application: It’s Not as Hard as You Migh...
Cloud Native Patterns with Bluemix Developer Console
Cloud Native Patterns with Bluemix Developer Console
.NET Cloud-Native Bootcamp
.NET Cloud-Native Bootcamp
The Revolution in Licensing - Cloud-Based Licensing
The Revolution in Licensing - Cloud-Based Licensing
Integrating Novell Collaboration Products with SugarCRM, Salesforce.com and S...
Integrating Novell Collaboration Products with SugarCRM, Salesforce.com and S...
Último
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
wesley chun
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
Anna Loughnan Colquhoun
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
Igalia
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
naman860154
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
Safe Software
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
The Digital Insurer
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
Enterprise Knowledge
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
Gabriella Davis
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
Earley Information Science
Slack Application Development 101 Slides
Slack Application Development 101 Slides
praypatel2
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
Delhi Call girls
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
Antenna Manufacturer Coco
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
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
HampshireHUG
How to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
naman860154
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
Delhi Call girls
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
Results
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
Principled Technologies
Último
(20)
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
Slack Application Development 101 Slides
Slack Application Development 101 Slides
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
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...
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
How to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
Building a mobile application for dot netnuke
1.
BUILDING A MOBILE
APPLICATION FOR DOTNETNUKE Bruce Chapman Director, iFinity Software 7th November 2012 DotNetNuke Corp. Confidential © 2012 All rights reserved.
2.
PRESENTATION AGENDA • Brief
Introduction to Mobile Applications + DotNetNuke • Demonstrate how to build a Mobile Application that uses Service Layer of DotNetNuke to interact » Understanding the Service Layer » Authentication of Dnn Users » Building Service Endpoints • Example Application : “Dnn Dash” – allows access to the Dashboard of a DotNetNuke site » Building Mobile Application DotNetNuke Corp. Confidential © 2011 All rights reserved. 2012 2
3.
MOBILE APPLICATIONS • Purpose
built (device specific) Mobile Applications are a superior way to deliver a mobile experience • Html 5 can provide a rich experience, but cannot match purpose built at this point • The theme of Mobile App vs Mobile Site is currently a hot topic of debate DotNetNuke Corp. Confidential © 2011 All rights reserved. 2012 3
4.
HTML 5 VS
NATIVE APPS Html 5 Native App • Write once – run anywhere • App per platform Conclusion • Server-side code easily • May require lengthy •Choose according to requirements changed release process • Sandboxed, •Services layer may be largely the same in either no access to • Full access to device features case features – camera, GPS • No App Store Presence • In-device discovery + purchase • Speed dependent on connection • Faster + more stable • Direct monetization more • Monetization by app or in- difficult app purchase easy DotNetNuke Corp. Confidential © 2011 All rights reserved. 4
5.
MOBILE APPLICATIONS AND
DOTNETNUKE • DotNetNuke 6.2 introduced the Services Layer, which exposes key DNN API features • DotNetNuke 7.0 redefines the Services Layer, which is built on top of the WebAPI services • DNN Services layer is easily extended for module specific purposes • An entire new field of DotNetNuke application development has been created DotNetNuke Corp. Confidential © 2011 All rights reserved. 2012 5
6.
MOBILE APPLICATION TYPES •
Corporate development : customising apps for in-house use on mobile + tablet platforms • Commercial development : new applications that provider web + mobile experience • Open Source development : providing applications + back end processes DotNetNuke Corp. Confidential © 2011 All rights reserved. 2012 6
7.
A NATURAL FIT
: MOBILE + CLOUD DotNetNuke Corp. Confidential © 2011 All rights reserved. 2012 7
8.
BUILDING A DOTNETNUKE
MOBILE APPLICATION DotNetNuke Corp. Confidential © 2011 All rights reserved. 2012 8
9.
UNDERSTANDING THE SERVICE
LAYER • 6.2 – Used the MVC Service Layer • 7.0 – Uses the Web API for the Services Layer • Two aspects to layer: » Built-in DNN API » Extension for Third-party modules • Provides authentication based on DotNetNuke user accounts and profiles • Provides simple pattern to design service endpoints • Flexibility in format (Json/Xml/others) DotNetNuke Corp. Confidential © 2011 All rights reserved. 2012 9
10.
EXTENDING THE SERVICE
LAYER • 2 Basic Components to API Extensions 1. Controller • Definition of Methods and layer on top of business logic • Inherits from DnnController 2. RouteMapper • Defines what Urls map to which Controller methods • Inherits from IServiceRouteMapper DotNetNuke Corp. Confidential © 2011 All rights reserved. 2012 10
11.
EXAMPLE SERVICE LAYER
CALL • Url to call: http://example.com/DesktopModules/DnnDash/API/Dash/Ping DotNetNuke Corp. Confidential © 2011 All rights reserved. 11
12.
DECONSTRUCTING SERVICES LAYER
URL http://example.com/DesktopModules/DnnDash/API/Dash/Ping • http://example.com => domain name • /DesktopModules => fixed part of Url, denotes module Url • /DnnDash => specifies module • /API => fixed, denotes services layer • /Dash => specifies controller [ DashController ] • /Ping => method name [ Public string Ping() ] • NOTE: /DesktopModules/DnnDash doesn’t necessarily have to exist DotNetNuke Corp. Confidential © 2011 All rights reserved. 2012 12
13.
ROUTEMAPPER REGISTERS URL
ROUTES • MapRoute configures what Urls will work: “DnnDash” /DesktopModules/DnnDash “{controller}/{action}” Class/Method • /API/Dash/Ping DashController.Ping() • No other configuration required DotNetNuke Corp. Confidential © 2011 All rights reserved. 13
14.
SERVICES LAYER DEMONSTRATION
DotNetNuke Corp. Confidential © 2011 All rights reserved. 14
15.
SERVICES AUTHENTICATION • Authentication:
» Identifying & Authorising User accounts » Preventing Unauthorised Access » Avoiding opening exploitable holes » Providing ‘context’ for current user within service calls • Web-browser based services call use cookie-based authentication (ie AJAX calls) • Mobile devices use digest authentication to provide authentication » Username/password pair provided with each call DotNetNuke Corp. Confidential © 2011 All rights reserved. 2012 15
16.
SERVICES AUTHENTICATION CONT. •
Services methods access level can be marked with: » AllowAnonymous – no authentication » RequiresHost – if true, must be SuperUser » StaticRoles – named DotNetNuke roles • All ‘regular’ DNN objects are available in context for service calls: » Portal Settings (current portal, alias, settings) » UserInfo (authenticated user) DotNetNuke Corp. Confidential © 2011 All rights reserved. 2012 16
17.
TIPS FOR WRITING
SERVICES • Use RESTful method / parameter naming principles • Stick to common return format in project (Json/Xml/String – whatever) • Plan for infrequent service calls in Application Design • Be frugal with data going backwards and forwards – this may require custom serializing of objects DotNetNuke Corp. Confidential © 2011 All rights reserved. 2012 17
18.
INSTALLING SERVICES WITH
YOUR MODULE • A service-only module only has an Assembly • Install with ordinary Module install package • DotNetNuke manifest file used to specify configuration and safe uninstall DotNetNuke Corp. Confidential © 2011 All rights reserved. 18
19.
WRITING A MOBILE
APPLICATION - EXAMPLE • ‘DnnDash’ application on Windows Phone • Reads installed DotNetNuke dashboard components for display on mobile devices • Uses DnnDash services layer to send back Xml of dashboard information • Host-level access required to run • DnnDash module/phone app available from dnndash.com • http://dnndashservice.codeplex.com/ for source code DotNetNuke Corp. Confidential © 2011 All rights reserved. 2012 19
20.
ACCESSING SERVICES FROM
WINDOWS PHONE • Uses System.Net.HttpWebRequest » Asynchronous method » Check Http status code to monitor correct authentication (401 returned when not authenticated) • Each call from the device provides user authentication username/password pair • Uses Xml from Service call to create UI DotNetNuke Corp. Confidential © 2011 All rights reserved. 2012 20
21.
DNN DASH PHONE
APP DEMO • https://play.google.com/store/apps/details?id=com.rm.dnndash &feature=search_result • Search ‘DnnDash’ on the Google store • Windows Phone 7 version still in Approval, but should be on the Windows Store soon • Connect to dnndash.com • U : mobiledemo / P : dnn2012 DotNetNuke Corp. Confidential © 2011 All rights reserved. 2012 21
22.
DNN DASH PHONE
APP DEMO DotNetNuke Corp. Confidential © 2011 All rights reserved. 2012 22
23.
ANDROID VERSION SCREENSHOTS
DotNetNuke Corp. Confidential © 2011 All rights reserved. 23
24.
AUTHENTICATING PHONE USER •
Username/Password supplied with each call • Defaults to Digest Authentication – Username/password not plaintext DotNetNuke Corp. Confidential © 2011 All rights reserved. 24
25.
REQUESTING DATA FROM
SERVICE • Mobile requests data using Asynchronous Web Request. • Response body is read from Response.GetResponseStream() • Once response is received, conversion to the response format • Example uses both Xml and Json responses DotNetNuke Corp. Confidential © 2011 All rights reserved. 2012 25
26.
POSTING DATA TO
A SERVICE • Posting is much the same as retrieving data • Post generally means changing server state • Posts should be idempotent • Failure should allow for re-submit without losing client state DotNetNuke Corp. Confidential © 2011 All rights reserved. 2012 26
27.
CONSIDERATIONS FOR MOBILE
APP DESIGN • Store-posted apps can have lead-times for changes in design • DotNetNuke modules can be changed + patched immediately • Therefore, introduce flexibility into design that is data-driven, side-stepping requirements to re-release mobile clients DotNetNuke Corp. Confidential © 2011 All rights reserved. 2012 27
28.
CONCLUSIONS • Mobile Internet
usage will soon overtake fixed line internet, if it hasn’t already • Hardware sales growth in mobile devices outstrips desktop computing • DotNetNuke provides a perfect bridge between mobile devices and your data, especially if you want to put it in the cloud • Building modules for the services layer is simple and fast • Mobile Apps are the next big thing in DotNetNuke DotNetNuke Corp. Confidential © 2011 All rights reserved. 2012 28
29.
QUESTIONS • Dnn Dash
application source code available from http://dnndashservice.codeplex.com/ » Dnn Service Layer » Dnn Dash Desktop App » Dnn Dash Windows Phone App » Android Phone App • Slides available at http://www.slideshare.net/brchapman • Follow me on twitter : @brucerchapman DotNetNuke Corp. Confidential © 2011 All rights reserved. 2012 29
Descargar ahora