APEX World 2013 APEX & Christian Rokitta. OGh APEX World 9 April 2013



Similar documents
BASIC COMPONENTS. There are 3 basic components in every Apache Cordova project:

Enabling Cordova (aka PhoneGap) on Tizen. René Pourtier / Luc Yriarte

Developing Native JavaScript Mobile Apps Using Apache Cordova. Hazem Saleh

Introduction to PhoneGap

How To Develop A Mobile App With Phonegap

ios SDK possibilities & limitations

ios App Development Using Cordova

Porting Existing PhoneGap Apps to Tizen OS - Development Story

Bridging the Gap: from a Web App to a Mobile Device App

Introduction: The Xcode templates are not available in Cordova or above, so we'll use the previous version, for this recipe.

Retool your HTML/JavaScript to go Mobile

place/business fetch details, removefromfavorite () function, 189 search button handler bind, B BlackBerry build environment

Develop a Native App (ios and Android) for a Drupal Website without Learning Objective-C or Java. Drupaldelphia 2014 By Joe Roberts

Real Life Oracle Mobile Application Framework. Things that you don't get from the developer guide

Chatbots 3.3. Chatbots in Web Applications with RiveScript. Presented by Noah Petherbridge

ANDROID APP DEVELOPMENT: AN INTRODUCTION CSCI /19/14 HANNAH MILLER

Over mij. 17 jaar 17 jaar 2 jaar. 1 week

Introduction to Oracle Mobile Application Framework Raghu Srinivasan, Director Development Mobile and Cloud Development Tools Oracle

SYST35300 Hybrid Mobile Application Development

HP ALM Masters 2014 Connected, collaborative mobile application development for the enterprise HP Anywhere

Developing and deploying mobile apps

Take full advantage of IBM s IDEs for end- to- end mobile development

Operational Decision Manager Worklight Integration

Developing multidevice-apps using Apache Cordova and HTML5. Guadalajara Java User Group Guillermo Muñoz Java Developer

Open Source Telemedicine Android Client Development Introduction

HTTPS hg clone plugin library SSH hg clone plugin library

BUILDING MOBILE WEB APPS WITH PHONEGAP. Matt Zukowski

A Way Out of the Mobile App Development Conundrum

Google Web Toolkit. Introduction to GWT Development. Ilkka Rinne & Sampo Savolainen / Spatineo Oy

the cross platform mobile apps dream Click to edit Master title style Click to edit Master text styles Third level Fourth level» Fifth level

A Guide to Mobile App Development Platforms

QML and JavaScript for Native App Development

... Introduction Acknowledgments... 19

Making Mobile a Reality

PhoneGap Build Starter

Build a Mobile App in 60 Minutes with MAF

Mobile development with Apache OFBiz. Ean Schuessler, Brainfood

Mobile SDK Development Guide

IGW+ Certificate. I d e a l G r o u p i n W e b. International professional web design,

Introduction to BlackBerry Smartphone Web Development Widgets

Generate Android App

How to start with 3DHOP

Dave Haseman, Ross. Hightower. Mobile Development for SAP* ^>. Galileo Press. Bonn. Boston

PhoneGap. Cross-platform Programming Lecture 2. Alessandro Grazioli. Università Degli Studi di Parma. Distributed Systems Group

Extending Oracle Applications on Mobile Using Oracle MAF and Oracle Mobile Security

research: technical implemenation

OpenCV on Android Platforms

HTML5 / NATIVE / HYBRID

OS3036 Put Your ClearPath In Your Pocket

Develop Hybrid Mobile Applications with Apache Cordova & PhoneGap Enterprise

Building Secure Mobile Applications Using MaaS360 SDK and IBM Worklight

Introduction to Tizen SDK Alpha. Taiho Choi Samsung Electronics

Building native mobile apps for Digital Factory

Short notes on webpage programming languages

ORACLE MOBILE APPLICATION FRAMEWORK DATA SHEET

Drupal CMS for marketing sites

Crosswalk: build world class hybrid mobile apps

the intro for RPG programmers Making mobile app development easier... of KrengelTech by Aaron Bartell

Safe Harbor Statement

Mobile Application Development

Issues of Hybrid Mobile Application Development with PhoneGap: a Case Study of Insurance Mobile Application

ANDROID APPLICATION DEVELOPER RESUME

HTML5. Turn this page to see Quick Guide of CTTC

Build your own Fiori hybrid mobile app rapidly using SAP Web IDE Marc Anderegg, SAP SESSION CODE: BT404

HYBRID APPLICATION DEVELOPMENT IN PHONEGAP USING UI TOOLKITS

Self Testing with MoPub SDK

Smartphone Application Development using HTML5-based Cross- Platform Framework

DevOps Best Practices for Mobile Apps. Sanjeev Sharma IBM Software Group

True Web Application Management: Fixing the Gaps in EMM Solutions

unisys ClearPath eportal Developer 6.1 Unisys Multi-Device App Developer s Guide March

J j enterpririse. Oracle Application Express 3. Develop Native Oracle database-centric web applications quickly and easily with Oracle APEX

Mobile apps development for Joomla

<Insert Picture Here> Michael Hichwa VP Database Development Tools Stuttgart September 18, 2007 Hamburg September 20, 2007

Web Development using PHP (WD_PHP) Duration 1.5 months

MENDIX FOR MOBILE APP DEVELOPMENT WHITE PAPER

CrownPeak Playbook CrownPeak Hosting with PHP

Republic Polytechnic School of Infocomm C308 Web Framework. Module Curriculum

Development for Mobile Devices Tools from Intel, Platform of Your Choice!

How To Create A Bada App On Android (Mainfest) On Android And Get A Download Of Bada (For Android) On A Microsoft Gosu 2.5 (For Black

Introduction to Mobile Performance Testing

Mobile Web Applications using HTML5. L. Cotfas 14 Dec. 2011

ANDROID ALERT APP (SHOP SALE)

ACE: Dreamweaver CC Exam Guide

Mobile Enterprise Application Development - a Cross-Platform Framework

tibbr Now, the Information Finds You.

1 Copyright 2011, Oracle and/or its affiliates. All rights reserved.

Web application Architecture

Cross Platform Application for Smartphones Unreserved Ticket Generator for Mumbai Local Trains

Mobile Application Development. Adopt Based On Fit

Mobile Cross Platform Development really? Jonathan Marshall, IBM Mobile Technical Specialist IBM Corporation

Whitepaper. Trans. for Mobile

Website Report: To-Do Tasks: 17 SEO SCORE: 78 / 100. Add the exact keywords to this URL.

Transcription:

APEX World 2013 APEX & Christian Rokitta OGh APEX World 9 April 2013

Samenwerkingsverband van zelfstandige APEX professionals smart4apex.nl 75 APEX sessions in 4 days + Symposium day with Oracle Dev Team kscope13.com

PhoneGap: Concept en Architectuur APEX & PhoneGap PhoneGap API (met APEX) Cross Platform App Development

SQL & PL/SQL

Easily create apps using the web technologies you know and love: HTML, CSS, and JavaScript PhoneGap is a free and open source framework that allows you to create mobile apps using standardized web APIs

JavaScript API Native API Native OS PhoneGap Container App WebView <HTML /> {CSS;} Javascript(); images.png

Eclipse Android SDK Android Development Tools (ADT) Plugin voor Eclipse IDE Apache Cordova (PhoneGap) http://www.phonegap.com

Project New Eclipse Project PhoneGap libs/js/xml kopiëren Configuratie: java/xml/html bestanden Deploy Simulator/Smartphone

Hoe krijgen wij APEX in de PhoneGap WebView Container?

A. APEX URL ipv index.html aanroepen in MainActivity.java: super.loadurl("http://apex.oracle.com/pls/apex/f?p=41097:1"); B. PhoneGap libraries in APEX pagina s opnemen

Domain Whitelisting is een security model om toegang tot servers buiten de WebView Containers te controleren. Standaard worden alle aanroepen in het net geblokkeerd. De ontwikkelaar kan toegang tot (sub-) domeinen declareren.

<access> element, W3C specificatie: <access origin="http://example.com" /> <access origin="https://example.com" subdomains="true" /> Platform afhankelijk Android: res/xml/cordova.xml, volledige ondersteuning syntax Windows: default alle domeinen toegankelijk ios: geen ondersteuning protocollen, * syntax flexibeler

Definitie JS functie: navigator.camera.getpicture( camerasuccess, cameraerror [, cameraoptions ] ); camerasucces/error: functions

cameraoptions: { quality : 75, destinationtype : Camera.DestinationType.DATA_URL, sourcetype : Camera.PictureSourceType.CAMERA, allowedit : true, encodingtype: Camera.EncodingType.JPEG, targetwidth: 100, targetheight: 100, Camera.DestinationType = { popoveroptions: CameraPopoverOptions, DATA_URL : 0, savetophotoalbum: false }; }; FILE_URI : 1 // Return image as base64 encoded string // Return image file URI

document.addeventlistener("deviceready", ondeviceready, onfail); // Cordova is ready to be used! // function ondeviceready() { picturesource = navigator.camera.picturesourcetype; destinationtype = navigator.camera.destinationtype; console.log('device ready!'); }

// A button will call this function // function capturephoto() { // Take picture using device camera // and retrieve image as base64-encoded string navigator.camera.getpicture( onphotodatasuccess, onfail, {quality: 50,destinationType: destinationtype.data_url} ); }

function onphotodatasuccess(imagedata) { // Unhide image element $("#smallimage").css("display", "block"); // Show the captured photo $("#smallimage").attr( "src", "data:image/jpg;base64," + imagedata); } // Copy image data staticimg = imagedata;

// Function to upload CLOB data using APEX AJAX API function clob_set() { var clob_ob = new apex.ajax.clob( } function() { var rs = p.readystate if (rs == 1 rs == 2 rs == 3) { $.mobile.showpageloadingmsg(); } else if (rs == 4) { $s('p1_response', p.responsetext); $.mobile.hidepageloadingmsg() } else { return false; } }); clob_ob._set(staticimg); http://carlback.blogspot.nl/2008/04/new-stuff-4-over-head-with-clob.html

DECLARE l_clob l_blob l_id BEGIN CLOB; BLOB; NUMBER; -- fetch the image CLOB from the collection SELECT clob001 INTO l_clob FROM apex_collections WHERE collection_name = 'CLOB_CONTENT'; l_id := blob_test_seq.nextval; -- convert base64 CLOB into BLOB image l_blob := apex_web_service.clobbase642blob(l_clob); INSERT INTO blob_test(id, blob_content, mime_type, file_name) VALUES (l_id, l_blob, 'image/jpeg', 'image' l_id '.jpg'); END; http://carlback.blogspot.nl/2008/04/new-stuff-4-over-head-with-clob.html

<!DOCTYPE html> <html> <head> <title>redirect</title> </head> <body onload="window.location.href='http://apex.oracle.com/pls/apex/f?p=demo';"> </html> </body>

<script> (function loadcordova() { //Initialize our user agent string to lower case. var uagent = navigator.useragent.tolowercase(); if (uagent.search("android") > -1) { document.write('<script type="text/javascript" ' + 'src="#workspace_images#cordova.android.js">' + '<//script>'); } else if (uagent.search("iphone") > -1) { document.write('<script type="text/javascript" ' + 'src="#workspace_images#cordova.ios.js">' + '<//script>'); } })(); </script>

christian@rokitta.nl themes4apex.nl rokitta.blogspot.com @crokitta