TAMZ I. (Design of Applications for Mobile Devices I) Lecture 1. Introducing Mobile Platforms.

Size: px
Start display at page:

Download "TAMZ I. (Design of Applications for Mobile Devices I) Lecture 1. Introducing Mobile Platforms."

Transcription

1 TAMZ I (Design of Applications for Mobile Devices I) Lecture 1 Introducing Mobile Platforms

2 Contact Information Office: EA-409 Address: Dept. of Computer Science, FEECS VSB-TU Ostrava 17. listopadu Ostrava-Poruba Phone: Web: 2

3 Course Requirements During the semester: Implementation (10 points) programming of certain assignments in labs, one point for each completed assignment Presentation (5 to 10 points) presentation of pre-selected topic from subject area in labs, minutes. Project (10 to 25 points) implementation of chosen project for a mobile device + its defense. Required to complete the course! Total sum (15 to 45 points) After the end of the semester: Final exam (20 to 55 points) 3

4 References jquery Mobile API Documentation Apache Cordova API Documentation W3 Schools: A. Kosmaczewski: Mobile JavaScript Application Development, O'Reilly Media, 2012 J. Reid: JQuery Mobile, O'Reilly Media, Inc., 2011 P. Retting: Professional HTML5 Mobile Game Development, John Wiley & Sons (14 Sep 2012) J. M. Wargo: PhoneGap Essentials: Building Cross-platform Mobile Apps, Addison-Wesley Professional, 2012 J. Munro: 20 Recipes for Programming PhoneGap, O'Reilly M. 4

5 What is a Mobile Device? A pocket-sized computing device, typically with: a small visual display screen for user output a miniature keyboard or touch screen for user input. Examples: Mobile phones Smartphones, Tablets Navigation devices Cameras, portable media players Handheld game consoles IoT devices, monitoring devices, smart devices... 5

6 Limitations of Mobile Devices Small (often lower-resolution) display (on some types of devices even grayscale/bw) on specialized devices Limited input options (phone/software touch keyboard) Lower operating memory & internal storage space (the latter partly solved by external memory cards) Limited CPU power + absent or limited GPU capabilities Limited instruction set (e.g. only software-emulated floating point arithmetics, no SSE, vector-processing instructions) Network connectivity issues Smaller library of system functions Power considerations... 6

7 Mobile Operating Systems Vendor-specific firmware, vendor SDKs for custom builds Real-time operating systems ios on Apple devices Linux-based: Android Ubuntu Mobile (?) Firefox OS, Tizen, Sailfish OS, Jolla Windows Windows Phone 8.x, Windows RT (8), Windows CE BlackBerry OS Samsung BADA Symbian OS 7

8 Mobile Frameworks HTML5-based frameworks AngularJS, jquery Mobile, Sencha Touch, Cordova, Ionic, ReactNative, PhoneGAP, Xamarin Flash Lite commercial CodeName One JavaME Java 2 Micro Edition, JavaFX 3rd party frameworks (of varying quality) Java-based Python-based QT-based LUA, 8

9 Programming languages HTML(5) + Javascript/TypeScript + CSS(3) Java (SE Android Development, ME, EE web) Objective C, Swift ios C/C++ native libraries, e.g. Android NDK, singlechip solutions, custom firmware development, RTOSes Processing language (Arduino) C# Windows 8,.NET compact framework, Xamarin Python Exotic choices: LUA, Lazarus (Pascal), Shell script, 9 PHP,

10 New platforms changed everything! Device fragmentation Platform fragmentation Vendors try to keep customer by vendor lock-in Applications sold by vendors directly through their Play Store/AppStore/Marketplace/Market/... 2 dominant platforms: Android ios (~15%) Windows (Windows Phone 8, Windows Mobile) Blackberry (US) / Symbian (EU) Feature phones may still offer Java ME 10

11 Why is platform fragmentation bad? Different environment Different APIs Different programming languages (Java, Objective C, Silverlight, C#, C/C++, ) Different SDKs, specific OS needed for SDK and development (Windows, MacOS) The code needs to be written several times We may use Native libraries (usually in C/C++) Platform-independent SDKs (e.g. CodeName One) Android/JavaME basic common parts in Java, GUI/API calls separately HTML 5 for simple applications PhoneGap 11

12 Source: Best description of current situation English legend: Operation Sustainable development Phase 1: Confusion of tongues Phase 2: ios Android Windows Mobile/Phone Firefox OS Chrome OS Ubuntu Mobile Sailfish OS 12...

13 Current multi-platform development Android ios Windows Phone User interface User interface User interface Application layer (using native API ) Application layer (using native API ) Application layer (using native API ) Java/NDK Objective C SilverLight/XNA Core library (C, C++, C#, HTML5+CSS+JS, ) Business Layer Access Layer (Data Access, Service Access) Data Layer 13

14 Mobile Platforms Common Features 14

15 Generic Mobile OS Architecture Application (e.g. Web Browser) Native Applications Application framework (platform APIs) Application management software (AMS) Basic libraries and services Virtual Machine* OS Runtime Host Operating System Kernel * Virtual machine is not used on some platforms, which run native code directly. Usually, we use platform APIs for development, but on most platforms we can also write native code using built-in or even user-supplied libraries, or a HTML+JS+CSS application run in the web browser or embedded web view. 15

16 Handling Security Any seriously considered mobile OS needs protection from malicious code that may access system information or resources. Advanced security model provided by desktop OS may be too memory-consuming (although frameworks like SELinux have already been included in latest Android versions). The classic security model, which is provided in most mobile devices, is the sandbox model, where the applications are run in a closed environment in which they can only access insensitive resources, the access outside of the sandbox must be granted by the user. Typically, all sensitive APIs have to be listed in application manifest (in some cases the application using these APIs may have to be signed) and are part of a permission model. 16

17 Java on Mobile Platforms 17

18 Why is Java so popular? Java was originally intended for embedded and mobile development. Many old-time mobile developers were used to program in JavaME, which was easy-to understand platform with well-defined standards (jcp.org) Still the main choice for dumb phones Per-app revenues were still better than Android (150% based on 08/2011 data, but ios has 200%). Source: Mobile Marketing Watch Android uses Java bytecode as a step in developing mobile applications. Java-base SDKs (Netbeans/Eclipse) are available for all 3 major platforms (Windows, MacOS, Linux) 18

19 Official Java Editions In 1995 the first version of Java, now known as Java Platform Standard Edition (JavaSE), was released. Since that time its landscape has changed significantly. Standard Edition (JavaSE) Designed to run on desktop and workstation computers. Enterprise Edition (JavaEE) This edition is aimed at server-based applications. Contains buit-in support for Servlets, JSP and XML. Micro Edition (JavaME) Designed for devices with limited memory, display and processing power. Java Card programming of Smart Cards (e.g. SIM, payment) 19

20 Android OS Architecture Source: 20

21 Example of a Mobile Platform Java ME 21

22 Configurations and Profiles Capabilities of devices within the JavaME may vary greatly. A PDA may have a much larger display than a pager. One Java platform will most definitely not fit all. In order to accommodate a broad range of consumer electronics and embedded devices JavaME introduces two new concepts: configurations and profiles. Optional Packages (APIs) Profile Libraries Configuration Java Virtual Machine 22

23 CDC versus CLDC CDC is a subset of JavaSE, plus some extra classes CLDC is a subset of CDC. JavaSE CDC CLDC 23

24 Connected Device Configuration This configuration is designed for devices with more memory, faster processors and greater network bandwidth It is appropriate, at least in the near term, for home automation and automotive navigation, entertainment and telemetry systems. A programming model closer to JavaSE simplifies porting existing desktop clients for enterprise systems to mobile devices that support CDC. CDC has never been used much outside of Multimedia Home Platform (MHP) and some handheld game consoles. 24

25 Connected Limited Device Configuration This configuration is intended for devices with intermittent network connections, small processors and limited memory. Expected targets included two-way pagers, mobile phones and entry-level PDAs. However, in practice, the functionality delivered by CLDC and the associated profiles and optional packages is very close to that of CDC. As a consequence it is used today on most high-end mobile phones, or smartphones, which are replacing PDAs in the marketplace. 25

26 Java Language Differences There are three main areas that distinguish the Java Language for CLDC to those defined in the Java Language Specification. Floating Point Math The CLDC 1.0 implementation of the Java language does not support floats. CLDC 1.1 specifies such support. But MIDP 2.0 only requires CLDC 1.0. Finalization The CLDC does not support the finalize() method because an overhead and processor requirements are too steep. Error Handling The JVM supports a limited set of error handling exceptions due a significant demand on the system's device-dependent. 26

27 JavaME Java Virtual Machines C virtual machine (CVM) classic Java virtual machine (not Dalvik!) used with CDC requires 32b microprocessor at least 2MB of RAM & 2.5 MB of ROM Kilobyte virtual machine (KVM) used with CLDC 16b/32b (slow) microprocessor limited math, string, and I/O functions lacks some features of classic JVM only a small subset of JavaSE core libraries at least 32kB of RAM & 128kB of ROM 27

28 Profile A profile supplements a configuration to provide capabilities for a specific family of devices or specific industry segment application need. For example, a configuration provides a generic Java API for battery powered, limited display and processing capability systems, while a profile provides a supplemental Java API specific to cellular telephones, which is a member of this larger group of devices. A profile must supplement a configuration. A profile will not work without the configuration and virtual machine providing the core classes/api and runtime environment. 28

29 Profiles CDC profiles CLDC profiles Foundation profile basic CDC profile Game Profile developing game applications Personal Profile complex UI components FP Personal Basis Profile simple UI components (single window) RMI Profile Remote Method Invocation support classes Mobile Information Device Profile local storage, UI, network PDA Profile better displays, larger memory compared to MIDP KJava Sun-specific API for Palm OS Information Module Profile subset of MIDP 1.0 without its display and input classes 29

30 Mobile Information Device Profile The Mobile Information Device Profile (MIDP) is a key element of the Java 2 Platform, Micro Edition (JavaME). When combined with the Connected Limited Device Configuration (CLDC), MIDP provides a standard Java runtime environment for today's most popular mobile information devices, such as cell phones and mainstream personal digital assistants. The profile can be characterized by the following features: rich user interface capabilities extensive connectivity multimedia and game functionality over-the-air-provisioning end-to-end security 30

31 MIDP Optional Packages Once again the basic library was insufficient for some applications (remember the JavaSE history), which resulted in the development of several new packages: PDA Optional Package more PDA-specific APIs, e.g. PIM, files Bluetooth API Bluetooth communication (SDK problem) Wireless Messaging API SMS (MMS) capabilities Location API location tracking Presence & IM API JavaME version of JAIN, IM & presence support based on SIP Mobile Media API audio/video controls, streaming media JavaME Web Services API Web Services-related XML classes Security and Trust API Interaction with security smart card Mobile 3D Graphics API 3D graphics, mainly for games... 31

TAMZ. Department of Computer Science VŠB-Technical University of Ostrava

TAMZ. Department of Computer Science VŠB-Technical University of Ostrava TAMZ 1 Contact Information Office: A-1007 Address: Dept. of Computer Science, FEECS 17. listopadu 15 708 33 Ostrava-Poruba Phone: +420 59 732 4219 E-mail: pavel.moravec@vsb.cz Web: http://wiki.cs.vsb.cz/index.php/moravec/cz

More information

JavaME TAMZ. Department of Computer Science VŠB-Technical University of Ostrava

JavaME TAMZ. Department of Computer Science VŠB-Technical University of Ostrava TAMZ 1 Contact Information Office: A-1007 Address: Dept. of Computer Science, FEECS 17. listopadu 15 708 33 Ostrava-Poruba Phone: +420 59 699 4219 E-mail: pavel.moravec@vsb.cz Web: http://wiki.cs.vsb.cz/index.php/moravec/cz

More information

Mobile Programming. Two Scenarios Web sites, like Tuubi where you read/write/download/ upload material

Mobile Programming. Two Scenarios Web sites, like Tuubi where you read/write/download/ upload material Mobile Programming 1 Two Scenarios Web sites, like Tuubi where you read/write/download/ upload material Web Services/Sites, like Foursquare where location, device camera, etc and local processing make

More information

Mobile Application Development. Introduction. Dr. Christelle Scharff Pace University, USA

Mobile Application Development. Introduction. Dr. Christelle Scharff Pace University, USA Mobile Application Development Introduction Dr. Christelle Scharff cscharff@pace.edu Pace University, USA Objectives Getting an overview of the mobile phone market, its possibilities and weaknesses Providing

More information

CM0256 Pervasive Computing

CM0256 Pervasive Computing CM0256 Pervasive Computing Lecture 17 Software Development Approaches Tom Goodale t.r.goodale@cs.cardiff.ac.uk Lecture Outline In this lecture we: J2ME applications Palm. Device Limitations Limited Power

More information

Mobile Development June 2015, TEIATH, Greece

Mobile Development June 2015, TEIATH, Greece Mobile Development June 2015, TEIATH, Greece Presentation Overview 1. Introduction 2. Mobile Application Development 3. Cordova / Phonegap 4. Development Framework 5. Examples 1. INTRODUCTION Introduction

More information

Overview of Java 2 Platform, Micro Edition (J2ME )

Overview of Java 2 Platform, Micro Edition (J2ME ) CHAPTER2 Overview of Java 2 Platform, Micro Edition (J2ME ) 2.1 Java 2 Platform Recognizing that one size does not fit all, Sun Microsystems has grouped Java technologies into three editions, each aimed

More information

DAY 3 J2ME Aalborg University, Mobile Device Group. Mobile. Mobile Phone Programming

DAY 3 J2ME Aalborg University, Mobile Device Group. Mobile. Mobile Phone Programming DAY 3 J2ME Mobile Phone Programming Java 2 Micro Edition (J2ME) Overview Introduction J2ME architecture MIDlets Application development Introduction J2ME Key Factors Portability: Write once run anywhere

More information

ProvideX On Handhelds

ProvideX On Handhelds ProvideX On Handhelds Presented by: Jarett Smith Presentation Overview Landscape of Mobile Computing Wireless Connections to Internet Challenges of Mobile Computing Why We Chose Java 2 Micro Edition Java

More information

Minne menet, Mobiili-Java?

Minne menet, Mobiili-Java? Minne menet, Mobiili-Java? Java Platform, Micro Edition Status and Future Directions Antero Taivalsaari Sun Microsystems, Inc. December 2005 Growth Continues (2005 vs. 2003) 1 Billion Installed Base as

More information

Mobile development initiation

Mobile development initiation Mobile development initiation Outline Mobile development: o Why? o How? o New issues Android ios 2 Mobile growth ¼ Internet access Sales of smartphones and tablets increase o + 70% tab Community 3 Why

More information

Who am I? Wireless Online Game Development for Mobile Device. What games can you make after this course? Are you take the right course?

Who am I? Wireless Online Game Development for Mobile Device. What games can you make after this course? Are you take the right course? Who am I? Wireless Online Game Development for Mobile Device Lo Chi Wing, Peter Lesson 1 Email: Peter@Peter-Lo.com I123-1-A@Peter Lo 2007 1 I123-1-A@Peter Lo 2007 2 Are you take the right course? This

More information

Mobile Internet Devices and the Cloud

Mobile Internet Devices and the Cloud Mobile Internet Devices and the Cloud What Is a Smartphone? Mobile Operating Systems for Smartphones 1. iphone 2. Google (Android) 3. Blackberry 4. Windows Mobile 5. Ubuntu Mobile Internet Device (MID)

More information

The Java Mobile and Embedded Platform: Now and the Future

The Java Mobile and Embedded Platform: Now and the Future The Java Mobile and Embedded Platform: Now and the Future 1 Copyright 2011, Oracle and/or its affiliates. All rights Java Spotlight Podcast http://www.javaspotlight.org @javaspotlight 2 Copyright 2011,

More information

Mobile Technologies. Types of Apps

Mobile Technologies. Types of Apps Mobile Technologies Types of Apps What is mobile? Devices and their capabilities It s about people Fundamentally, mobile refers to the user, and not the device or the application. Barbara Ballard, Designing

More information

Review of Mobile Web Application Frameworks

Review of Mobile Web Application Frameworks Review of Mobile Web Application Frameworks Article Number: 909 Rating: Unrated Last Updated: Mon, May 9, 2011 at 10:57 AM If you are serious about getting your website or web application mobile-friendly,

More information

HTML5 Mobile App Development

HTML5 Mobile App Development HTML5 Mobile App Development Carl Stehle Appception, Inc. carl@appception.com 650.938.8046 April, 2013 Market Mobile App Market August 2010: Research2guidance: 1.7B (2009), 2.2B (1 st half 2010) April

More information

DAY 3 J2ME March 2007 Aalborg University, Mobile Device Group Mobile Phone Programming

DAY 3 J2ME March 2007 Aalborg University, Mobile Device Group Mobile Phone Programming DAY 3 J2ME Mobile Phone Programming Module 2 Micro (J2ME) Overview Introduction J2ME architecture Introduction 1 J2ME Key Factors Portability: Write once run anywhere Security: Code runs within the confines

More information

Java 2 Platform, Micro Edition

Java 2 Platform, Micro Edition Java 2 Platform, Micro Edition ArchitectureOverview Jon Courtney Senior Staff Engineer Sun Microsystems JavaOne203 Sesion316 Overall Presentation Goal Learnaboutthearchitectural features ofthejava 2Platform,MicroEdition(J2ME

More information

Mobile Application Strategy

Mobile Application Strategy Mobile Application Strategy Native vs. Adaptive Technology Ryan Peters IT Software Supervisor Does this look familiar? Survey Types of tablets What type of tablet do you currently own? Apple Android Windows

More information

Mobile Game Programming. Just that facts.

Mobile Game Programming. Just that facts. Mobile Game Programming Just that facts. First. a story. August, 2008: Ethan Nicholas, a Java engineer at Sun Microsystems (married, two kids) is desperate for money, and has heard that people can make

More information

Broad Objectives/Outcomes of the course

Broad Objectives/Outcomes of the course Broad Objectives/Outcomes of the course Course Aims: Introduces the basic concepts and principles in mobile computing. The major techniques involved, and networks & systems issues for the design and implementation

More information

Programming The Mobile Web Ebooks Free

Programming The Mobile Web Ebooks Free Programming The Mobile Web Ebooks Free With the second edition of this popular book, youâ ll learn how to build HTML5 and CSS3-based apps that access geolocation, accelerometer, multi-touch screens, offline

More information

Introduction to Mobile Application and Development

Introduction to Mobile Application and Development Introduction to Mobile Application and Development Mobile Phones A mobile phone (also called mobile, cellular telephone, cell phone, or hand phone is an electronic device used to make 1. Calls across a

More information

Hardware Accelerated Graphics for High Performance JavaFX Mobile Applications

Hardware Accelerated Graphics for High Performance JavaFX Mobile Applications Hardware Accelerated Graphics for High Performance JavaFX Mobile Applications Pavel Petroshenko, Sun Microsystems Jan Valenta, Sun Microsystems Jerry Evans, Sun Microsystems Goal of this Session Demonstrate

More information

CHAPTER 03: MULTIMEDIA & OPERATING SYSTEM. :: Operating System :: ~ What is OS?~ ~ OS Functions~ ~ OS Characteristics ~ ~ Type of OS~

CHAPTER 03: MULTIMEDIA & OPERATING SYSTEM. :: Operating System :: ~ What is OS?~ ~ OS Functions~ ~ OS Characteristics ~ ~ Type of OS~ CHAPTER 03: MULTIMEDIA & OPERATING SYSTEM :: Operating System :: ~ What is OS?~ ~ OS Functions~ ~ OS Characteristics ~ ~ Type of OS~ 1 Operating System and Software Computer Operating System An operating

More information

Making The Future Java

Making The Future Java Making The Future Java Dalibor Topić (@robilad) Principal Product Manager October 18th, 2013 - HrOUG, Rovinj 1 The following is intended to outline our general product direction. It is intended for information

More information

Exploring Cross-platform Tools For Mobile Development: Lessons Learned. mlearning: Tips and Techniques for Development and Implementation

Exploring Cross-platform Tools For Mobile Development: Lessons Learned. mlearning: Tips and Techniques for Development and Implementation mlearning: Tips and Techniques for Development and Implementation November 14 & 15, 2013 201 Exploring Cross-platform Tools For Mobile Development: Lessons Learned Perry Bennett Exploring Cross-platform

More information

Mobile Computing. Juha-Matti Liukkonen, Nov 17, 2010

Mobile Computing. Juha-Matti Liukkonen, Nov 17, 2010 Mobile Computing Juha-Matti Liukkonen, Nov 17, 2010 1 Contents Mobile Computing revolution Structural impact of device evolution A look into Mobile Linux 2 Mobile Computing revolution 3 Pocketable power

More information

Requirements and Issues of V**s for Mobile Terminals

Requirements and Issues of V**s for Mobile Terminals Requirements and Issues of V**s for Mobile Terminals Workshop on the Future of Virtual Execution Environments Armonk, NY, USA 15-17.09.2004 Kari Systä Nokia Research Center 1 NOKIA Presentation_Name.PPT

More information

Software Development for Mobile Devices

Software Development for Mobile Devices Software Development for Mobile Devices Operating System Diversity Many Operating Systems Google Android Apple ios Microsoft Windows Phone Nokia Symbian Linux RIM BlackBerry OS HP/Palm WebOS BREW Differences

More information

Supported Devices, OS, and Browsers

Supported Devices, OS, and Browsers Kony Visualizer Supported Devices, OS, and Browsers Release V8 Document Relevance and Accuracy This document is considered relevant to the Release stated on this title page and the document version stated

More information

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

Copyright 2012, Oracle and/or its affiliates. All rights reserved. 1 Copyright 2012, Oracle and/or its affiliates. All rights reserved. Developing Mobile Applications for ios and Android the Oracle Way Frédéric Desbiens Principal Product Manager Application Development

More information

Mobile and Social Computing

Mobile and Social Computing ì Mobile and Social Computing A.A. 2015/16 Lesson 1 Introduction to mobile and social computing About me Ing. Francesco Florio Mobile designer and developer since 2009 GDG Cosenza manager Teacher for University

More information

Mobile Game Programming

Mobile Game Programming Mobile Game Programming Just that facts. guest instructor: Matt Meyer Introduction I Mobile Devices (Primary Purpose): Gaming Devices: Nintendo DS, PSP. Music Devices: ZUNE, IPod. Cellphone Devices: Nokia,

More information

An overview of mobile and embedded platforms

An overview of mobile and embedded platforms ES3 Lecture 2 An overview of mobile and embedded platforms Basic Classes Embedded devices: These are in toasters, cars, mice, etc. Usually very real-time focused (us accuracy) Very small memory, not usually

More information

How many of us own. Mobile markets and development environments. Petri Vesikivi (Erkki Rämö) Fixed Telephone 1.3B TV 1.5B Credit card 1.

How many of us own. Mobile markets and development environments. Petri Vesikivi (Erkki Rämö) Fixed Telephone 1.3B TV 1.5B Credit card 1. Mobile markets and development environments Petri Vesikivi (Erkki Rämö) How many of us own a car 800M Fixed Telephone 1.3B TV 1.5B Credit card 1.3B Mobile phone? PC? How many of us own a car 800M Fixed

More information

MOBILE COMPUTING Unit V

MOBILE COMPUTING Unit V MOBILE COMPUTING Unit V 1 UNIT V MOBILE PLATFORMS AND APPLICATIONS Mobile Device Operating Systems Special Constrains & Requirements Commercial Mobile Operating Systems Software Development Kit: ios, Android,

More information

Mobile Middleware Course. Mobile Platforms and Middleware. Sasu Tarkoma

Mobile Middleware Course. Mobile Platforms and Middleware. Sasu Tarkoma Mobile Middleware Course Mobile Platforms and Middleware Sasu Tarkoma Role of Software and Algorithms Software has an increasingly important role in mobile devices Increase in device capabilities Interaction

More information

What's New In Mobile & Embedded Java? A Technology Update

What's New In Mobile & Embedded Java? A Technology Update What's New In Mobile & Embedded Java? A Technology Update Terrence Barr Senior Technologist, Mobile & Embedded terrence.barr@oracle.com Safe Harbor Statements The following is intended

More information

Developing Applications for ios

Developing Applications for ios Developing Applications for ios Lecture 1: Mobile Applications Development Radu Ionescu raducu.ionescu@gmail.com Faculty of Mathematics and Computer Science University of Bucharest Evaluation Individual

More information

Scott Weiss & Richard Martin April, 2003

Scott Weiss & Richard Martin April, 2003 Scott Weiss & Richard Martin April, 2003 Usable Products Company, 2003 About the Course Scott Weiss Author, Handheld Usability (John Wiley & Sons) Principal, Usable Products Company Course History: You

More information

Developing Cross Device Mobile Applications

Developing Cross Device Mobile Applications Developing Cross Device Mobile Applications Dana Singleterry - http://blogs.oracle.com/dana Twitter - @dsingleterry Principal Product Manager, Oracle Development Tools 2 Copyright 2012, Oracle and/or its

More information

CHOOSING THE RIGHT HTML5 FRAMEWORK To Build Your Mobile Web Application

CHOOSING THE RIGHT HTML5 FRAMEWORK To Build Your Mobile Web Application BACKBONE.JS Sencha Touch CHOOSING THE RIGHT HTML5 FRAMEWORK To Build Your Mobile Web Application A RapidValue Solutions Whitepaper Author: Pooja Prasad, Technical Lead, RapidValue Solutions Contents Executive

More information

Device Technologies I J2ME & WinCE

Device Technologies I J2ME & WinCE Device Technologies I J2ME & WinCE Patrick J. Stockreisser p.j.stockreisser@cs.cardiff.ac.uk Lecture Outline In the lecture we will: Look at considerations needed to run applications on mobile or pervasive

More information

INTERNATIONAL JOURNAL OF PURE AND APPLIED RESEARCH IN ENGINEERING AND TECHNOLOGY

INTERNATIONAL JOURNAL OF PURE AND APPLIED RESEARCH IN ENGINEERING AND TECHNOLOGY INTERNATIONAL JOURNAL OF PURE AND APPLIED RESEARCH IN ENGINEERING AND TECHNOLOGY A PATH FOR HORIZING YOUR INNOVATIVE WORK A REVIEW ON THE ARCHITECTURE OF ANDROID IN SMART PHONES RAVNEET KAUR T. BAGGA 1,

More information

IJRDTM Kailash ISBN No Vol.17 Issue

IJRDTM Kailash ISBN No Vol.17 Issue ABSTRACT ANDROID OPERATING SYSTEM : A CASE STUDY by Pankaj Research Associate, GGSIP University Android is a software stack for mobile devices that includes an operating system, middleware and key applications.

More information

Enterprise Architecture Building a Mobile Vision. David Hunt DCH Technology Services Gill Windall University of Greenwich

Enterprise Architecture Building a Mobile Vision. David Hunt DCH Technology Services Gill Windall University of Greenwich Enterprise Architecture Building a Mobile Vision David Hunt DCH Technology Services Gill Windall University of Greenwich What is Enterprise Architecture? Definition Enterprise Architecture is the practice

More information

Application Development for Mobile and Ubiquitous Computing

Application Development for Mobile and Ubiquitous Computing Department of Computer Science Institute for System Architecture, Chair for Computer Networks lication Development for Mobile and Ubiquitous Computing 9. Cross-Platform Development Dr. Ing. Thomas Springer

More information

JSR 248: Taking Java Platform, Micro Edition (Java ME) to the Next Level

JSR 248: Taking Java Platform, Micro Edition (Java ME) to the Next Level JSR 248: Taking Java Platform, Micro Edition (Java ME) to the Next Level Kay Glahn Consultant Mobile Service Architecture, Vodafone http://www.vodafone.com Erkki Rysä Technologist Nokia Corporation http://www.nokia.com

More information

Build a Mobile App in 60 Minutes with MAF

Build a Mobile App in 60 Minutes with MAF Build a Mobile App in 60 Minutes with MAF Presented by: John Jay King Download this paper from: OAUG web site Or 1 Session Objectives Understand the components of Oracle MAF Use Oracle MAF to create mobile

More information

Mobile Application Development Concept

Mobile Application Development Concept Mobile Application Development Concept Aryo Pinandito, ST, M.MT Delivering Mobile Content It isn't just about choosing native apps or choosing the mobile web it's also about looking at who your customers

More information

Mobile Station Execution Environment (MExE( MExE) Developing web applications for PDAs and Cellphones. WAP (Wireless Application Protocol)

Mobile Station Execution Environment (MExE( MExE) Developing web applications for PDAs and Cellphones. WAP (Wireless Application Protocol) Developing web applications for PDAs and Cellphones Mobile Station Execution Environment (MExE( MExE) MExE is a standard for defining various levels of wireless communication These levels are called classmarks

More information

Petr Suchomel Architect, NetBeans Mobility

Petr Suchomel Architect, NetBeans Mobility NetBeans 6.0 A Fresh Look into Java Development Petr Suchomel Architect, NetBeans Mobility Sun Microsystems Agenda The NetBeans IDE, Platform, Community What's new in NetBeans 6.0 Quick look over NetBeans

More information

Operating System Concepts Rab Nawaz Khan Jadoon

Operating System Concepts Rab Nawaz Khan Jadoon Operating System Concepts Rab Nawaz Khan Jadoon DCS COMSATS Institute of Information Technology Lecturer COMSATS Lahore Pakistan Operating System Concepts Operating System Operating System It is a system

More information

Android. Lesson 1. Introduction. Android Developer Fundamentals. Android Developer Fundamentals. to Android 1

Android. Lesson 1. Introduction. Android Developer Fundamentals. Android Developer Fundamentals. to Android 1 Android Lesson 1 1 1 1.0 to Android 2 Contents Android is an ecosystem Android platform architecture Android Versions Challenges of Android app development App fundamentals 3 Android Ecosystem 4 What is

More information

WELCOME Mobile Applications Testing. Copyright

WELCOME Mobile Applications Testing. Copyright WELCOME Mobile Applications Testing Copyright NataliaS@portnov.com 1 CyanogenMod and Lineage OS Latest Version for all devices Marshmallow offers a number of useful features that CM and Lineage leverages,

More information

MOBILE DEVELOPER GUIDANCE

MOBILE DEVELOPER GUIDANCE MOBILE DEVELOPER GUIDANCE powered by SUMMARY: If you have unlimited time and money, build native apps for all mobile platforms. If you have anything less, important decisions must be made that can have

More information

IcedRobot. The GNUlization of Android. Mario Torre David Fu. With the collaboration of Mark Wielaard and Roman Kennke

IcedRobot. The GNUlization of Android. Mario Torre David Fu. With the collaboration of Mark Wielaard and Roman Kennke IcedRobot The GNUlization of Android A project that both Google and Oracle will love and hate... Mario Torre David Fu With the collaboration of Mark Wielaard and Roman Kennke Iced... what?? IcedRobot Decouple

More information

Introduction To Android

Introduction To Android Introduction To Android Mobile Technologies Symbian OS ios BlackBerry OS Windows Android Introduction to Android Android is an operating system for mobile devices such as smart phones and tablet computers.

More information

Classification and Selection of Cross-Platform Tools. Michiel Willocx 17/06/2015

Classification and Selection of Cross-Platform Tools. Michiel Willocx 17/06/2015 Classification and Selection of Cross-Platform Tools Michiel Willocx 17/06/2015 Table of contents PART 1: Classification Cross-Platform Tools o Different technologies o Examples PART 2: Selection Criteria

More information

Mobile Development with Visual Studio 2015

Mobile Development with Visual Studio 2015 Mobile Development with Visual Studio 2015 Bill Ayers MCM/MCSM Charter SharePoint MCT, MCTS, MCITP, MCSD, MCAD, MCSA, MCDBA, Professional Scrum Master (PSM I), etc. Flow Simulation Ltd. www.spdoctor.net

More information

Chapter 1: Introduction to Computers and Java

Chapter 1: Introduction to Computers and Java Chapter 1: Introduction to Computers and Java Starting Out with Java: From Control Structures through Objects Fifth Edition by Tony Gaddis Chapter Topics Chapter 1 discusses the following main topics:

More information

8/23/2014. Chapter Topics. Introduction. Java History. Why Program? Java Applications and Applets. Chapter 1: Introduction to Computers and Java

8/23/2014. Chapter Topics. Introduction. Java History. Why Program? Java Applications and Applets. Chapter 1: Introduction to Computers and Java Chapter 1: Introduction to Computers and Java Starting Out with Java: From Control Structures through Objects Fifth Edition by Tony Gaddis Chapter Topics Chapter 1 discusses the following main topics:

More information

Introduction. Introduction to OOP with Java. Lecture 01: Introduction to OOP with Java - AKF Sep AbuKhleiF -

Introduction. Introduction to OOP with Java. Lecture 01: Introduction to OOP with Java - AKF Sep AbuKhleiF - Introduction to OOP with Java Instructor: AbuKhleif, Mohammad Noor Sep 2017 www.abukhleif.com Lecture 01: Introduction Instructor: AbuKhleif, Mohammad Noor Sep 2017 www.abukhleif.com AbuKhleiF - www.abukhleif.com

More information

Imperative model of computation

Imperative model of computation 12 Imperative model of computation Peter Marwedel TU Dortmund, Informatik 12 Graphics: Alexandra Nolte, Gesine Marwedel, 2003 2010/10/28 These slides use Microsoft clip arts. Microsoft copyright restrictions

More information

Developing Mobile Applications

Developing Mobile Applications Developing Mobile Applications J2ME Java 2 Micro Edition 1 Virtual machines portable apps virtual machine native apps operating system hardware 2 Java - important issues Symbolic language not a random

More information

Why Android? Why Android? Android Overview. Why Mobile App Development? 20-Nov-18

Why Android? Why Android? Android Overview. Why Mobile App Development? 20-Nov-18 Why Android? Android Overview Dr. Siddharth Kaza Dr. Josh Dehlinger A lot of students have them 2010 survey by University of CO 1 : 22% of college students have Android phone (26% Blackberry, 40% iphone)

More information

Java Plugin Update Windows 7 64 Bit Latest Version Cnet

Java Plugin Update Windows 7 64 Bit Latest Version Cnet Java Plugin Update Windows 7 64 Bit Latest Version Cnet Version: 8 Update 45. Total Downloads: 640,714. Date Added: Apr. 22, 2015. Price: Free. File Size: 180.42MB. Downloads Last Week: 3,917. Platform:

More information

Technology in Action. Chapter 8 Mobile Computing: Keeping Your Data on Hand. Copyright 2010 Pearson Education, Inc. Publishing as Prentice Hall

Technology in Action. Chapter 8 Mobile Computing: Keeping Your Data on Hand. Copyright 2010 Pearson Education, Inc. Publishing as Prentice Hall Technology in Action Chapter 8 Mobile Computing: Keeping Your Data on Hand 1 Mobile Computing: Is It Right for You? Advantages Convenience Boost productivity Communicate with others anywhere Access to

More information

The C-Suite Guide to Mobile Technologies for mhealth Development. Medical Web ExpertsTM

The C-Suite Guide to Mobile Technologies for mhealth Development. Medical Web ExpertsTM The C-Suite Guide to Mobile Technologies for mhealth Development Medical Web ExpertsTM January 2017 Executive Summary mhealth technologies are forming a more integral part of many healthcare organizations

More information

Copyright

Copyright Copyright NataliaS@portnov.com 1 Overview: Mobile APPS Categories Types Distribution/Installation/Logs Mobile Test Industry Standards Remote Device Access (RDA) Emulators Simulators Troubleshooting Guide

More information

MMAPI (Mobile Media API) Multimedia Framework for Mobile Devices

MMAPI (Mobile Media API) Multimedia Framework for Mobile Devices MMAPI (Mobile Media API) Multimedia Framework for Mobile Devices Zohar Sivan IBM Research Laboratory in Haifa IBM Labs in Haifa MMAPI Objectives Provide a standards-based Java multimedia framework for

More information

PennBench: A Benchmark Suite for Embedded Java

PennBench: A Benchmark Suite for Embedded Java WWC5 Austin, TX. Nov. 2002 PennBench: A Benchmark Suite for Embedded Java G. Chen, M. Kandemir, N. Vijaykrishnan, And M. J. Irwin Penn State University http://www.cse.psu.edu/~mdl Outline Introduction

More information

CSC Introduction to Computers and Their Applications

CSC Introduction to Computers and Their Applications CSC 170 - Introduction to Computers and Their Applications Lecture 9 Software Essentials When searching for new software, it helps to have a framework of categories System Software Operating Systems For

More information

Interactive webmaps with ArcGIS. Kristel Meikas, AlphaGIS

Interactive webmaps with ArcGIS. Kristel Meikas, AlphaGIS Interactive webmaps with ArcGIS Kristel Meikas, AlphaGIS Agenda Overview of ArcGIS tools and resources Introduction to ArcGIS APIs In depth with Flex maps In depth with JavaScript maps ArcGIS Server Publish

More information

Minds-on: Android. Session 1

Minds-on: Android. Session 1 Minds-on: Android Session 1 Paulo Baltarejo Sousa Instituto Superior de Engenharia do Porto 2016 Outline Mobile devices Android OS Android architecture Android Studio Practice 1 / 33 2 / 33 Mobile devices

More information

Introduction to OOP with Java. Instructor: AbuKhleif, Mohammad Noor Sep 2017

Introduction to OOP with Java. Instructor: AbuKhleif, Mohammad Noor Sep 2017 Introduction to OOP with Java Instructor: AbuKhleif, Mohammad Noor Sep 2017 Lecture 01: Introduction Instructor: AbuKhleif, Mohammad Noor Sep 2017 Instructor AbuKhleif, Mohammad Noor Studied Computer Engineer

More information

Java And Android Application Development For Dummies Ebook Set

Java And Android Application Development For Dummies Ebook Set Java And Android Application Development For Dummies Ebook Set (1) Very easy to learn if you know Java because android libraries are built on top (1) Android Game programming for dummies: it-ebooks.info/book/1700/

More information

Embedded Software: Its Growing Influence on the Hardware world

Embedded Software: Its Growing Influence on the Hardware world Embedded Software: Its Growing Influence on the Hardware world ISA Vision Summit 2009, Bangalore 16 th FEB 09 V. R. Venkatesh Head, Product Engineering Services, Wipro Technologies. Wipro in Product Engineering

More information

T Multimedia Programming. Different Operating Systems and their Multimedia Support

T Multimedia Programming. Different Operating Systems and their Multimedia Support T-111.5350 Multimedia Programming Different Operating Systems and their Multimedia Support Carlos Herrero September 27, 2007 Contents Windows DirectX.NET Framework Linux KDE & Gnome Gstreamer SDL Mac OS

More information

How ercp stacks up against Android and other Mobile Rich Client Platforms. Ken Walker, J9 Java Class Libraries David Girle, Client Solutions WPLC

How ercp stacks up against Android and other Mobile Rich Client Platforms. Ken Walker, J9 Java Class Libraries David Girle, Client Solutions WPLC How ercp stacks up against Android and other Mobile Rich Client Platforms Ken Walker, J9 Java Class Libraries David Girle, Client Solutions WPLC Copyright IBM Corp., 2007-2008; any source code made available

More information

Mobile Application Design and Development With the use of J2ME Technology & UML m.khlaif Computer Science Dept Garyounis University

Mobile Application Design and Development With the use of J2ME Technology & UML m.khlaif Computer Science Dept Garyounis University Garyounis University Press Journal of Science and Its Applications Vol. 3, No. 1, pp 83-93, April 2009 83 Mobile Application Design and Development With the use m.khlaif Computer Science Dept Garyounis

More information

Embedded Linux UI Comparison. Tim Bird Senior Staff Software Engineer Sony Electronics

Embedded Linux UI Comparison. Tim Bird Senior Staff Software Engineer Sony Electronics Embedded Linux UI Comparison Tim Bird Senior Staff Software Engineer Sony Electronics 1 yyyy-mm-dd Agenda Embedded Linux UI options Comparison points Presence at ELC Evaluations

More information

Android Overview. Francesco Mercaldo, PhD

Android Overview. Francesco Mercaldo, PhD Android Overview Francesco Mercaldo, PhD Post-Doctoral researcher Corso di Sicurezza delle Reti e dei Sistemi Software Università degli Studi del Sannio (fmercaldo@unisannio.it) Things are not always what

More information

Selected Topics in Computer Engineering ENC-360

Selected Topics in Computer Engineering ENC-360 Selected Topics in Computer Engineering ENC-360 Dr. Feda AlShahwan Computer Section Electronic Engineering Department College of Technological Studies Public Authority for Applied Education and Training

More information

SA Supported Platforms

SA Supported Platforms Guide SA Supported s Service Package Version 6.5 Juniper Networks, Inc. 1194 North Mathilda Avenue Sunnyvale, CA 94089 USA 408 745 or 888 JUNIPER www.juniper.net September 1, 2009 Contents Introduction...1

More information

SMART PC ABSTRACT 12/19/2016. Sruthi Kadaveru Subhasree Neela

SMART PC ABSTRACT 12/19/2016. Sruthi Kadaveru Subhasree Neela SMART PC Sruthi Kadaveru 2657464 Subhasree Neela 2657462 ABSTRACT Android operating system runs on the top of Linux kernel yet lacks the potential to execute standard Linux desktop applications. Despite

More information

Tree-mapping Based App Access System for ios Platform

Tree-mapping Based App Access System for ios Platform Tree-mapping Based App Access System for ios Platform Project Report Supervisor: Prof. Rossiter Prepared by: WANG Xiao, MSc(IT) Student 3 May, 2012 Proposal number: CSIT 6910A-Final Table of Contents 1.

More information

Lecture 3 MOBILE PLATFORM SECURITY

Lecture 3 MOBILE PLATFORM SECURITY Lecture 3 MOBILE PLATFORM SECURITY You will be learning: What techniques are used in mobile software platform security? What techniques are used in mobile hardware platform security? Is there a common

More information

How To Install Flash Firefox Android Tablet Os On Hp

How To Install Flash Firefox Android Tablet Os On Hp How To Install Flash Firefox Android Tablet Os On Hp Adobe may have cut support for Flash in Android Jelly Bean and beyond, but it's not don't officially support Flash, it's really easy to add Flash support

More information

Multi-platform Mobile App. Development with Apache Cordova

Multi-platform Mobile App. Development with Apache Cordova Multi-platform Mobile App. Development with Apache Cordova MTAT.03.262 2017 Fall Jakob Mass jakob.mass@ut.ee 27.10.2017 MTAT.03.262 Introduction Fragmented market Developers have limited resources Platform

More information

Connecting with Tizen : An Overview & Roadmap. Mohan Rao

Connecting with Tizen : An Overview & Roadmap. Mohan Rao Connecting with Tizen : An Overview & Roadmap Mohan Rao Contents What is Tizen? Why Tizen? Device profile Tizen 2.4 Tizen 3.0 What s next? Conclusion 2 What is Tizen? (1/2) Designed for various category

More information

ArcGIS Runtime: Building Cross-Platform Apps. Rex Hansen Mark Baird Michael Tims Morten Nielsen

ArcGIS Runtime: Building Cross-Platform Apps. Rex Hansen Mark Baird Michael Tims Morten Nielsen ArcGIS Runtime: Building Cross-Platform Apps Rex Hansen Mark Baird Michael Tims Morten Nielsen Agenda Cross-platform review ArcGIS Runtime cross-platform options - Java - Qt -.NET ArcGIS Runtime: Building

More information

P a g e 1. Danish Tecnological Institute. Developer Collection Online Course k Developer Collection

P a g e 1. Danish Tecnological Institute. Developer Collection   Online Course k Developer Collection P a g e 1 Online Course k72809 P a g e 2 Title Estimated Duration (hrs) Adobe Acrobat Pro XI Fundamentals 1 Introduction to CQRS 2 Introduction to Eclipse 2 NHibernate Essentials 2 Advanced Scrum: Addressing

More information

Chapter 2. Operating-System Structures

Chapter 2. Operating-System Structures Chapter 2 Operating-System Structures 2.1 Chapter 2: Operating-System Structures Operating System Services User Operating System Interface System Calls Types of System Calls System Programs Operating System

More information

Our Technology Expertise for Software Engineering Services. AceThought Services Your Partner in Innovation

Our Technology Expertise for Software Engineering Services. AceThought Services Your Partner in Innovation Our Technology Expertise for Software Engineering Services High Performance Computing MultiCore CPU AceThought experts will re-design your sequential algorithms or applications to execute in parallel by

More information

HTML5 for mobile development.

HTML5 for mobile development. HTML5 for mobile development Txus Ordorika @txusinho @ludei HTML5 for development (I) HTML5 to be the silver bullet of development Low entrance - barrier Runs over VM (write once, run everywhere) ECMA-262

More information

Implementing ArcGIS Mobile Applications for the Enterprise

Implementing ArcGIS Mobile Applications for the Enterprise Implementing ArcGIS Mobile Applications for the Enterprise Myles Sutherland Glenn Meister ESRI Developer Summit 2008 1 Schedule 75 minute session 60 65 minute lecture 10 15 minutes Q & A following the

More information

Advanced Web Applicatio Design Patter. Rupak Raj Ghi

Advanced Web Applicatio Design Patter. Rupak Raj Ghi Advanced Web Applicatio Design Patter Rupak Raj Ghi Pratham IT System Pv Bio #ComputerEngineer #SoftwareEngineer #Developer Education: #ME CE (KU) Experience: 6 yrs. Bee IT System, Department of Land Information

More information