Presentation is loading. Please wait.

Presentation is loading. Please wait.

Mobile Application Framework (MAF) Introduction

Similar presentations


Presentation on theme: "Mobile Application Framework (MAF) Introduction"— Presentation transcript:

1 Mobile Application Framework (MAF) Introduction

2 Agenda Mobile is Eating the World Enterprise Mobility
Mobile Application Types Oracle’s Mobile Strategy Mobile Application Framework (MAF) SPEAKER NOTES Let me begin my presentation by discussing the information management challenges facing organizations today.

3 Mobile is Eating the World
BY THE END OF 2013 THERE WILL BE MORE MOBILE DEVICES ON EARTH THAN PEOPLE Source: APPVERTISING, 2013, STEPHEN MOLLOY (LOMAH Studios and The Inspiration Room founder) 3

4 MOBILE DEVICES NOW OUTNUMBER HUMANS
Mobile is Eating the World MOBILE DEVICES NOW OUTNUMBER HUMANS (OCT 2014) 4

5 Statistics show that sales of mobile device outperform PC sales …
Mobile is Eating the World Statistics show that sales of mobile device outperform PC sales … 5

6 … and that sales of smart-phones and tablets are growing constantly
Mobile is Eating the World … and that sales of smart-phones and tablets are growing constantly 6

7 Mobile is Eating the World
The Consumer Market for Mobile Quick uptake of new trends and technologies – Mobile everywhere anytime – Home is where my phone is Mobile as the "external brain" and memory – Information, Notes, Reminders, Addresses, Pictures Omnipotent order-entry device for private business – Shopping, theatre and restaurant reservations, travel booking etc. Trend setter for enterprise applications – Demanding as for what applications should do and look like 7

8 Agenda Mobile is Eating the World Enterprise Mobility
Mobile Application Types Oracle’s Mobile Strategy Mobile Application Framework (MAF) SPEAKER NOTES Let me begin my presentation by discussing the information management challenges facing organizations today.

9 Enterprise Mobility TWO THIRDS OF THE WORKFORCE WILL OWN A SMARTPHONE BY 2016, AND 40% OF THE WORKFORCE WILL BE MOBILE SOURCE: GARTNER 2013 (Technology Research)

10 GSMA Mobile World Congress 2014
Enterprise Mobility GSMA Mobile World Congress 2014 More than 85,000 attendees More than 46,000 C-Level leaders More than 4,500 CEOs in attendance More than 1,800 exhibitors 3,900+ press members representing 84 countries

11 Enterprise Mobility

12 Challenges – Administration and Maintenance
Enterprise Mobility Challenges – Administration and Maintenance Rate of Change Diversity of mobile devices to support Deployment Application-, Device-, and Data Security How-to measure mobile application success Determine if budget is well spent Mobile users don't know of office hours and weekends The new meaning of "24x7 availability" Varying user load

13 Challenges – Development
Enterprise Mobility Challenges – Development How-to reuse existing business services Mobile offline operation Synchronizing data between the mobile device and the server Ensuring data consistency User preferences and profile How to maintain a single user profile across devices and applications Definition of "application" Logical application vs. physical applications Architecture choices Real-time context awareness Location based queries

14 Challenges – Performance
Enterprise Mobility Challenges – Performance Load from large number of mobile devices may require New balancing/caching techniques Batch queries and updates Business data needs Tailoring Filtering Web applications usually remain active Mobile is not a replacement of the web Mobile is an access channel A single user may produce load on two system

15 Challenges – Usability
Enterprise Mobility Challenges – Usability Look & feel Navigation paths Hub & Spoke vs. Navigation Trees Flat navigation models Virtual keyboard vs. physical keyboards Visualization on small displays Data entry = Submit = Commit ? Integration of media: social, images, videos, audio

16 Enterprise Mobility is an Imperative, not a Choice.

17 Agenda Mobile is Eating the World Enterprise Mobility
Mobile Application Types Oracle’s Mobile Strategy Mobile Application Framework (MAF) SPEAKER NOTES Let me begin my presentation by discussing the information management challenges facing organizations today.

18 Mobile Application Types
Traditional Web Sites

19 Mobile Application Types
Mobile Browser – Pages as they are Usable?

20 Mobile Application Types
Mobile Browser - Mobile Web Characteristics aka. Adaptive & Responsive Design Adaptive: Sites designed for mobile only Responsive: Sites rearrange themselves to utilize (limited) screen real estate Online access via mobile device browser Browser provides access to device features (eg. camera, GPS, etc.)

21 Mobile Application Types
Mobile Browser - Mobile Web Disadvantages Is not native May not feel or operate like a native application Duplicate code Cannot call native optimized APIs (directly) Cannot disconnect or go offline

22 Mobile Application Types
Native Applications Characteristics Application installed & runs on device Uses native code and APIs Optimized for mobile platform and form factor Direct access to local storage and device services Offline support

23 Mobile Application Types
Native Applications Disadvantages Solution only deploys to one platform, it cannot be run across iOS & Android Code reuse can be complex Portability requires work You’ll need both iOS (Objective-C) & Android developers (Java)

24 Mobile Application Types
Hybrid Applications Characteristics Application installed on device HTML5, CSS3, JS Runs within a native web container Inherently cross platform Utilize existing skillsets Direct access to local storage and device services Code reuse and portability simplified

25 Mobile Application Types
Hybrid Applications – Business Reasoning 41% CIOS CITED MOBILITY IS EXPENSIVE AND A CRITICAL CHALLENGE! “It takes us months, no, years to release updates” “Our IT budgets are shrinking, not growing” “We can’t hire new iOS & Android developers” “We need cross platform support to reduce costs” “We want offline support with maximum security” “We don’t want to change our existing architectures” SOURCE: MCKINSEY, 2012: MOBILITY DISRUPTION: A CIO PERSPECTIVE

26 Mobile Application Types
Hybrid Applications – The way to go for Enterprise ENTEPRISE MOBILE APP DEVELOPMENT WILL BE 10% NATIVE, 60% HYBRID, 30% MOBILE WEB" SOURCE: GARTNER, 2013

27 Agenda Mobile is Eating the World Enterprise Mobility
Mobile Application Types Oracle’s Mobile Strategy Mobile Application Framework (MAF) SPEAKER NOTES Let me begin my presentation by discussing the information management challenges facing organizations today.

28 Oracle’s Mobile Strategy

29 Oracle’s Mobile Strategy

30 Oracle’s Mobile Strategy

31 Oracle’s Mobile Strategy

32 Agenda Mobile is Eating the World Enterprise Mobility
Mobile Application Types Oracle’s Mobile Strategy Mobile Application Framework (MAF) SPEAKER NOTES Let me begin my presentation by discussing the information management challenges facing organizations today.

33 Mobile Application Framework (MAF)
Mobile Application Framework (MAF) Overview Formerly named ADF Mobile Build Once, Run on Multiple-Platforms Phones, Tablets, iOS, Android, … HTML5/JavaScript user interface Java for business logic! Disconnected: SQLite with encryption Full access to native device features Modular, reusable application components JDeveloper and Eclipse

34 Mobile Application Framework (MAF)
Mobile Application Framework (MAF) Overview Device Native Mobile User Experience Spring board and tab bar for feature navigation Advanced HTML5-based UI - Full animation, gesture, and touch interaction support Interactive Data Visualization Components Device Interaction using Cordova

35 Mobile Application Framework (MAF)
MAF Architecture

36 Mobile Application Framework (MAF)
Development Environment IDE JDeveloper with the MAF extension Eclipse with the Oracle Enterprise Pack for Eclipse (OEPE) with Oracle Mobile Application Framework (MAF) Mobile development SDKs Used to compile device native binaries Devices or simulators to test Direct deploy Mobile developer program membership needed to deploy to an actual device

37 Mobile Application Framework (MAF)
MAF Application Structure “The content of a MAF application is comprised of one or more embedded applications known as application features, which are represented as icons within the application's springboard or navigation bar” Springboard Is the landing screen where all of the apps/features are displayed (desktop of the phone/application) Features are essentially the building blocks of a mobile application perform a specific set of tasks like managing customer contacts or listing the product inventory are independent of one another, each application feature has its own class loader and web view

38 Mobile Application Framework (MAF)
Creating a MAF Application Choose File, then New, and then Application, and choose the Mobile Application Framework Application template This generates an application with 2 projects ApplicationController Project – houses application implementation files like definitions of skins or application lifecycle listener (ALCL)  ViewController Project -  houses resources and implementation for the application features Application Resources – application level configuration files for defining application name, content, springboard, database connections, web-service policies, JVM startup settings, etc.

39 Mobile Application Framework (MAF)
Creating Features ViewController -> adfmf-feature.xml – the configuration file for declaring features

40 Mobile Application Framework (MAF)
Referencing Features Application Resources -> maf-application.xml – is the application configuration file Feature References – used for adding features used in the application Select one of the defined feature Configure if it will be shown in the default navigation bar Configure if it will be shown in the default springboard

41 Mobile Application Framework (MAF)
Configuring the Springboard Application Resources -> maf-application.xml – is the application configuration file Application – application configuration Application Name Lifecycle Event Listener Class Navigation Bar configuration Springboard configuration (none, default, custom)

42 Mobile Application Framework (MAF)
UI - Web View Web View - Uses a mobile device's web engine to display and process web-based content. In a MAF application, the web view delivers the user interface by rendering the application mark-up as HTML 5.

43 Mobile Application Framework (MAF)
UI - Web View – Feature Content Types MAF AMX JSF-like file / page flow, built visually in JDeveloper Generated into HTML/JS on device at RT Based on HTML5 Local HTML Hand-coded HTML5 pages Remote URL

44 Mobile Application Framework (MAF)
Building AMX Pages JSF-Like implementation using components JDeveloper: Components wizard - Drag and drop functionality Property Inspector Preview panel

45 Mobile Application Framework (MAF)
Accessing Device Features Cordova - The Apache Cordova JavaScript APIs integrate the device's native features and services into a mobile application. You can access these APIs programmatically from Java/Javascript code or you can add device integration declaratively when you create MAF AMX pages because MAF packages these APIs as data controls.

46 Mobile Application Framework (MAF)
Accessing Device Features Evaluating device properties / information – using the Expression Builder wizard

47 Mobile Application Framework (MAF)
Accessing Device Features Using Device Features Data Control – drag and drop

48 Mobile Application Framework (MAF)
Accessing Device Features – Configuring Access Application Resources -> maf-application.xml – is the application configuration file

49 Mobile Application Framework (MAF)
Business Logic and Data Business Logic and Data – MAF comes with a set of features suited for implementing business logic, data definition and data access, by the means of a JVM, APIs for DB and Web Service access and an own Encrypted SQLite DB

50 Mobile Application Framework (MAF)
Business Logic and Data Java Virtual Machine - Java provides a Java runtime environment for a MAF application. This JVM is implemented in device-native code, and is embedded (or compiled) into each instance of the MAF application as part of the native application binary. Business Logic - Java enables the business logic in MAF applications trough Managed Beans (similar to JSF Managed Beans) Model - Contains the binding layer that connects the business logic components with the user interface. In addition, the binding layer provides the execution logic to invoke REST or SOAP-based web services. JDBC - The JDBC API enables the model layer to access the data in the encrypted SQLite database through CRUD (Create, Read, Update and Delete) operations. Encrypted SQLite Database - the MAF application generates this lightweight, cross-platform relational database. Because this database is encrypted, it secures data if the device is lost or stolen. Only users who enter the correct user name and password can access the data in the local database

51 Mobile Application Framework (MAF)
Push Notifications Push Handler - Enables the MAF application to receive events from the iOS or Android notification servers. The Java layer handles the notification processing.

52 Mobile Application Framework (MAF)
Push Notifications – How do they work?

53 Mobile Application Framework (MAF)
Push Notifications – Implementation Registering the ApplicationLifeCycleListener … Where? Remember? … Application Resources -> maf-application.xml – is the application configuration file … so that on start of the application to register a new PushNotificationListener How? – Implement Java code in the start() method of the LifeCycleListener

54 Mobile Application Framework (MAF)
Push Notifications – Implementation … with the PushNotificationListener being a concrete EventListener … which onOpen() receives the token and stores it as the deviceToken How? – Implement Java code in the onOpen() method of the PushNotificationListener

55 Mobile Application Framework (MAF)
Push Notifications – Implementation … and onMessage() does the propper job How? – Implement Java code in the onMessage() method of the PushNotificationListener

56 Question and Answers


Download ppt "Mobile Application Framework (MAF) Introduction"

Similar presentations


Ads by Google