SlideShare a Scribd company logo
1 of 8
09.03.2010




    IPhone Web-Applikationen
      mit Domino

                                 Bernhard Kolb
             http://ebetest.ebe-edv.com/iphone




EBE GmbH
   Bernhard Kolb & Team
   www.ebe-edv.com
   Domino Consulting & Developent
   .net Development
   Windows Mobile
   iPhone




    Domino Web Apps fürs iPhone
   Development environment
   Web Layout für Mobile Safari
   iWebKit Framework
   iPhone services (email, SMS, Phonecall)
   Drawing with Javascript
   Geolocation – wo bin ich?
   Google Maps
   Interaktion mit Domino
        Agent starten per AJAX
        Webservice konsumieren




                                                         1
09.03.2010




Prerequisites for Development

   Safari 4
   iPhone Emulator (MobiOne)
   Domino Designer
   iWebkit Framework (www.iwebkit.net)
   iPhone




Web App vs. iPhone Web App
   unübersichtlich         klar, einfach und begreifbar
   schlecht bedienbar      Look and Feel Like iPhone Native Apps




iWebKit Framework
   CSS
   Javascript Library
   Nette Bilder (32x32)

   www.iWebkit.net




                                                                             2
09.03.2010




    Basic layout
   HTML-Header
<meta content="yes" name="apple-mobile-web-app-capable" />
<meta content="minimum-scale=1.0, width=device-width,
maximum-scale=0.6667,
user-scalable=no" name="viewport" />
<link href="css/iwkstyle.css" rel="stylesheet" type="text/css" />
<script src="javascript/iwkfunctions.js" type="text/javascript"
language=”JavaScript” ></script>




    Screen Aufteilung
   TopBar
<div id="topbar">
 <div id="title">AJAX</div>
 <div id="leftnav">
   <a href="index">
  <img alt="home" src="images/home.png“ /></a>
 </div>
</div>

   Content
   Footer
        <div id="footer">
         <a href=http://www.ebe-
        edv.com>Bernhard Kolb, EBE</a>
        </div>




    Content Elemente
        ul class=„pageitem“
        li class=„textbox“
        li class=„menu“
             a
             Img (32x32), span
                 Class „name“,“comment“,“arrow“




                                                                            3
09.03.2010




Form Elemente
   li class=„form“
       <input placeholder=„default“ type=„text“/>
       <button name=„button1“>OK</button>
       <input name=„choice“ type=„checkbox“ />


   Beschreibung
       <span class=„choice“>
            <span class=„name“>text</span>
            <element…>




iPhone specifics
   Bist Du ein iPhone?
       Navigator.userAgent.indexOf(„iPhone“)!=-1

   Orientatation
       window.orientation
        0, 90, 180, -90
       <body onorientationchange=„myhandler“>




Graphics…
   <Canvas> / context 2d
    var context =
    document.getElementById('map_canvas').getContext(„2d“)

   fillRect(x, y, width, height)
   arc
   Image
   Transformation
       transform(x,y)
       scale(x,y)
       rotate(angle)




                                                                     4
09.03.2010




          iPhone Services
            Phone
            Mail
            Google Maps
            Sms




         iPhone Services - Phone
        <a target="_self" href="tel:(978) 555-1212" onclick="return
         (navigator.userAgent.indexOf('iPhone') != -1)">(978) 555-1212</a>




         iPhone Services - Email
       <a target="_self" href="mailto:bkolb@bkolb.at?subject=EC2010"
        onclick="return (navigator.userAgent.indexOf('iPhone') != -1)">
        bkolb@bkolb.at </a>




                                                                                     5
09.03.2010




iPhone Services – Google Maps


                              <a
                               href="http://maps.google.com/maps?q=Wien
                               +1200+Dresdnerstraße+43+(Office)">Map
                               To Office</a>
                              <a
                               href="http://maps.google.com/maps?saddr=
                               Wien+1200+Dresdnerstraße+43&daddr=ste
                               phansplatz+Wien">Route..</a>




iPhone Services – Sms
    <a target="_self" href="sms:+43 1 33 40 295 850
    " onclick="return (navigator.userAgent.indexOf('iPhone') != -1)">
       sms</a>




    Audio & Video
    <embed target="myself" type="audio/x-mp3" loop="true"
     src="music.png" href="music1.mp3" width="84" height="84"
     scale="1"/>
    <embed target="myself" src="youtube.png"
     href=„myMovie.mp4" type="video/quicktime" width="84"
     height="84" scale="1"/>




                                                                                  6
09.03.2010




          Geo Location ermitteln
              function gps_click() {
                         navigator.geolocation.getCurrentPosition(success, fail);
                      }
               function success(position) // 'position' can be named anything
                      {
                        var x1= position.coords.latitude;
                        var y1= position.coords.longitude;
                        alert("latitude: " + x1 + " " + "longitude: " + y1);
                        window.open("http://maps.google.com/maps?q=" + x1 + "," + y1);
                      }
               function fail() {
                         alert('failed');
                      }




          Graphics & Visual Effects
function drawRectangle() {                      function drawCircle() {
  var canvas =                                    var canvas = document.getElementById('Circle_Canvas');
   document.getElementById('map_canvas');                 var context = canvas.getContext('2d');
   var context = canvas.getContext('2d');                 context.beginPath();
   context.fillStyle = "rgba(255,0,0,0.5)";
                                                          context.arc(125,65,30,0, 360, false);
   context.strokeRect(10,10,150,140);
   context.fillRect(15,15,140,130);                       context.fill();
       }                                                           // Create empty circle
<canvas id="map_canvas" width="300"                       context.beginPath();
   height="300" style="position:absolute;                 context.arc(125,65,35,0, 360, false);
   left:10px; top:60px; z-index:1"/>
                                                          context.stroke();
                                                          context.endPath();
                                                        }
                                                <canvas id="Circle_Canvas" width="300" height="300"
                                                style="position:absolute; left:10px; top:50px; z-index:1"/>




               Web Service mit JavaScript
 <script type="text/javascript" src="jquery-1.4.min.js"></script>
 <script type="text/javascript" src="jqSOAPClient.beta.js"></script>


 var action = "testws?OpenWebService";
 var body = new SOAPObject("X").val($("#X").val());
 body.ns = {name: "urn",uri: "urn:DefaultNamespace"};
 var sr = new SOAPRequest("MAL2", body);
 SOAPClient.Proxy = action;
 SOAPClient.SOAPServer = 'testws?OpenWebService';
 SOAPClient.SendRequest(sr, function(resp)
    { $("#Mal2Result").text($(resp).text());});




                                                                                                                      7
09.03.2010




Schnellzugriff auf Webseite




Domino specials…
   DB Properties
       Launch – Page – start
   Page Properties
       HTML, pass-through-HTML
   Agent Properties
       target: none
   WebService
       Port Type Class




Danke für Ihre Aufmerksamkeit
   Web App
       http://ebetest.ebe-edv.com/iphone
   Source Code
       http://ebetest.ebe-edv.com/iphone/iPhoneDB.zip
   Book
       Professional iPhone and iPod touch Programming:
        Building Applications for Mobile Safari




                                                                  8

More Related Content

Viewers also liked

EyeforTravel - Customer Relationship Management in Travel USA (2008)
EyeforTravel - Customer Relationship Management in Travel USA (2008)EyeforTravel - Customer Relationship Management in Travel USA (2008)
EyeforTravel - Customer Relationship Management in Travel USA (2008)EyeforTravel
 
Noticias sobre medio ambiente
Noticias sobre medio ambiente Noticias sobre medio ambiente
Noticias sobre medio ambiente CarmenLamazares92
 
страницы из Gastro #11 inside_tarasova
страницы из Gastro #11 inside_tarasovaстраницы из Gastro #11 inside_tarasova
страницы из Gastro #11 inside_tarasovahelen-66
 
An Analysis of U.S. P&C Insurance Customer-Facing Mobile Apps
An Analysis of U.S. P&C Insurance Customer-Facing Mobile AppsAn Analysis of U.S. P&C Insurance Customer-Facing Mobile Apps
An Analysis of U.S. P&C Insurance Customer-Facing Mobile AppsCognizant
 
Chapter 1 the world through our senses
Chapter 1 the world through our sensesChapter 1 the world through our senses
Chapter 1 the world through our sensesNursabiha Che Mazlan
 
Andy Lulham, Head of International at Oddschecker. Presentation at Gaming in ...
Andy Lulham, Head of International at Oddschecker. Presentation at Gaming in ...Andy Lulham, Head of International at Oddschecker. Presentation at Gaming in ...
Andy Lulham, Head of International at Oddschecker. Presentation at Gaming in ...Gran Via Online
 
Treball xarxes socials
Treball xarxes socialsTreball xarxes socials
Treball xarxes socialsLucy April
 
Evolución de la ortografía de la lengua
Evolución de la ortografía de la lenguaEvolución de la ortografía de la lengua
Evolución de la ortografía de la lenguaCEUNI
 
Presentación del grafema p
Presentación del grafema pPresentación del grafema p
Presentación del grafema pFco Fig
 
AP Automation for EBS or PeopleSoft with Oracle WebCenter
AP Automation for EBS or PeopleSoft with Oracle WebCenterAP Automation for EBS or PeopleSoft with Oracle WebCenter
AP Automation for EBS or PeopleSoft with Oracle WebCenterBrian Huff
 
Teambildung in Projekten
Teambildung in ProjektenTeambildung in Projekten
Teambildung in ProjektenMarkus Groß
 
Cuaderno de trabajo sobre la revolución francesa
Cuaderno de trabajo sobre la revolución francesaCuaderno de trabajo sobre la revolución francesa
Cuaderno de trabajo sobre la revolución francesaetorija82
 

Viewers also liked (20)

EyeforTravel - Customer Relationship Management in Travel USA (2008)
EyeforTravel - Customer Relationship Management in Travel USA (2008)EyeforTravel - Customer Relationship Management in Travel USA (2008)
EyeforTravel - Customer Relationship Management in Travel USA (2008)
 
Noticias sobre medio ambiente
Noticias sobre medio ambiente Noticias sobre medio ambiente
Noticias sobre medio ambiente
 
World travel reports
World travel reports World travel reports
World travel reports
 
Hacia un uso inteligente del dinero, hacia una reforma profunda del tejido fi...
Hacia un uso inteligente del dinero, hacia una reforma profunda del tejido fi...Hacia un uso inteligente del dinero, hacia una reforma profunda del tejido fi...
Hacia un uso inteligente del dinero, hacia una reforma profunda del tejido fi...
 
страницы из Gastro #11 inside_tarasova
страницы из Gastro #11 inside_tarasovaстраницы из Gastro #11 inside_tarasova
страницы из Gastro #11 inside_tarasova
 
An Analysis of U.S. P&C Insurance Customer-Facing Mobile Apps
An Analysis of U.S. P&C Insurance Customer-Facing Mobile AppsAn Analysis of U.S. P&C Insurance Customer-Facing Mobile Apps
An Analysis of U.S. P&C Insurance Customer-Facing Mobile Apps
 
Ataques al cuerpo
Ataques al cuerpoAtaques al cuerpo
Ataques al cuerpo
 
Chapter 1 the world through our senses
Chapter 1 the world through our sensesChapter 1 the world through our senses
Chapter 1 the world through our senses
 
Andy Lulham, Head of International at Oddschecker. Presentation at Gaming in ...
Andy Lulham, Head of International at Oddschecker. Presentation at Gaming in ...Andy Lulham, Head of International at Oddschecker. Presentation at Gaming in ...
Andy Lulham, Head of International at Oddschecker. Presentation at Gaming in ...
 
Treball xarxes socials
Treball xarxes socialsTreball xarxes socials
Treball xarxes socials
 
Autoestima
AutoestimaAutoestima
Autoestima
 
Evolución de la ortografía de la lengua
Evolución de la ortografía de la lenguaEvolución de la ortografía de la lengua
Evolución de la ortografía de la lengua
 
Talgo 250
Talgo 250Talgo 250
Talgo 250
 
2.1 minerales oxidados
2.1 minerales oxidados2.1 minerales oxidados
2.1 minerales oxidados
 
Presentación del grafema p
Presentación del grafema pPresentación del grafema p
Presentación del grafema p
 
AP Automation for EBS or PeopleSoft with Oracle WebCenter
AP Automation for EBS or PeopleSoft with Oracle WebCenterAP Automation for EBS or PeopleSoft with Oracle WebCenter
AP Automation for EBS or PeopleSoft with Oracle WebCenter
 
Oracle rac
Oracle racOracle rac
Oracle rac
 
Ped crn 2013 2017
Ped crn 2013 2017Ped crn 2013 2017
Ped crn 2013 2017
 
Teambildung in Projekten
Teambildung in ProjektenTeambildung in Projekten
Teambildung in Projekten
 
Cuaderno de trabajo sobre la revolución francesa
Cuaderno de trabajo sobre la revolución francesaCuaderno de trabajo sobre la revolución francesa
Cuaderno de trabajo sobre la revolución francesa
 

Similar to iPhone - web development lotus notes domino

Corso WebApp iOS - Lezione 07: iOS WebApp Anatomy
Corso WebApp iOS - Lezione 07: iOS WebApp AnatomyCorso WebApp iOS - Lezione 07: iOS WebApp Anatomy
Corso WebApp iOS - Lezione 07: iOS WebApp AnatomyAndrea Picchi
 
Making your site mobile-friendly - DevCSI Reading 21.07.2010
Making your site mobile-friendly - DevCSI Reading 21.07.2010Making your site mobile-friendly - DevCSI Reading 21.07.2010
Making your site mobile-friendly - DevCSI Reading 21.07.2010Patrick Lauke
 
SVCC 2013 D3.js Presentation (10/05/2013)
SVCC 2013 D3.js Presentation (10/05/2013)SVCC 2013 D3.js Presentation (10/05/2013)
SVCC 2013 D3.js Presentation (10/05/2013)Oswald Campesato
 
2013 URISA Track, Kickstarter for JavaScript Web and Mobile GIS Development b...
2013 URISA Track, Kickstarter for JavaScript Web and Mobile GIS Development b...2013 URISA Track, Kickstarter for JavaScript Web and Mobile GIS Development b...
2013 URISA Track, Kickstarter for JavaScript Web and Mobile GIS Development b...GIS in the Rockies
 
Designing for the Mobile Web
Designing for the Mobile WebDesigning for the Mobile Web
Designing for the Mobile WebRefresh Bmore
 
"Designing for the Mobile Web" by Michael Dick (December 2010)
"Designing for the Mobile Web" by Michael Dick (December 2010)"Designing for the Mobile Web" by Michael Dick (December 2010)
"Designing for the Mobile Web" by Michael Dick (December 2010)Mike Brenner
 
HTML5 on Mobile
HTML5 on MobileHTML5 on Mobile
HTML5 on MobileAdam Lu
 
3 Approaches to Mobile - An A to Z Primer.
3 Approaches to Mobile - An A to Z Primer.3 Approaches to Mobile - An A to Z Primer.
3 Approaches to Mobile - An A to Z Primer.agup2009
 
How to build a html5 websites.v1
How to build a html5 websites.v1How to build a html5 websites.v1
How to build a html5 websites.v1Bitla Software
 
Mobile Application Development for the Web Developer
Mobile Application Development for the Web DeveloperMobile Application Development for the Web Developer
Mobile Application Development for the Web DeveloperCraig Johnston
 
HTML5 and Mobile
HTML5 and MobileHTML5 and Mobile
HTML5 and Mobiledoodoofish
 
Building mobile apps with the ArcGIS api for Javascript, Esri, Andy Gup and A...
Building mobile apps with the ArcGIS api for Javascript, Esri, Andy Gup and A...Building mobile apps with the ArcGIS api for Javascript, Esri, Andy Gup and A...
Building mobile apps with the ArcGIS api for Javascript, Esri, Andy Gup and A...Esri Nederland
 
Building iPad apps with Flex - 360Flex
Building iPad apps with Flex - 360FlexBuilding iPad apps with Flex - 360Flex
Building iPad apps with Flex - 360Flexdanielwanja
 
Responsive Websites
Responsive WebsitesResponsive Websites
Responsive WebsitesJoe Seifi
 
Multi screen HTML5
Multi screen HTML5Multi screen HTML5
Multi screen HTML5Ron Reiter
 
Web Apps and more
Web Apps and moreWeb Apps and more
Web Apps and moreYan Shi
 

Similar to iPhone - web development lotus notes domino (20)

Corso WebApp iOS - Lezione 07: iOS WebApp Anatomy
Corso WebApp iOS - Lezione 07: iOS WebApp AnatomyCorso WebApp iOS - Lezione 07: iOS WebApp Anatomy
Corso WebApp iOS - Lezione 07: iOS WebApp Anatomy
 
Making your site mobile-friendly - DevCSI Reading 21.07.2010
Making your site mobile-friendly - DevCSI Reading 21.07.2010Making your site mobile-friendly - DevCSI Reading 21.07.2010
Making your site mobile-friendly - DevCSI Reading 21.07.2010
 
Svcc 2013-d3
Svcc 2013-d3Svcc 2013-d3
Svcc 2013-d3
 
SVCC 2013 D3.js Presentation (10/05/2013)
SVCC 2013 D3.js Presentation (10/05/2013)SVCC 2013 D3.js Presentation (10/05/2013)
SVCC 2013 D3.js Presentation (10/05/2013)
 
2013 URISA Track, Kickstarter for JavaScript Web and Mobile GIS Development b...
2013 URISA Track, Kickstarter for JavaScript Web and Mobile GIS Development b...2013 URISA Track, Kickstarter for JavaScript Web and Mobile GIS Development b...
2013 URISA Track, Kickstarter for JavaScript Web and Mobile GIS Development b...
 
Designing for the Mobile Web
Designing for the Mobile WebDesigning for the Mobile Web
Designing for the Mobile Web
 
"Designing for the Mobile Web" by Michael Dick (December 2010)
"Designing for the Mobile Web" by Michael Dick (December 2010)"Designing for the Mobile Web" by Michael Dick (December 2010)
"Designing for the Mobile Web" by Michael Dick (December 2010)
 
mobl
moblmobl
mobl
 
HTML5 on Mobile
HTML5 on MobileHTML5 on Mobile
HTML5 on Mobile
 
3 Approaches to Mobile - An A to Z Primer.
3 Approaches to Mobile - An A to Z Primer.3 Approaches to Mobile - An A to Z Primer.
3 Approaches to Mobile - An A to Z Primer.
 
How to build a html5 websites.v1
How to build a html5 websites.v1How to build a html5 websites.v1
How to build a html5 websites.v1
 
Mobile Application Development for the Web Developer
Mobile Application Development for the Web DeveloperMobile Application Development for the Web Developer
Mobile Application Development for the Web Developer
 
HTML5 and Mobile
HTML5 and MobileHTML5 and Mobile
HTML5 and Mobile
 
Building mobile apps with the ArcGIS api for Javascript, Esri, Andy Gup and A...
Building mobile apps with the ArcGIS api for Javascript, Esri, Andy Gup and A...Building mobile apps with the ArcGIS api for Javascript, Esri, Andy Gup and A...
Building mobile apps with the ArcGIS api for Javascript, Esri, Andy Gup and A...
 
Web app
Web appWeb app
Web app
 
Building iPad apps with Flex - 360Flex
Building iPad apps with Flex - 360FlexBuilding iPad apps with Flex - 360Flex
Building iPad apps with Flex - 360Flex
 
Web app
Web appWeb app
Web app
 
Responsive Websites
Responsive WebsitesResponsive Websites
Responsive Websites
 
Multi screen HTML5
Multi screen HTML5Multi screen HTML5
Multi screen HTML5
 
Web Apps and more
Web Apps and moreWeb Apps and more
Web Apps and more
 

More from dominion

What is a itil and how does it relate to your collaborative environment uklug
What is a itil and how does it relate to your collaborative environment   uklugWhat is a itil and how does it relate to your collaborative environment   uklug
What is a itil and how does it relate to your collaborative environment uklugdominion
 
iOS enterprise
iOS enterpriseiOS enterprise
iOS enterprisedominion
 
cloud session uklug
cloud session uklugcloud session uklug
cloud session uklugdominion
 
Uklug 2011 administrator development synergy
Uklug 2011 administrator development synergyUklug 2011 administrator development synergy
Uklug 2011 administrator development synergydominion
 
Uklug 2011 client management
Uklug 2011 client managementUklug 2011 client management
Uklug 2011 client managementdominion
 
JavaScript blast
JavaScript blastJavaScript blast
JavaScript blastdominion
 
Populating your domino directory or any domino database with tivoli directory...
Populating your domino directory or any domino database with tivoli directory...Populating your domino directory or any domino database with tivoli directory...
Populating your domino directory or any domino database with tivoli directory...dominion
 
Uklug2011 Know your Notes
Uklug2011 Know your NotesUklug2011 Know your Notes
Uklug2011 Know your Notesdominion
 
Taking themes to the next level
Taking themes to the next levelTaking themes to the next level
Taking themes to the next leveldominion
 
Supersize me
Supersize meSupersize me
Supersize medominion
 
Aussie outback
Aussie outbackAussie outback
Aussie outbackdominion
 
Learning to run
Learning to runLearning to run
Learning to rundominion
 
Implementing xpages extension library
Implementing xpages extension libraryImplementing xpages extension library
Implementing xpages extension librarydominion
 
Abb presentation uklug
Abb presentation uklugAbb presentation uklug
Abb presentation uklugdominion
 
Uklug2011.lotus.on.linux.report.technical.edition.v1.0
Uklug2011.lotus.on.linux.report.technical.edition.v1.0Uklug2011.lotus.on.linux.report.technical.edition.v1.0
Uklug2011.lotus.on.linux.report.technical.edition.v1.0dominion
 
Domino testing presentation
Domino testing presentationDomino testing presentation
Domino testing presentationdominion
 
Composite applications tutorial
Composite applications tutorialComposite applications tutorial
Composite applications tutorialdominion
 
Maximizing application performance
Maximizing application performanceMaximizing application performance
Maximizing application performancedominion
 
Error handling in XPages
Error handling in XPagesError handling in XPages
Error handling in XPagesdominion
 

More from dominion (20)

What is a itil and how does it relate to your collaborative environment uklug
What is a itil and how does it relate to your collaborative environment   uklugWhat is a itil and how does it relate to your collaborative environment   uklug
What is a itil and how does it relate to your collaborative environment uklug
 
iOS enterprise
iOS enterpriseiOS enterprise
iOS enterprise
 
cloud session uklug
cloud session uklugcloud session uklug
cloud session uklug
 
Uklug 2011 administrator development synergy
Uklug 2011 administrator development synergyUklug 2011 administrator development synergy
Uklug 2011 administrator development synergy
 
Uklug 2011 client management
Uklug 2011 client managementUklug 2011 client management
Uklug 2011 client management
 
JavaScript blast
JavaScript blastJavaScript blast
JavaScript blast
 
Populating your domino directory or any domino database with tivoli directory...
Populating your domino directory or any domino database with tivoli directory...Populating your domino directory or any domino database with tivoli directory...
Populating your domino directory or any domino database with tivoli directory...
 
Uklug2011 Know your Notes
Uklug2011 Know your NotesUklug2011 Know your Notes
Uklug2011 Know your Notes
 
Quickr
QuickrQuickr
Quickr
 
Taking themes to the next level
Taking themes to the next levelTaking themes to the next level
Taking themes to the next level
 
Supersize me
Supersize meSupersize me
Supersize me
 
Aussie outback
Aussie outbackAussie outback
Aussie outback
 
Learning to run
Learning to runLearning to run
Learning to run
 
Implementing xpages extension library
Implementing xpages extension libraryImplementing xpages extension library
Implementing xpages extension library
 
Abb presentation uklug
Abb presentation uklugAbb presentation uklug
Abb presentation uklug
 
Uklug2011.lotus.on.linux.report.technical.edition.v1.0
Uklug2011.lotus.on.linux.report.technical.edition.v1.0Uklug2011.lotus.on.linux.report.technical.edition.v1.0
Uklug2011.lotus.on.linux.report.technical.edition.v1.0
 
Domino testing presentation
Domino testing presentationDomino testing presentation
Domino testing presentation
 
Composite applications tutorial
Composite applications tutorialComposite applications tutorial
Composite applications tutorial
 
Maximizing application performance
Maximizing application performanceMaximizing application performance
Maximizing application performance
 
Error handling in XPages
Error handling in XPagesError handling in XPages
Error handling in XPages
 

Recently uploaded

2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfhans926745
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdfChristopherTHyatt
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 

Recently uploaded (20)

2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdf
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 

iPhone - web development lotus notes domino

  • 1. 09.03.2010 IPhone Web-Applikationen mit Domino Bernhard Kolb http://ebetest.ebe-edv.com/iphone EBE GmbH  Bernhard Kolb & Team  www.ebe-edv.com  Domino Consulting & Developent  .net Development  Windows Mobile  iPhone Domino Web Apps fürs iPhone  Development environment  Web Layout für Mobile Safari  iWebKit Framework  iPhone services (email, SMS, Phonecall)  Drawing with Javascript  Geolocation – wo bin ich?  Google Maps  Interaktion mit Domino  Agent starten per AJAX  Webservice konsumieren 1
  • 2. 09.03.2010 Prerequisites for Development  Safari 4  iPhone Emulator (MobiOne)  Domino Designer  iWebkit Framework (www.iwebkit.net)  iPhone Web App vs. iPhone Web App  unübersichtlich  klar, einfach und begreifbar  schlecht bedienbar  Look and Feel Like iPhone Native Apps iWebKit Framework  CSS  Javascript Library  Nette Bilder (32x32)  www.iWebkit.net 2
  • 3. 09.03.2010 Basic layout  HTML-Header <meta content="yes" name="apple-mobile-web-app-capable" /> <meta content="minimum-scale=1.0, width=device-width, maximum-scale=0.6667, user-scalable=no" name="viewport" /> <link href="css/iwkstyle.css" rel="stylesheet" type="text/css" /> <script src="javascript/iwkfunctions.js" type="text/javascript" language=”JavaScript” ></script> Screen Aufteilung  TopBar <div id="topbar"> <div id="title">AJAX</div> <div id="leftnav"> <a href="index"> <img alt="home" src="images/home.png“ /></a> </div> </div>  Content  Footer <div id="footer"> <a href=http://www.ebe- edv.com>Bernhard Kolb, EBE</a> </div> Content Elemente  ul class=„pageitem“  li class=„textbox“  li class=„menu“  a  Img (32x32), span  Class „name“,“comment“,“arrow“ 3
  • 4. 09.03.2010 Form Elemente  li class=„form“  <input placeholder=„default“ type=„text“/>  <button name=„button1“>OK</button>  <input name=„choice“ type=„checkbox“ />  Beschreibung  <span class=„choice“>  <span class=„name“>text</span>  <element…> iPhone specifics  Bist Du ein iPhone?  Navigator.userAgent.indexOf(„iPhone“)!=-1  Orientatation  window.orientation 0, 90, 180, -90  <body onorientationchange=„myhandler“> Graphics…  <Canvas> / context 2d var context = document.getElementById('map_canvas').getContext(„2d“)  fillRect(x, y, width, height)  arc  Image  Transformation  transform(x,y)  scale(x,y)  rotate(angle) 4
  • 5. 09.03.2010 iPhone Services  Phone  Mail  Google Maps  Sms iPhone Services - Phone  <a target="_self" href="tel:(978) 555-1212" onclick="return (navigator.userAgent.indexOf('iPhone') != -1)">(978) 555-1212</a> iPhone Services - Email  <a target="_self" href="mailto:bkolb@bkolb.at?subject=EC2010" onclick="return (navigator.userAgent.indexOf('iPhone') != -1)"> bkolb@bkolb.at </a> 5
  • 6. 09.03.2010 iPhone Services – Google Maps  <a href="http://maps.google.com/maps?q=Wien +1200+Dresdnerstraße+43+(Office)">Map To Office</a>  <a href="http://maps.google.com/maps?saddr= Wien+1200+Dresdnerstraße+43&daddr=ste phansplatz+Wien">Route..</a> iPhone Services – Sms <a target="_self" href="sms:+43 1 33 40 295 850 " onclick="return (navigator.userAgent.indexOf('iPhone') != -1)"> sms</a> Audio & Video  <embed target="myself" type="audio/x-mp3" loop="true" src="music.png" href="music1.mp3" width="84" height="84" scale="1"/>  <embed target="myself" src="youtube.png" href=„myMovie.mp4" type="video/quicktime" width="84" height="84" scale="1"/> 6
  • 7. 09.03.2010 Geo Location ermitteln  function gps_click() {  navigator.geolocation.getCurrentPosition(success, fail);  }  function success(position) // 'position' can be named anything  {  var x1= position.coords.latitude;  var y1= position.coords.longitude;  alert("latitude: " + x1 + " " + "longitude: " + y1);  window.open("http://maps.google.com/maps?q=" + x1 + "," + y1);  }  function fail() {  alert('failed');  } Graphics & Visual Effects function drawRectangle() { function drawCircle() { var canvas = var canvas = document.getElementById('Circle_Canvas'); document.getElementById('map_canvas'); var context = canvas.getContext('2d'); var context = canvas.getContext('2d'); context.beginPath(); context.fillStyle = "rgba(255,0,0,0.5)"; context.arc(125,65,30,0, 360, false); context.strokeRect(10,10,150,140); context.fillRect(15,15,140,130); context.fill(); } // Create empty circle <canvas id="map_canvas" width="300" context.beginPath(); height="300" style="position:absolute; context.arc(125,65,35,0, 360, false); left:10px; top:60px; z-index:1"/> context.stroke(); context.endPath(); } <canvas id="Circle_Canvas" width="300" height="300" style="position:absolute; left:10px; top:50px; z-index:1"/> Web Service mit JavaScript <script type="text/javascript" src="jquery-1.4.min.js"></script> <script type="text/javascript" src="jqSOAPClient.beta.js"></script> var action = "testws?OpenWebService"; var body = new SOAPObject("X").val($("#X").val()); body.ns = {name: "urn",uri: "urn:DefaultNamespace"}; var sr = new SOAPRequest("MAL2", body); SOAPClient.Proxy = action; SOAPClient.SOAPServer = 'testws?OpenWebService'; SOAPClient.SendRequest(sr, function(resp) { $("#Mal2Result").text($(resp).text());}); 7
  • 8. 09.03.2010 Schnellzugriff auf Webseite Domino specials…  DB Properties  Launch – Page – start  Page Properties  HTML, pass-through-HTML  Agent Properties  target: none  WebService  Port Type Class Danke für Ihre Aufmerksamkeit  Web App  http://ebetest.ebe-edv.com/iphone  Source Code  http://ebetest.ebe-edv.com/iphone/iPhoneDB.zip  Book  Professional iPhone and iPod touch Programming: Building Applications for Mobile Safari 8