SlideShare ist ein Scribd-Unternehmen logo
1 von 38
SharePoint, HTML5
und mobile Geräte
Christian Heindel
Projektleiter und Softwareentwickler




Twi @c_heindel
Christian Heindel
• Projektleiter und Softwareentwickler bei Communardo

• Über zehn Jahre Berufserfahrung im Bereich
  Softwareentwicklung, davon über vier Jahre mit
  Microsoft SharePoint

• Unternehmenslösungen für Internet, Intranet, Desktop
  und mobile Geräte

• Aktueller Fokus:
  HTML5, SharePoint 2010, mobile
  Anwendungen, Collaboration und Social Media

• Zertifiziert als MCTS und nach IPMA 4-L-C

•   ^ @c_heindel

• Blog: http://blog.christian-heindel.de
Agenda
1. Einleitung, Marktanteile, Pro & Contra
   native Anwendungen, HTML5
2. Werkzeuge, Tipps & Tricks
3. SharePoint + HTML5
4. DEMO
5. Diskussion
Einleitung
Die Herausforderung:
• Große Anzahl an verschiedenen Zielplatformen
• Kein klarer Marktführer, nicht wie beim Desktop
• Endlose Liste an Herstellern und Geräten

Plattformen für mobile Geräte:
• MeeGo (MobLin+Maemo) (Intel/Nokia), Android (Google), iOS
  (Apple), WebOS (HP), Windows Mobile, Windows
  Phone (Microsoft), BlackBerry OS (RIM), Symbian, Bada
  (Samsung), Qt, J2ME (Oracle), Brew (Quallcomm)

Zusätzlich gibt es auch noch NetBooks und Tablets mit:
• Windows, Linux, OS X, Chrome OS
Wachstum und Veränderung
 • Von 2009 zu 2010 wurden 72% mehr SmartPhones verkauft
   (20% aller Geräte)
 • Von 2010 zu 2011 wurden 42% mehr SmartPhones verkauft
   (26% aller Geräte)
                                            3Q11           3Q11 Market                        3Q10     3Q10 Market
Operating                                   Units             Share (%)                       Units       Share (%)
System
Android                               60,490.4                           52.5              20,544.0             25.3
Symbian                               19,500.1                           16.9              29,480.1             36.3
iOS                                   17,295.3                           15.0              13,484.4             16.6
RIM                                   12,701.1                           11.0              12,508.3             15.4
Bada                                   2,478.5                            2.2                 920.6              1.1
Microsoft                              1,701.9                            1.5               2,203.9              2.7
Others                                 1,018.1                            0.9               1,991.3              2.5
Total                                115,185.4                           100               81,132.6             100
Worldwide Smartphone Sales to End Users by Operating System in 3Q11 (Thousands of Units)
Source: Gartner (November 2011)
                                                                                             Total phones: 440,502.2
Fragmentierung




Source: http://en.wikipedia.org/wiki/Mobile_operating_system
PRO – Native Anwendungen
Marketing
• Präsenz in App Stores ist gut für die Sichtbarkeit Ihres
  Produkts
• Das ist wichtig bei Produkten für private Konsumenten, aber nicht
  so wichtig bei Produkten für Unternehmen.

Performance, Look & Feel
• Native Anwendungen laufen schneller und lassen sich besser
   integrieren.

Möglichkeiten
• Browser bekommen nicht auf alle Funktionen Zugriff.
  Schwierig wird es z.B. beim Adressbuch und der Kamera.
CONTRA – Native Anwendungen
Geschäftsrisiko
• Wird der Anbieter meine Anwendung in seinem Markt genehmigen?
• Wie lang wird er dafür benötigen?
Rechtliches
• Es müssen jeweils individuelle Verträge abgeschlossen und Regeln
   beachtet werden.
Ein Haufen Arbeit und Kosten
• Versuchen Sie mal gleichzeitig hier etwas zu veröffentlichen: App Store
   (Apple), Android Market (Google), Amazon Appstore for Android, BlackBerry App World (RIM), Ovi Store (Nokia), HP App Catalog
   (WebOS), Windows Marketplace for Mobile, Windows Phone Marketplace (Microsoft), Samsung apps

• Im Schnitt 30% Umsatzbeteiligung für die App Stores.
• Spezialisierte Programmierer für die verschiedenen Plattformen
  notwendig.
• Frameworks wie PhoneGap, RhoMobile, AppCelerator verlässlich?
• Suchmaschinen werden Ihre App nicht indexieren.
Programmiersprachen auf mobilen Plattformen

Was einige können:
•   Objective C (iOS)
•   C#, XAML (Windows Phone)
•   Java (Android)
•   Qt (C++) (Symbian, Maemo)
Was alle können:
• HTML
• JavaScript
• CSS
Browserunterstützung auf mobilen Plattformen
 am Beispiel von jQuery Mobile 1.0 (16.11.2011)
A-grade – Full enhanced experience with Ajax-based animated page transitions.
•     Apple iOS 3.2-5.0 - Tested on the original iPad (4.3 / 5.0), iPad 2 (4.3), original iPhone (3.1), iPhone 3 (3.2), 3GS (4.3), and 4 (4.3 / 5.0)
•     Android 2.1-2.3 – Tested on the HTC Incredible (2.2), original Droid (2.2), Nook Color (2.2), HTC Aria (2.1), Google Nexus S (2.3). Functional on 1.5 &
      1.6 but performance may be sluggish, tested on Google G1 (1.5)
•     Android Honeycomb- Tested on the Samsung Galaxy Tab 10.1 and Motorola XOOM
•     Windows Phone 7-7.5 – Tested on the HTC Surround (7.0) HTC Trophy (7.5), and LG-E900 (7.5)
•     Blackberry 6.0 – Tested on the Torch 9800 and Style 9670
•     Blackberry 7 – Tested on BlackBerry® Torch 9810
•     Blackberry Playbook – Tested on PlayBook version 1.0.1 / 1.0.5
•     Palm WebOS (1.4-2.0) – Tested on the Palm Pixi (1.4), Pre (1.4), Pre 2 (2.0)
•     Palm WebOS 3.0 – Tested on HP TouchPad
•     Firebox Mobile (Beta) – Tested on Android 2.2
•     Opera Mobile 11.0: Tested on the iPhone 3GS and 4 (5.0/6.0), Android 2.2 (5.0/6.0)
•     Meego 1.2 – Tested on Nokia 950 and N9
•     Kindle 3 and Fire: Tested on the built-in WebKit browser for each
•     Chrome Desktop 11-15 - Tested on OS X 10.6.7 and Windows 7
•     Firefox Desktop 4-8 – Tested on OS X 10.6.7 and Windows 7
•     Internet Explorer 7-9 – Tested on Windows XP, Vista and 7 (minor CSS issues)
•     Opera Desktop 10-11 - Tested on OS X 10.6.7 and Windows 7
B-grade – Enhanced experience except without Ajax navigation features.
•     Blackberry 5.0: Tested on the Storm 2 9550, Bold 9770
•     Opera Mini (5.0-6.0) - Tested on iOS 3.2/4.3
•     Nokia Symbian^3 - Tested on Nokia N8 (Symbian^3), C7 (Symbian^3), also works on N97 (Symbian^1)
C-grade – Basic, non-enhanced HTML experience that is still functional
•     Blackberry 4.x - Tested on the Curve 8330
•     Windows Mobile - Tested on the HTC Leo (WInMo 5.2)
•     All older smartphone platforms and featurephones – Any device that doesn’t support media queries will receive the basic, C grade experience
Not Officially Supported – May work, but haven’t been thoroughly tested or debugged
•     Samsung Bada – The project doesn’t currently have test devices or emulators, but current support is known to be fairly good.
Was ist neu mit HTML5?
• Canvas (2D and 3D)           (SVG)
• Channel messaging        •   WebSocket API and
• Cross-document               protocol
  messaging                •   Web origin concept
• Geolocation              •   Web storage
• MathML                   •   Web SQL database
• Microdata                •   Web Workers
• Server-Sent events       •   XMLHttpRequest Level 2
• Scalable Vector Graphics
Beispiel: Geolocation API
Agenda
1. Einleitung, Marktanteile, Pro & Contra native
   Anwendungen, HTML5
2. Werkzeuge, Tipps & Tricks
3. SharePoint + HTML5
4. DEMO
5. Diskussion
HTML5 Browserkompatibilität
  http://www.caniuse.com/
• Unterstützt meine Zielplatform eine
  bestimmte Funktion die ich nutzen möchte?
• Welche Plattformen verliere ich, wenn ich ein
  bestimmtes Feature verwenden will?
HTML5 für gute und schlechte Browser
Modernizr adds classes to the <html> element
which allow you to target specific browser
functionality in your stylesheet. You don't
actually need to write any Javascript to use it.
jQuery Mobile: Touch-Optimized Web
     Framework for Smartphones & Tablets
A unified, HTML5-based user
interface system for all
popular mobile device
platforms, built on the rock-
solid jQuery and jQuery UI
foundation. Its lightweight
code is built with progressive
enhancement, and has a
flexible, easily themeable
design.
http://jquerymobile.com/
HTML5 framework for applications
 • Sencha Touch – Mobile Web App Framework (from the creators of ExtJS)




PS: I like their comprehensive
documentation on offline apps. ;-)                                                             18
They are explaining how you use this http://dev.w3.org/html5/offline-webapps/ the right way…
Für Minimalisten
Zepto.js is a minimalist JavaScript framework for
mobile WebKit browsers, with a jQuery-
compatible syntax.
HTML5 Template für mobile Websites
Mobile Boilerplate




http://html5boilerplate.com/mobile/
Herangehensweise: Mobile first!
Mobile first development (yiibu-style, http://yiibu.com/) - They also have tips
for Nokia browsers… ;-)

A practical approach:
• Design the product.
• Implement the product using web standards.
• Launch the product.
• Run into problems.
• Translate product design into an iPhone* app.
• Launch product on iTunes*.
* insert other platform here

Apps vs. the Web
• http://www.alistapart.com/articles/apps-vs-the-web/
Performance-Tipps
• Images slow things down immensely – get rid of
  them
• Avoid text-shadow & box-shadow
• Hardware-acceleration is quite new… and buggy
• Use touch events whenever you can
  (ontouchmove > onmousemove > onclick)
• Avoid opacity
• Hand-code JavaScript and CSS (frameworks are
  heavy, no Prototype, no jQuery)
• Use translate3d, not translate
HTML5 in native Anwendungen umwandeln

• Es gibt eine Reihe an Wrappen die Ihren HTML5
  Code für verschiedene Platformen aufbereiten.
• Diese sind in der Regel langsam, buggy und
  haben begrenzten Funktionsumfang und Support.
• In den meisten Fällen entwickeln Sie lieber echte
  native Anwendungen.
• Es gibt Ausnahmen: eBooks via HTML5
  http://www.lakercompendium.com/
Agenda
1. Einleitung, Marktanteile, Pro & Contra native
   Anwendungen, HTML5
2. Werkzeuge, Tipps & Tricks
3. SharePoint + HTML5
4. DEMO
5. Diskussion
HTML5 + SharePoint: Einschränkungen
• The page won’t validate as proper HTML5 code.
  (SharePoint outputs content as XHTML 1.0 natively.)
• contenteditable not supported. (Editor)
• Ribbon positioning will fail. (Workaround)
• Out-of-the-box SharePoint master pages need to be
  adjusted. (v5.master)

Change document type to:
• <!DOCTYPE HTML>
Remove:
• <meta http-equiv="X-UA-Compatible"
  content="IE=8" />
V5.MASTER
• New HTML5 document type declaration
• Revised <head> content to adhere to new HTML5
  standards and best practices
• New HTML5 semantic layout
  (<header>, <footer>, <section>, etc.)
• Uses html5shim for backwards-compatibility
• Responsive CSS3 media queries
http://kyleschaeffer.com/sharepoint/v5-responsive-
html5-master-page/
V5.MASTER
Mobility Redirect vs. ContentEditable
If you do not want to edit from mobile devices, you might
just want to disable the mobility redirect.

Disable-SPFeature -Identity
MobilityRedirect -Url http://yoursite
<!-MobilityRedirect Feature->
<Feature ID="{f41cc668-37e5-4743-b4a8-
74d1db3fd8a4}"
Name="FeatureDefinition/f41cc668-37e5-
4743-b4a8-74d1db3fd8a4"
SourceVersion="1.0.0.0" />
iOS und SharePoint – Redirect?
ContentEditable not supported?
a)    Automatic switch to mobile version
<system>inetpubwwwrootwssVirtualDirectories80App_browserscompat.browser
<!-- iPad Safari Browser -->
<!-- sample UA "Mozilla/5.0 (iPad; U; CPU OS 4_2_1 like Mac OS X; en-
us) AppleWebKit/533.17.9 (KHTML, like Gecko) Version/5.0.2
Mobile/8C148 Safari/6533.18.5" -->
<browser id="iPadSafari" parentID="AppleSafari">
<identification>
<userAgent match="iPad" />
<userAgent match="Mobile" />
</identification>
<capabilities>
<capability name="isMobileDevice" value="true" />
<capability name="canInitiateVoiceCall" value="true" />
<capability name="optimumPageWeight" value="1500" />
<capability name="requiresViewportMetaTag" value="true" />
<capability name="supportsTouchScreen" value="true" />
<capability name="telephoneNumberDetectionDisabled" value="true" />
</capabilities>
</browser>
iOS und SharePoint – Redirect?
ContentEditable not supported?

b) Manually switch to mobile version
http:// URL /m/
http:// URL /_layouts/mobile/default.aspx
?mobile=1

c) For short /m/ version, the MobilityRedirect feature has to be
activated.
See also: Mobile development with SharePoint Foundation
http://msdn.microsoft.com/en-us/library/ms464268.aspx
and: http://support.microsoft.com/kb/930147
Agenda
1. Einleitung, Marktanteile, Pro & Contra native
   Anwendungen, HTML5
2. Werkzeuge, Tipps & Tricks
3. SharePoint + HTML5
4. DEMO
5. Diskussion
DEMO
http://m.christian-heindel.de
Agenda
1. Einleitung, Marktanteile, Pro & Contra native
   Anwendungen, HTML5
2. Werkzeuge, Tipps & Tricks
3. SharePoint + HTML5
4. DEMO
5. Diskussion
Erfahrungen? Anwendungsfälle? Pläne?
• Frank Ehrlich, IT & Logistik Prozesse, KOMSA AG
    – Lagermanagement?
    – Entstörung und Installation vor Ort?


• Michael John, Leiter Technischer Dienst, Staatliche Kunstsammlung
  Dresden
    – Mobile Guides? QR-Tags? Digitale Warteschlange?


• Bernd Robel, Sr. Engineer IT, GLOBALFOUNDRIES
    – Standortbezogene Unterlagen für Audits?


• Stefan Rönsch, Projektmanager, Universitätsklinikum Carl Gustav Carus
    – Tablets? Wegweiser? Notfallnummern?
Danke für Ihre Aufmerksamkeit!

           Fragen?

http://www.christian-heindel.de
          @c_heindel

Weitere ähnliche Inhalte

Ähnlich wie SharePoint, HTML5 und mobile Geräte (SharePoint UserGroup Dresden 11/2011)

Cross-Apps-Entwicklung für iPhone, Android und Co.
Cross-Apps-Entwicklung für iPhone, Android und Co.Cross-Apps-Entwicklung für iPhone, Android und Co.
Cross-Apps-Entwicklung für iPhone, Android und Co.GFU Cyrus AG
 
Top 10 Internet Trends 2008
Top 10 Internet Trends 2008Top 10 Internet Trends 2008
Top 10 Internet Trends 2008Jürg Stuker
 
Android Ice Cream Sandwich WJAX 2011
Android Ice Cream Sandwich WJAX 2011Android Ice Cream Sandwich WJAX 2011
Android Ice Cream Sandwich WJAX 2011Dominik Helleberg
 
Cross Plattform Entwicklung für Mobile Anwendungen
Cross Plattform Entwicklung für Mobile AnwendungenCross Plattform Entwicklung für Mobile Anwendungen
Cross Plattform Entwicklung für Mobile AnwendungenMarkus Eiglsperger
 
Cross-Apps-Entwicklung für iPhone, Android und Co.
Cross-Apps-Entwicklung für iPhone, Android und Co.Cross-Apps-Entwicklung für iPhone, Android und Co.
Cross-Apps-Entwicklung für iPhone, Android und Co.Peter Hecker
 
Digital Media Night - Responsive Web Design
Digital Media Night - Responsive Web DesignDigital Media Night - Responsive Web Design
Digital Media Night - Responsive Web DesignVirtualtrends
 
DACHNUG50 MX_Workshop.pdf
DACHNUG50 MX_Workshop.pdfDACHNUG50 MX_Workshop.pdf
DACHNUG50 MX_Workshop.pdfDNUG e.V.
 
Mobile Advertise Convention Jan 2007 / München - Mobile Plattformen im Vergleich
Mobile Advertise Convention Jan 2007 / München - Mobile Plattformen im VergleichMobile Advertise Convention Jan 2007 / München - Mobile Plattformen im Vergleich
Mobile Advertise Convention Jan 2007 / München - Mobile Plattformen im VergleichSIC! Software GmbH
 
Android Apps mit Xamarin entwickeln
Android Apps mit Xamarin entwickelnAndroid Apps mit Xamarin entwickeln
Android Apps mit Xamarin entwickelnAndré Krämer
 
Sencha Touch & PhoneGap
Sencha Touch & PhoneGapSencha Touch & PhoneGap
Sencha Touch & PhoneGapStefan Kolb
 
Intel XDK: Cross-Plattform Entwicklung – Apps Entwickeln für alle Plattformen...
Intel XDK: Cross-Plattform Entwicklung – Apps Entwickeln für alle Plattformen...Intel XDK: Cross-Plattform Entwicklung – Apps Entwickeln für alle Plattformen...
Intel XDK: Cross-Plattform Entwicklung – Apps Entwickeln für alle Plattformen...Gregor Biswanger
 
Niemals nach Mitternacht füttern - Grüne Roboter überall!
Niemals nach Mitternacht füttern - Grüne Roboter überall!Niemals nach Mitternacht füttern - Grüne Roboter überall!
Niemals nach Mitternacht füttern - Grüne Roboter überall!inovex GmbH
 
jQuery Mobile Kompakt - das Kompendium - über 150 Seiten (typovision)
jQuery Mobile Kompakt  - das Kompendium - über 150 Seiten (typovision)jQuery Mobile Kompakt  - das Kompendium - über 150 Seiten (typovision)
jQuery Mobile Kompakt - das Kompendium - über 150 Seiten (typovision)die.agilen GmbH
 
Webinar: Responsive Design
Webinar: Responsive DesignWebinar: Responsive Design
Webinar: Responsive Designkuehlhaus AG
 
HCL Domino 14 - Leap 1.1.2 - DNUG Stammtisch Wien
HCL Domino 14 - Leap 1.1.2 - DNUG Stammtisch Wien HCL Domino 14 - Leap 1.1.2 - DNUG Stammtisch Wien
HCL Domino 14 - Leap 1.1.2 - DNUG Stammtisch Wien DNUG e.V.
 
Dominik Helleberg Widgets Wjax
Dominik Helleberg Widgets WjaxDominik Helleberg Widgets Wjax
Dominik Helleberg Widgets WjaxDominik Helleberg
 
Sencha Touch und PhoneGap
Sencha Touch und PhoneGapSencha Touch und PhoneGap
Sencha Touch und PhoneGapIndiginox
 

Ähnlich wie SharePoint, HTML5 und mobile Geräte (SharePoint UserGroup Dresden 11/2011) (20)

Cross-Apps-Entwicklung für iPhone, Android und Co.
Cross-Apps-Entwicklung für iPhone, Android und Co.Cross-Apps-Entwicklung für iPhone, Android und Co.
Cross-Apps-Entwicklung für iPhone, Android und Co.
 
Die Android Plattform
Die Android PlattformDie Android Plattform
Die Android Plattform
 
Top 10 Internet Trends 2008
Top 10 Internet Trends 2008Top 10 Internet Trends 2008
Top 10 Internet Trends 2008
 
Android Ice Cream Sandwich WJAX 2011
Android Ice Cream Sandwich WJAX 2011Android Ice Cream Sandwich WJAX 2011
Android Ice Cream Sandwich WJAX 2011
 
Mobile Applikationen: Entwicklung, Rollout, Wartung - Tipps und Tricks für di...
Mobile Applikationen: Entwicklung, Rollout, Wartung - Tipps und Tricks für di...Mobile Applikationen: Entwicklung, Rollout, Wartung - Tipps und Tricks für di...
Mobile Applikationen: Entwicklung, Rollout, Wartung - Tipps und Tricks für di...
 
Cross Plattform Entwicklung für Mobile Anwendungen
Cross Plattform Entwicklung für Mobile AnwendungenCross Plattform Entwicklung für Mobile Anwendungen
Cross Plattform Entwicklung für Mobile Anwendungen
 
Cross-Apps-Entwicklung für iPhone, Android und Co.
Cross-Apps-Entwicklung für iPhone, Android und Co.Cross-Apps-Entwicklung für iPhone, Android und Co.
Cross-Apps-Entwicklung für iPhone, Android und Co.
 
Digital Media Night - Responsive Web Design
Digital Media Night - Responsive Web DesignDigital Media Night - Responsive Web Design
Digital Media Night - Responsive Web Design
 
HTML5 Update (am Internet-Briefing)
HTML5 Update (am Internet-Briefing)HTML5 Update (am Internet-Briefing)
HTML5 Update (am Internet-Briefing)
 
DACHNUG50 MX_Workshop.pdf
DACHNUG50 MX_Workshop.pdfDACHNUG50 MX_Workshop.pdf
DACHNUG50 MX_Workshop.pdf
 
Mobile Advertise Convention Jan 2007 / München - Mobile Plattformen im Vergleich
Mobile Advertise Convention Jan 2007 / München - Mobile Plattformen im VergleichMobile Advertise Convention Jan 2007 / München - Mobile Plattformen im Vergleich
Mobile Advertise Convention Jan 2007 / München - Mobile Plattformen im Vergleich
 
Android Apps mit Xamarin entwickeln
Android Apps mit Xamarin entwickelnAndroid Apps mit Xamarin entwickeln
Android Apps mit Xamarin entwickeln
 
Sencha Touch & PhoneGap
Sencha Touch & PhoneGapSencha Touch & PhoneGap
Sencha Touch & PhoneGap
 
Intel XDK: Cross-Plattform Entwicklung – Apps Entwickeln für alle Plattformen...
Intel XDK: Cross-Plattform Entwicklung – Apps Entwickeln für alle Plattformen...Intel XDK: Cross-Plattform Entwicklung – Apps Entwickeln für alle Plattformen...
Intel XDK: Cross-Plattform Entwicklung – Apps Entwickeln für alle Plattformen...
 
Niemals nach Mitternacht füttern - Grüne Roboter überall!
Niemals nach Mitternacht füttern - Grüne Roboter überall!Niemals nach Mitternacht füttern - Grüne Roboter überall!
Niemals nach Mitternacht füttern - Grüne Roboter überall!
 
jQuery Mobile Kompakt - das Kompendium - über 150 Seiten (typovision)
jQuery Mobile Kompakt  - das Kompendium - über 150 Seiten (typovision)jQuery Mobile Kompakt  - das Kompendium - über 150 Seiten (typovision)
jQuery Mobile Kompakt - das Kompendium - über 150 Seiten (typovision)
 
Webinar: Responsive Design
Webinar: Responsive DesignWebinar: Responsive Design
Webinar: Responsive Design
 
HCL Domino 14 - Leap 1.1.2 - DNUG Stammtisch Wien
HCL Domino 14 - Leap 1.1.2 - DNUG Stammtisch Wien HCL Domino 14 - Leap 1.1.2 - DNUG Stammtisch Wien
HCL Domino 14 - Leap 1.1.2 - DNUG Stammtisch Wien
 
Dominik Helleberg Widgets Wjax
Dominik Helleberg Widgets WjaxDominik Helleberg Widgets Wjax
Dominik Helleberg Widgets Wjax
 
Sencha Touch und PhoneGap
Sencha Touch und PhoneGapSencha Touch und PhoneGap
Sencha Touch und PhoneGap
 

Mehr von Christian Heindel

Nintex Forms als Ersatz für InfoPath?
Nintex Forms als Ersatz für InfoPath?Nintex Forms als Ersatz für InfoPath?
Nintex Forms als Ersatz für InfoPath?Christian Heindel
 
MobileCamp 2014: on{x} - Google Now zum Selberbauen
MobileCamp 2014: on{x} - Google Now zum SelberbauenMobileCamp 2014: on{x} - Google Now zum Selberbauen
MobileCamp 2014: on{x} - Google Now zum SelberbauenChristian Heindel
 
Social Workflows mit Nintex Workflow und SharePoint 2013
Social Workflows mit Nintex Workflow und SharePoint 2013Social Workflows mit Nintex Workflow und SharePoint 2013
Social Workflows mit Nintex Workflow und SharePoint 2013Christian Heindel
 
Apps für SharePoint 2013 (Office Store, Windows 8, Windows Phone 8)
Apps für SharePoint 2013 (Office Store, Windows 8, Windows Phone 8)Apps für SharePoint 2013 (Office Store, Windows 8, Windows Phone 8)
Apps für SharePoint 2013 (Office Store, Windows 8, Windows Phone 8)Christian Heindel
 
Asynchrone Echtzeitanwendungen für SharePoint mit SignalR und knockout.js
Asynchrone Echtzeitanwendungen für SharePoint mit SignalR und knockout.jsAsynchrone Echtzeitanwendungen für SharePoint mit SignalR und knockout.js
Asynchrone Echtzeitanwendungen für SharePoint mit SignalR und knockout.jsChristian Heindel
 
European SharePoint Conference: Mobile Applications for SharePoint using HTML5
European SharePoint Conference: Mobile Applications for SharePoint using HTML5European SharePoint Conference: Mobile Applications for SharePoint using HTML5
European SharePoint Conference: Mobile Applications for SharePoint using HTML5Christian Heindel
 
Mobile applications for SharePoint using HTML5
Mobile applications for SharePoint using HTML5Mobile applications for SharePoint using HTML5
Mobile applications for SharePoint using HTML5Christian Heindel
 

Mehr von Christian Heindel (7)

Nintex Forms als Ersatz für InfoPath?
Nintex Forms als Ersatz für InfoPath?Nintex Forms als Ersatz für InfoPath?
Nintex Forms als Ersatz für InfoPath?
 
MobileCamp 2014: on{x} - Google Now zum Selberbauen
MobileCamp 2014: on{x} - Google Now zum SelberbauenMobileCamp 2014: on{x} - Google Now zum Selberbauen
MobileCamp 2014: on{x} - Google Now zum Selberbauen
 
Social Workflows mit Nintex Workflow und SharePoint 2013
Social Workflows mit Nintex Workflow und SharePoint 2013Social Workflows mit Nintex Workflow und SharePoint 2013
Social Workflows mit Nintex Workflow und SharePoint 2013
 
Apps für SharePoint 2013 (Office Store, Windows 8, Windows Phone 8)
Apps für SharePoint 2013 (Office Store, Windows 8, Windows Phone 8)Apps für SharePoint 2013 (Office Store, Windows 8, Windows Phone 8)
Apps für SharePoint 2013 (Office Store, Windows 8, Windows Phone 8)
 
Asynchrone Echtzeitanwendungen für SharePoint mit SignalR und knockout.js
Asynchrone Echtzeitanwendungen für SharePoint mit SignalR und knockout.jsAsynchrone Echtzeitanwendungen für SharePoint mit SignalR und knockout.js
Asynchrone Echtzeitanwendungen für SharePoint mit SignalR und knockout.js
 
European SharePoint Conference: Mobile Applications for SharePoint using HTML5
European SharePoint Conference: Mobile Applications for SharePoint using HTML5European SharePoint Conference: Mobile Applications for SharePoint using HTML5
European SharePoint Conference: Mobile Applications for SharePoint using HTML5
 
Mobile applications for SharePoint using HTML5
Mobile applications for SharePoint using HTML5Mobile applications for SharePoint using HTML5
Mobile applications for SharePoint using HTML5
 

SharePoint, HTML5 und mobile Geräte (SharePoint UserGroup Dresden 11/2011)

  • 1. SharePoint, HTML5 und mobile Geräte Christian Heindel Projektleiter und Softwareentwickler Twi @c_heindel
  • 2. Christian Heindel • Projektleiter und Softwareentwickler bei Communardo • Über zehn Jahre Berufserfahrung im Bereich Softwareentwicklung, davon über vier Jahre mit Microsoft SharePoint • Unternehmenslösungen für Internet, Intranet, Desktop und mobile Geräte • Aktueller Fokus: HTML5, SharePoint 2010, mobile Anwendungen, Collaboration und Social Media • Zertifiziert als MCTS und nach IPMA 4-L-C • ^ @c_heindel • Blog: http://blog.christian-heindel.de
  • 3.
  • 4. Agenda 1. Einleitung, Marktanteile, Pro & Contra native Anwendungen, HTML5 2. Werkzeuge, Tipps & Tricks 3. SharePoint + HTML5 4. DEMO 5. Diskussion
  • 5. Einleitung Die Herausforderung: • Große Anzahl an verschiedenen Zielplatformen • Kein klarer Marktführer, nicht wie beim Desktop • Endlose Liste an Herstellern und Geräten Plattformen für mobile Geräte: • MeeGo (MobLin+Maemo) (Intel/Nokia), Android (Google), iOS (Apple), WebOS (HP), Windows Mobile, Windows Phone (Microsoft), BlackBerry OS (RIM), Symbian, Bada (Samsung), Qt, J2ME (Oracle), Brew (Quallcomm) Zusätzlich gibt es auch noch NetBooks und Tablets mit: • Windows, Linux, OS X, Chrome OS
  • 6. Wachstum und Veränderung • Von 2009 zu 2010 wurden 72% mehr SmartPhones verkauft (20% aller Geräte) • Von 2010 zu 2011 wurden 42% mehr SmartPhones verkauft (26% aller Geräte) 3Q11 3Q11 Market 3Q10 3Q10 Market Operating Units Share (%) Units Share (%) System Android 60,490.4 52.5 20,544.0 25.3 Symbian 19,500.1 16.9 29,480.1 36.3 iOS 17,295.3 15.0 13,484.4 16.6 RIM 12,701.1 11.0 12,508.3 15.4 Bada 2,478.5 2.2 920.6 1.1 Microsoft 1,701.9 1.5 2,203.9 2.7 Others 1,018.1 0.9 1,991.3 2.5 Total 115,185.4 100 81,132.6 100 Worldwide Smartphone Sales to End Users by Operating System in 3Q11 (Thousands of Units) Source: Gartner (November 2011) Total phones: 440,502.2
  • 8. PRO – Native Anwendungen Marketing • Präsenz in App Stores ist gut für die Sichtbarkeit Ihres Produkts • Das ist wichtig bei Produkten für private Konsumenten, aber nicht so wichtig bei Produkten für Unternehmen. Performance, Look & Feel • Native Anwendungen laufen schneller und lassen sich besser integrieren. Möglichkeiten • Browser bekommen nicht auf alle Funktionen Zugriff. Schwierig wird es z.B. beim Adressbuch und der Kamera.
  • 9. CONTRA – Native Anwendungen Geschäftsrisiko • Wird der Anbieter meine Anwendung in seinem Markt genehmigen? • Wie lang wird er dafür benötigen? Rechtliches • Es müssen jeweils individuelle Verträge abgeschlossen und Regeln beachtet werden. Ein Haufen Arbeit und Kosten • Versuchen Sie mal gleichzeitig hier etwas zu veröffentlichen: App Store (Apple), Android Market (Google), Amazon Appstore for Android, BlackBerry App World (RIM), Ovi Store (Nokia), HP App Catalog (WebOS), Windows Marketplace for Mobile, Windows Phone Marketplace (Microsoft), Samsung apps • Im Schnitt 30% Umsatzbeteiligung für die App Stores. • Spezialisierte Programmierer für die verschiedenen Plattformen notwendig. • Frameworks wie PhoneGap, RhoMobile, AppCelerator verlässlich? • Suchmaschinen werden Ihre App nicht indexieren.
  • 10. Programmiersprachen auf mobilen Plattformen Was einige können: • Objective C (iOS) • C#, XAML (Windows Phone) • Java (Android) • Qt (C++) (Symbian, Maemo) Was alle können: • HTML • JavaScript • CSS
  • 11. Browserunterstützung auf mobilen Plattformen am Beispiel von jQuery Mobile 1.0 (16.11.2011) A-grade – Full enhanced experience with Ajax-based animated page transitions. • Apple iOS 3.2-5.0 - Tested on the original iPad (4.3 / 5.0), iPad 2 (4.3), original iPhone (3.1), iPhone 3 (3.2), 3GS (4.3), and 4 (4.3 / 5.0) • Android 2.1-2.3 – Tested on the HTC Incredible (2.2), original Droid (2.2), Nook Color (2.2), HTC Aria (2.1), Google Nexus S (2.3). Functional on 1.5 & 1.6 but performance may be sluggish, tested on Google G1 (1.5) • Android Honeycomb- Tested on the Samsung Galaxy Tab 10.1 and Motorola XOOM • Windows Phone 7-7.5 – Tested on the HTC Surround (7.0) HTC Trophy (7.5), and LG-E900 (7.5) • Blackberry 6.0 – Tested on the Torch 9800 and Style 9670 • Blackberry 7 – Tested on BlackBerry® Torch 9810 • Blackberry Playbook – Tested on PlayBook version 1.0.1 / 1.0.5 • Palm WebOS (1.4-2.0) – Tested on the Palm Pixi (1.4), Pre (1.4), Pre 2 (2.0) • Palm WebOS 3.0 – Tested on HP TouchPad • Firebox Mobile (Beta) – Tested on Android 2.2 • Opera Mobile 11.0: Tested on the iPhone 3GS and 4 (5.0/6.0), Android 2.2 (5.0/6.0) • Meego 1.2 – Tested on Nokia 950 and N9 • Kindle 3 and Fire: Tested on the built-in WebKit browser for each • Chrome Desktop 11-15 - Tested on OS X 10.6.7 and Windows 7 • Firefox Desktop 4-8 – Tested on OS X 10.6.7 and Windows 7 • Internet Explorer 7-9 – Tested on Windows XP, Vista and 7 (minor CSS issues) • Opera Desktop 10-11 - Tested on OS X 10.6.7 and Windows 7 B-grade – Enhanced experience except without Ajax navigation features. • Blackberry 5.0: Tested on the Storm 2 9550, Bold 9770 • Opera Mini (5.0-6.0) - Tested on iOS 3.2/4.3 • Nokia Symbian^3 - Tested on Nokia N8 (Symbian^3), C7 (Symbian^3), also works on N97 (Symbian^1) C-grade – Basic, non-enhanced HTML experience that is still functional • Blackberry 4.x - Tested on the Curve 8330 • Windows Mobile - Tested on the HTC Leo (WInMo 5.2) • All older smartphone platforms and featurephones – Any device that doesn’t support media queries will receive the basic, C grade experience Not Officially Supported – May work, but haven’t been thoroughly tested or debugged • Samsung Bada – The project doesn’t currently have test devices or emulators, but current support is known to be fairly good.
  • 12. Was ist neu mit HTML5? • Canvas (2D and 3D) (SVG) • Channel messaging • WebSocket API and • Cross-document protocol messaging • Web origin concept • Geolocation • Web storage • MathML • Web SQL database • Microdata • Web Workers • Server-Sent events • XMLHttpRequest Level 2 • Scalable Vector Graphics
  • 14. Agenda 1. Einleitung, Marktanteile, Pro & Contra native Anwendungen, HTML5 2. Werkzeuge, Tipps & Tricks 3. SharePoint + HTML5 4. DEMO 5. Diskussion
  • 15. HTML5 Browserkompatibilität http://www.caniuse.com/ • Unterstützt meine Zielplatform eine bestimmte Funktion die ich nutzen möchte? • Welche Plattformen verliere ich, wenn ich ein bestimmtes Feature verwenden will?
  • 16. HTML5 für gute und schlechte Browser Modernizr adds classes to the <html> element which allow you to target specific browser functionality in your stylesheet. You don't actually need to write any Javascript to use it.
  • 17. jQuery Mobile: Touch-Optimized Web Framework for Smartphones & Tablets A unified, HTML5-based user interface system for all popular mobile device platforms, built on the rock- solid jQuery and jQuery UI foundation. Its lightweight code is built with progressive enhancement, and has a flexible, easily themeable design. http://jquerymobile.com/
  • 18. HTML5 framework for applications • Sencha Touch – Mobile Web App Framework (from the creators of ExtJS) PS: I like their comprehensive documentation on offline apps. ;-) 18 They are explaining how you use this http://dev.w3.org/html5/offline-webapps/ the right way…
  • 19. Für Minimalisten Zepto.js is a minimalist JavaScript framework for mobile WebKit browsers, with a jQuery- compatible syntax.
  • 20. HTML5 Template für mobile Websites Mobile Boilerplate http://html5boilerplate.com/mobile/
  • 21. Herangehensweise: Mobile first! Mobile first development (yiibu-style, http://yiibu.com/) - They also have tips for Nokia browsers… ;-) A practical approach: • Design the product. • Implement the product using web standards. • Launch the product. • Run into problems. • Translate product design into an iPhone* app. • Launch product on iTunes*. * insert other platform here Apps vs. the Web • http://www.alistapart.com/articles/apps-vs-the-web/
  • 22. Performance-Tipps • Images slow things down immensely – get rid of them • Avoid text-shadow & box-shadow • Hardware-acceleration is quite new… and buggy • Use touch events whenever you can (ontouchmove > onmousemove > onclick) • Avoid opacity • Hand-code JavaScript and CSS (frameworks are heavy, no Prototype, no jQuery) • Use translate3d, not translate
  • 23. HTML5 in native Anwendungen umwandeln • Es gibt eine Reihe an Wrappen die Ihren HTML5 Code für verschiedene Platformen aufbereiten. • Diese sind in der Regel langsam, buggy und haben begrenzten Funktionsumfang und Support. • In den meisten Fällen entwickeln Sie lieber echte native Anwendungen. • Es gibt Ausnahmen: eBooks via HTML5 http://www.lakercompendium.com/
  • 24. Agenda 1. Einleitung, Marktanteile, Pro & Contra native Anwendungen, HTML5 2. Werkzeuge, Tipps & Tricks 3. SharePoint + HTML5 4. DEMO 5. Diskussion
  • 25. HTML5 + SharePoint: Einschränkungen • The page won’t validate as proper HTML5 code. (SharePoint outputs content as XHTML 1.0 natively.) • contenteditable not supported. (Editor) • Ribbon positioning will fail. (Workaround) • Out-of-the-box SharePoint master pages need to be adjusted. (v5.master) Change document type to: • <!DOCTYPE HTML> Remove: • <meta http-equiv="X-UA-Compatible" content="IE=8" />
  • 26. V5.MASTER • New HTML5 document type declaration • Revised <head> content to adhere to new HTML5 standards and best practices • New HTML5 semantic layout (<header>, <footer>, <section>, etc.) • Uses html5shim for backwards-compatibility • Responsive CSS3 media queries http://kyleschaeffer.com/sharepoint/v5-responsive- html5-master-page/
  • 28. Mobility Redirect vs. ContentEditable If you do not want to edit from mobile devices, you might just want to disable the mobility redirect. Disable-SPFeature -Identity MobilityRedirect -Url http://yoursite <!-MobilityRedirect Feature-> <Feature ID="{f41cc668-37e5-4743-b4a8- 74d1db3fd8a4}" Name="FeatureDefinition/f41cc668-37e5- 4743-b4a8-74d1db3fd8a4" SourceVersion="1.0.0.0" />
  • 29. iOS und SharePoint – Redirect? ContentEditable not supported? a) Automatic switch to mobile version <system>inetpubwwwrootwssVirtualDirectories80App_browserscompat.browser <!-- iPad Safari Browser --> <!-- sample UA "Mozilla/5.0 (iPad; U; CPU OS 4_2_1 like Mac OS X; en- us) AppleWebKit/533.17.9 (KHTML, like Gecko) Version/5.0.2 Mobile/8C148 Safari/6533.18.5" --> <browser id="iPadSafari" parentID="AppleSafari"> <identification> <userAgent match="iPad" /> <userAgent match="Mobile" /> </identification> <capabilities> <capability name="isMobileDevice" value="true" /> <capability name="canInitiateVoiceCall" value="true" /> <capability name="optimumPageWeight" value="1500" /> <capability name="requiresViewportMetaTag" value="true" /> <capability name="supportsTouchScreen" value="true" /> <capability name="telephoneNumberDetectionDisabled" value="true" /> </capabilities> </browser>
  • 30. iOS und SharePoint – Redirect? ContentEditable not supported? b) Manually switch to mobile version http:// URL /m/ http:// URL /_layouts/mobile/default.aspx ?mobile=1 c) For short /m/ version, the MobilityRedirect feature has to be activated. See also: Mobile development with SharePoint Foundation http://msdn.microsoft.com/en-us/library/ms464268.aspx and: http://support.microsoft.com/kb/930147
  • 31. Agenda 1. Einleitung, Marktanteile, Pro & Contra native Anwendungen, HTML5 2. Werkzeuge, Tipps & Tricks 3. SharePoint + HTML5 4. DEMO 5. Diskussion
  • 32.
  • 33.
  • 34.
  • 36. Agenda 1. Einleitung, Marktanteile, Pro & Contra native Anwendungen, HTML5 2. Werkzeuge, Tipps & Tricks 3. SharePoint + HTML5 4. DEMO 5. Diskussion
  • 37. Erfahrungen? Anwendungsfälle? Pläne? • Frank Ehrlich, IT & Logistik Prozesse, KOMSA AG – Lagermanagement? – Entstörung und Installation vor Ort? • Michael John, Leiter Technischer Dienst, Staatliche Kunstsammlung Dresden – Mobile Guides? QR-Tags? Digitale Warteschlange? • Bernd Robel, Sr. Engineer IT, GLOBALFOUNDRIES – Standortbezogene Unterlagen für Audits? • Stefan Rönsch, Projektmanager, Universitätsklinikum Carl Gustav Carus – Tablets? Wegweiser? Notfallnummern?
  • 38. Danke für Ihre Aufmerksamkeit! Fragen? http://www.christian-heindel.de @c_heindel