The document discusses operating systems for mobile devices. It defines an operating system as the master control program that manages all software and hardware resources, controls memory allocation, and manages processes, tasks, threads, interrupts, and other functions. It also describes features of mobile operating systems like Linux, which is an open-source OS that allows customization and has been used in phones like the Motorola Rokr E2 for its security and support for various hardware and applications.
- J2ME is a Java platform for embedded and mobile devices like phones, PDAs, etc.
- It has three main configurations: CLDC for low-end devices, CDC for more powerful devices, and Java SE for desktops.
- Profiles add functionality and APIs to configurations for specific device types. The main profile is MIDP for mobile phones.
- Optional packages provide additional common APIs like Bluetooth, messaging, location services, etc.
- J2ME is widely used in low-cost mobile devices but has declined on newer smartphones that use Android or iOS.
Android Services Black Magic by Aleksandar GargentaMarakana Inc.
Presented at Android Builders Summit on February 14th in Redwood Shores, CA by Aleksandar (Saša) Gargenta, from Marakana Inc.
For the complete slides from this talk go to http://mrkn.co/munz7
"The most interesting part of Android stack are the Android System Services. The 60+ such services expose the low level functionality, such as Power Management, Wifi, Camera, Sensors, GPS, Display, Audio, Media, and so on, all the hardware all the way up to the application layer. While each one is different, the all have certain similarities, namely the way they rely on Binder (Android's IPC mechanism), use JNI to cross Java-C boundary, and use of shared libraries to abstract the Linux drivers. In this talk, we'll explore the common system services in Android and discuss their architecture. You will get to see the diagrams of the inner workings of some of the previously undocumented parts of the Android stack. By the end of the talk, you should have a better understanding of the underpinnings of the backbone of Android OS."
https://events.linuxfoundation.org/events/android-builders-summit/gargentaa
This document provides an overview of J2ME (Java 2 Micro Edition), which is designed for limited resource devices like PDAs, mobile phones, and pagers. It discusses why J2ME was created, its basic components like configurations and profiles, common APIs, examples of MIDlets and user interfaces, and requirements for developing J2ME applications.
This document contains a resume for Bruce Ramsland, a senior software engineer with extensive experience developing firmware and host applications using C/C++. His most recent role involved developing ultrasonic biometric products using cryptography. He is seeking a senior software engineering position requiring skills in areas like C/C++, OpenSSL, biometrics, USB, and Windows kernel drivers. The resume provides details on his background, skills, and work history developing various firmware, drivers, and applications.
Download Complete Material - https://www.instamojo.com/prashanth_ns/
This Java Mobile Application Development Using J2ME (Java 2 Micro Edition) contains 12 Units and each unit contains 50 to 60 slides in it.
Contents…
• Identify the types of wireless technologies
• Identify the need for J2ME
• Identify the goals and characteristics of JTWI specification
• Identify the MIDlet development lifecycle
• Execute a MIDlet by using NetBeans
• Explain the profiles and configurations in J2ME technology
• Manage MIDlet suite and its packaging
• Develop, package, and run MIDlet suites by using NetBeans
• Describe MIDP User Interface components and their hierarchy
• Work with Screen and its elements
• Create UI using high-level UI APIs
• Create a mail application UI that implements high-level APIs
• Create User Interfaces (UIs) using low-level UI APIs
• Manage a wallpaper from a mobile device
• Implement persistent storage in MIDlets
• Develop a personal expense manager application
• Establish network connection by using the GCF
• Implement classes and interfaces in javax.microedition.io package
• Develop a new application that displayed on the mobile device as a ticker
• Implement MIDlet security
• Develop a banking application
• Identify MMAPI packages and its components
• Play sounds and videos by using the MMAPI package
• Develop a jukebox application
• Identify the basics of WMA
• Create, send, and receive SMS messages by using WMA
• Demonstrate the use of SMS in NetBeans
• Analyze and implement classes in the MIDP Game API
• Develop a Tic Tac Toe game by using the Game API
• Deploy MIDlets through the local machine and Web server
• Explore the push registry
Android forensics an Custom Recovery ImageMohamed Khaled
Mobile Forensic Process
Different Mobile Forensic Scenario
Acquisition Guide
Challenges of Android Forensics
How to Circumvent the Pass Code
Types Of Analyses(Logical analysis)
Types Of Analyses(Physical analysis)
Android Partition Layout
Custom Recovery Modifications
How Data are Stored In Android
Example of Useful Data extracted from Android Image
The document provides an overview of Java 2 Platform, Micro Edition (J2ME):
J2ME is a Java platform for resource-constrained devices. It defines configurations like CLDC for very limited devices and CDC for more capable devices, as well as profiles like MIDP that add functionality. MIDP targets mobile information devices and defines APIs for user interfaces, storage, and networking. Developing for J2ME requires choosing a configuration and profile, then building a MIDlet application within their constraints.
The document discusses operating systems for mobile devices. It defines an operating system as the master control program that manages all software and hardware resources, controls memory allocation, and manages processes, tasks, threads, interrupts, and other functions. It also describes features of mobile operating systems like Linux, which is an open-source OS that allows customization and has been used in phones like the Motorola Rokr E2 for its security and support for various hardware and applications.
- J2ME is a Java platform for embedded and mobile devices like phones, PDAs, etc.
- It has three main configurations: CLDC for low-end devices, CDC for more powerful devices, and Java SE for desktops.
- Profiles add functionality and APIs to configurations for specific device types. The main profile is MIDP for mobile phones.
- Optional packages provide additional common APIs like Bluetooth, messaging, location services, etc.
- J2ME is widely used in low-cost mobile devices but has declined on newer smartphones that use Android or iOS.
Android Services Black Magic by Aleksandar GargentaMarakana Inc.
Presented at Android Builders Summit on February 14th in Redwood Shores, CA by Aleksandar (Saša) Gargenta, from Marakana Inc.
For the complete slides from this talk go to http://mrkn.co/munz7
"The most interesting part of Android stack are the Android System Services. The 60+ such services expose the low level functionality, such as Power Management, Wifi, Camera, Sensors, GPS, Display, Audio, Media, and so on, all the hardware all the way up to the application layer. While each one is different, the all have certain similarities, namely the way they rely on Binder (Android's IPC mechanism), use JNI to cross Java-C boundary, and use of shared libraries to abstract the Linux drivers. In this talk, we'll explore the common system services in Android and discuss their architecture. You will get to see the diagrams of the inner workings of some of the previously undocumented parts of the Android stack. By the end of the talk, you should have a better understanding of the underpinnings of the backbone of Android OS."
https://events.linuxfoundation.org/events/android-builders-summit/gargentaa
This document provides an overview of J2ME (Java 2 Micro Edition), which is designed for limited resource devices like PDAs, mobile phones, and pagers. It discusses why J2ME was created, its basic components like configurations and profiles, common APIs, examples of MIDlets and user interfaces, and requirements for developing J2ME applications.
This document contains a resume for Bruce Ramsland, a senior software engineer with extensive experience developing firmware and host applications using C/C++. His most recent role involved developing ultrasonic biometric products using cryptography. He is seeking a senior software engineering position requiring skills in areas like C/C++, OpenSSL, biometrics, USB, and Windows kernel drivers. The resume provides details on his background, skills, and work history developing various firmware, drivers, and applications.
Download Complete Material - https://www.instamojo.com/prashanth_ns/
This Java Mobile Application Development Using J2ME (Java 2 Micro Edition) contains 12 Units and each unit contains 50 to 60 slides in it.
Contents…
• Identify the types of wireless technologies
• Identify the need for J2ME
• Identify the goals and characteristics of JTWI specification
• Identify the MIDlet development lifecycle
• Execute a MIDlet by using NetBeans
• Explain the profiles and configurations in J2ME technology
• Manage MIDlet suite and its packaging
• Develop, package, and run MIDlet suites by using NetBeans
• Describe MIDP User Interface components and their hierarchy
• Work with Screen and its elements
• Create UI using high-level UI APIs
• Create a mail application UI that implements high-level APIs
• Create User Interfaces (UIs) using low-level UI APIs
• Manage a wallpaper from a mobile device
• Implement persistent storage in MIDlets
• Develop a personal expense manager application
• Establish network connection by using the GCF
• Implement classes and interfaces in javax.microedition.io package
• Develop a new application that displayed on the mobile device as a ticker
• Implement MIDlet security
• Develop a banking application
• Identify MMAPI packages and its components
• Play sounds and videos by using the MMAPI package
• Develop a jukebox application
• Identify the basics of WMA
• Create, send, and receive SMS messages by using WMA
• Demonstrate the use of SMS in NetBeans
• Analyze and implement classes in the MIDP Game API
• Develop a Tic Tac Toe game by using the Game API
• Deploy MIDlets through the local machine and Web server
• Explore the push registry
Android forensics an Custom Recovery ImageMohamed Khaled
Mobile Forensic Process
Different Mobile Forensic Scenario
Acquisition Guide
Challenges of Android Forensics
How to Circumvent the Pass Code
Types Of Analyses(Logical analysis)
Types Of Analyses(Physical analysis)
Android Partition Layout
Custom Recovery Modifications
How Data are Stored In Android
Example of Useful Data extracted from Android Image
The document provides an overview of Java 2 Platform, Micro Edition (J2ME):
J2ME is a Java platform for resource-constrained devices. It defines configurations like CLDC for very limited devices and CDC for more capable devices, as well as profiles like MIDP that add functionality. MIDP targets mobile information devices and defines APIs for user interfaces, storage, and networking. Developing for J2ME requires choosing a configuration and profile, then building a MIDlet application within their constraints.
This document provides an overview of the Java 2 Platform, Micro Edition (J2ME). It discusses that J2ME was created to provide a Java environment for small, memory-constrained devices. It focuses on the core concepts of J2ME, including configurations like CLDC and CDC that define minimum requirements, profiles that add domain-specific classes, and optional packages that provide additional APIs. The document also provides examples of MIDP, the profile for mobile information devices, and how it defines classes to build interactive J2ME applications through the use of MIDlets.
The document provides an overview of J2ME (Java 2 Micro Edition), which is a version of Java designed for small, resource-constrained devices. It discusses what J2ME is, the motivations for its creation, its core concepts including configurations, profiles, and optional packages, and how to get started developing applications using J2ME. The document serves as an introduction to the J2ME platform for developing applications on devices such as mobile phones, PDAs, and other small computing devices.
J2ME (Java Platform, Micro Edition) provides a Java platform for resource-constrained devices like cell phones and PDAs. It includes configurations like CLDC (Connected Limited Device Configuration) and CDC (Connected Device Configuration) that define the Java features and APIs supported. Profiles like MIDP (Mobile Information Device Profile) build on these configurations to provide functionality for specific device types. Optional packages can additionally extend the features available to applications.
This document outlines an agenda for a J2ME mobile app development workshop. It includes sections on programming for mobile devices, Java and mobile app development, the J2ME architecture, how to write code and scope, test, and deploy J2ME apps. It also discusses tools, best practices, and includes a networking demo. The goal is to educate attendees on developing apps for mobile Java platforms like J2ME.
Introduction to Mobile programming(J2ME)Wambua Wambua
J2ME is a Java platform for small computing devices like mobile phones and PDAs. It uses a stripped-down Java API and virtual machine called CLDC. The J2ME architecture has three layers - configuration, profile, and MIDP. The configuration defines the JVM, profiles provide features for device classes, and MIDP is the most popular profile for mobile information devices. MIDP applications are called MIDlets, which are packaged in JAR files along with optional JAD descriptor files.
The document discusses different types of thin clients that can be used to access an InduSoft Web Studio application remotely. It describes the installation, configuration and execution of web thin clients, secure viewer thin clients, and mobile access thin clients. Web thin clients allow remote access via a web browser while secure viewer thin clients use a dedicated viewer application. Both require configuration of the application files, data server, and firewall ports on the application server.
Windows Phone 8 Security and Testing WP8 AppsJorge Orchilles
This document discusses security testing of Windows Phone 8 applications. It provides an overview of the Windows Phone 8 platform and architecture, including the use of the NT kernel and sandboxing of applications. Methods for testing applications are covered, including dynamic analysis using a proxy to view network traffic and static analysis by decompiling application files. Vulnerabilities that may be tested for are also outlined, such as lack of encryption or validation of certificates. The document concludes that while application testing depends on access to application files, server and client side testing is similar to other mobile platforms.
Java 2 Micro Edition (J2ME) is Sun's version of Java targeted at devices with limited hardware resources. It includes configurations like Connected Limited Device Configuration (CLDC) for small wireless devices and Connected Device Configuration (CDC) for larger devices. Profiles like Mobile Information Device Profile (MIDP) define functionality on top of configurations for different device types. J2ME is defined through the Java Community Process (JCP) and specifications are developed as Java Specification Requests (JSRs).
MR201404 building secure linux application with privilege separationFFRI, Inc.
• Privilege separation limits incursion into your application
• Show key technology of privilege separation as follows:
– Process dividing
– Process sandboxing
– Inter-process communications
• Seccomp Mode 2 is state-of-the-art of Linux sandboxing
• Some security-critical open source software has been armed process diving and sandboxing
• Privilege separation increases security, but a development cost increase again
This document provides an overview of GUI programming using the Mobile Information Device Profile (MIDP). It discusses MIDlets, the basic application component in MIDP, and their lifecycle states of loaded, active, paused, and destroyed. It also summarizes the high-level and low-level APIs for user interfaces in MIDP 2.0, including classes like Form, List, TextBox, and GameCanvas. Finally, it notes that UI elements must implement the Displayable interface to be shown on the device screen.
As a leading NetSuite SDN Partner Folio3 specializes in NetSuite integration services. Our Built For NetSuite (BFN) certified NetSuite integration connectors provide out of the box, full automated integration between NetSuite and Magento, Salesforce, eBay and eBay Motors platforms.
We also provide custom NetSuite integration solutions for integrating NetSuite with EDI and order processing systems, SMS messaging platforms and a variety of other applications.
If you're looking for a cost effective NetSuite integration, please get in touch with us at netsuite@folio3.com
Folio3 is a development partner that specializes in building mobile, social, cloud-based, and gamified applications. They have over 200 employees across offices in the US, Canada, Bulgaria, and Pakistan. Folio3 focuses on developing custom enterprise applications, mobile apps, social media platforms and websites, and real-time and synchronous applications using technologies like MongoDB, NodeJS, SocketIO, and MeteorJS. Their clients include companies across industries like healthcare, digital media, and supply chain.
Pixar is an animation studio known for films like Toy Story and Cars. It was founded by Steve Jobs and pioneered CGI animation using its RenderMan software. Key people include Edwin Catmull, who helped develop RenderMan, and John Lasseter, a director who helped popularize 3D animation. Early films like Toy Story were a success, but Pixar struggled initially and almost failed before being purchased by Jobs. Pixar is now owned by Disney and has found continued success with films like Up, earning many awards. Future projects include Monsters University and Finding Dory.
This document provides instructions and details for navigating through two levels of a video game. It describes the main character Squid and enemies like crabs. It outlines obstacles like crushers, water bursts, and platforms. It explains the goals of collecting clues and reaching the rocket. Step-by-step instructions are provided for accessing the first clue in each level, which involve activating platforms and buttons. Strategies are outlined for getting past challenges like crushers and sky platforms safely.
Folio3 is a development partner that focuses on designing custom enterprise, mobile, and social media applications. It was founded in 2005 and has over 200 employees across offices in the US, Canada, Bulgaria, and Pakistan. Folio3 provides services for areas like enterprise solutions, mobile apps, and websites. Some of its clients include companies in healthcare, digital media, and supply chain industries. The document then provides an overview of regular expressions including literal characters, special characters, character classes, grouping, backreferences, and lookarounds.
The document provides an overview of the Yii web application framework and Folio3, a company that specializes in developing applications using Yii. It discusses Folio3's services, Yii's features like caching, authentication and code generation. It also provides examples of using models, controllers and views in Yii applications and compares Yii's performance to other frameworks like Drupal.
Existing HTTP Protocol Architecture
Traditional Methods for Server Push
- Polling
- Long Polling / Comet
- Pushlets / Streaming
Comet in detail
- Possible issues with Comet and their solutions
- Comet Demonstration : MediaMorph
Where does HTML5 fit-in?
HTML 5 Server Sockets
The presentation helps us in understanding the different concepts associated with TypeScript. What is TypeScript? Why is TypeScript used and the different applications of TypeScript. For more information you can simply visit: http://mobile.folio3.com/
ASP.NET over the years
- Introduced ASP.NET WebForms in 2002
- Object-oriented
- Similar design time experience for WinForms developers
- Rich set of user interface controls and infrastructure features
- Server-side event model
- Monolithic Framework
- Tighly coupled with System.Web.dll and IIS
- Included as part of the .NET framework
- Tied to .NET Framework releases
Folio3 is a software development company that focuses on custom enterprise, mobile, and social media applications. It was founded in 2005 and has over 200 employees across several offices. The document outlines Folio3's technical documentation guidelines and requirements for developers. It specifies that source code must include detailed comments, and projects require functional scope documents, UML diagrams, and overall architecture designs to ensure quality. Folio3 enforces these standards through documentation audits and by including documentation time in estimates.
This document provides an overview of the Java 2 Platform, Micro Edition (J2ME). It discusses that J2ME was created to provide a Java environment for small, memory-constrained devices. It focuses on the core concepts of J2ME, including configurations like CLDC and CDC that define minimum requirements, profiles that add domain-specific classes, and optional packages that provide additional APIs. The document also provides examples of MIDP, the profile for mobile information devices, and how it defines classes to build interactive J2ME applications through the use of MIDlets.
The document provides an overview of J2ME (Java 2 Micro Edition), which is a version of Java designed for small, resource-constrained devices. It discusses what J2ME is, the motivations for its creation, its core concepts including configurations, profiles, and optional packages, and how to get started developing applications using J2ME. The document serves as an introduction to the J2ME platform for developing applications on devices such as mobile phones, PDAs, and other small computing devices.
J2ME (Java Platform, Micro Edition) provides a Java platform for resource-constrained devices like cell phones and PDAs. It includes configurations like CLDC (Connected Limited Device Configuration) and CDC (Connected Device Configuration) that define the Java features and APIs supported. Profiles like MIDP (Mobile Information Device Profile) build on these configurations to provide functionality for specific device types. Optional packages can additionally extend the features available to applications.
This document outlines an agenda for a J2ME mobile app development workshop. It includes sections on programming for mobile devices, Java and mobile app development, the J2ME architecture, how to write code and scope, test, and deploy J2ME apps. It also discusses tools, best practices, and includes a networking demo. The goal is to educate attendees on developing apps for mobile Java platforms like J2ME.
Introduction to Mobile programming(J2ME)Wambua Wambua
J2ME is a Java platform for small computing devices like mobile phones and PDAs. It uses a stripped-down Java API and virtual machine called CLDC. The J2ME architecture has three layers - configuration, profile, and MIDP. The configuration defines the JVM, profiles provide features for device classes, and MIDP is the most popular profile for mobile information devices. MIDP applications are called MIDlets, which are packaged in JAR files along with optional JAD descriptor files.
The document discusses different types of thin clients that can be used to access an InduSoft Web Studio application remotely. It describes the installation, configuration and execution of web thin clients, secure viewer thin clients, and mobile access thin clients. Web thin clients allow remote access via a web browser while secure viewer thin clients use a dedicated viewer application. Both require configuration of the application files, data server, and firewall ports on the application server.
Windows Phone 8 Security and Testing WP8 AppsJorge Orchilles
This document discusses security testing of Windows Phone 8 applications. It provides an overview of the Windows Phone 8 platform and architecture, including the use of the NT kernel and sandboxing of applications. Methods for testing applications are covered, including dynamic analysis using a proxy to view network traffic and static analysis by decompiling application files. Vulnerabilities that may be tested for are also outlined, such as lack of encryption or validation of certificates. The document concludes that while application testing depends on access to application files, server and client side testing is similar to other mobile platforms.
Java 2 Micro Edition (J2ME) is Sun's version of Java targeted at devices with limited hardware resources. It includes configurations like Connected Limited Device Configuration (CLDC) for small wireless devices and Connected Device Configuration (CDC) for larger devices. Profiles like Mobile Information Device Profile (MIDP) define functionality on top of configurations for different device types. J2ME is defined through the Java Community Process (JCP) and specifications are developed as Java Specification Requests (JSRs).
MR201404 building secure linux application with privilege separationFFRI, Inc.
• Privilege separation limits incursion into your application
• Show key technology of privilege separation as follows:
– Process dividing
– Process sandboxing
– Inter-process communications
• Seccomp Mode 2 is state-of-the-art of Linux sandboxing
• Some security-critical open source software has been armed process diving and sandboxing
• Privilege separation increases security, but a development cost increase again
This document provides an overview of GUI programming using the Mobile Information Device Profile (MIDP). It discusses MIDlets, the basic application component in MIDP, and their lifecycle states of loaded, active, paused, and destroyed. It also summarizes the high-level and low-level APIs for user interfaces in MIDP 2.0, including classes like Form, List, TextBox, and GameCanvas. Finally, it notes that UI elements must implement the Displayable interface to be shown on the device screen.
As a leading NetSuite SDN Partner Folio3 specializes in NetSuite integration services. Our Built For NetSuite (BFN) certified NetSuite integration connectors provide out of the box, full automated integration between NetSuite and Magento, Salesforce, eBay and eBay Motors platforms.
We also provide custom NetSuite integration solutions for integrating NetSuite with EDI and order processing systems, SMS messaging platforms and a variety of other applications.
If you're looking for a cost effective NetSuite integration, please get in touch with us at netsuite@folio3.com
Folio3 is a development partner that specializes in building mobile, social, cloud-based, and gamified applications. They have over 200 employees across offices in the US, Canada, Bulgaria, and Pakistan. Folio3 focuses on developing custom enterprise applications, mobile apps, social media platforms and websites, and real-time and synchronous applications using technologies like MongoDB, NodeJS, SocketIO, and MeteorJS. Their clients include companies across industries like healthcare, digital media, and supply chain.
Pixar is an animation studio known for films like Toy Story and Cars. It was founded by Steve Jobs and pioneered CGI animation using its RenderMan software. Key people include Edwin Catmull, who helped develop RenderMan, and John Lasseter, a director who helped popularize 3D animation. Early films like Toy Story were a success, but Pixar struggled initially and almost failed before being purchased by Jobs. Pixar is now owned by Disney and has found continued success with films like Up, earning many awards. Future projects include Monsters University and Finding Dory.
This document provides instructions and details for navigating through two levels of a video game. It describes the main character Squid and enemies like crabs. It outlines obstacles like crushers, water bursts, and platforms. It explains the goals of collecting clues and reaching the rocket. Step-by-step instructions are provided for accessing the first clue in each level, which involve activating platforms and buttons. Strategies are outlined for getting past challenges like crushers and sky platforms safely.
Folio3 is a development partner that focuses on designing custom enterprise, mobile, and social media applications. It was founded in 2005 and has over 200 employees across offices in the US, Canada, Bulgaria, and Pakistan. Folio3 provides services for areas like enterprise solutions, mobile apps, and websites. Some of its clients include companies in healthcare, digital media, and supply chain industries. The document then provides an overview of regular expressions including literal characters, special characters, character classes, grouping, backreferences, and lookarounds.
The document provides an overview of the Yii web application framework and Folio3, a company that specializes in developing applications using Yii. It discusses Folio3's services, Yii's features like caching, authentication and code generation. It also provides examples of using models, controllers and views in Yii applications and compares Yii's performance to other frameworks like Drupal.
Existing HTTP Protocol Architecture
Traditional Methods for Server Push
- Polling
- Long Polling / Comet
- Pushlets / Streaming
Comet in detail
- Possible issues with Comet and their solutions
- Comet Demonstration : MediaMorph
Where does HTML5 fit-in?
HTML 5 Server Sockets
The presentation helps us in understanding the different concepts associated with TypeScript. What is TypeScript? Why is TypeScript used and the different applications of TypeScript. For more information you can simply visit: http://mobile.folio3.com/
ASP.NET over the years
- Introduced ASP.NET WebForms in 2002
- Object-oriented
- Similar design time experience for WinForms developers
- Rich set of user interface controls and infrastructure features
- Server-side event model
- Monolithic Framework
- Tighly coupled with System.Web.dll and IIS
- Included as part of the .NET framework
- Tied to .NET Framework releases
Folio3 is a software development company that focuses on custom enterprise, mobile, and social media applications. It was founded in 2005 and has over 200 employees across several offices. The document outlines Folio3's technical documentation guidelines and requirements for developers. It specifies that source code must include detailed comments, and projects require functional scope documents, UML diagrams, and overall architecture designs to ensure quality. Folio3 enforces these standards through documentation audits and by including documentation time in estimates.
Enterprises usually have more than one application
- Custom build applications
- Legacy systems
- ERP, CRM systems like SAP, Salesforce etc.
Users expect instant access to all business functions an enterprise can offer.
This requires disparate applications to be connected into a larger, integrated solution.
This integration is usually achieved through the use of some form of "middleware“.
- Study the architecture and design
- Compare Old & New Technology stack
- Analyze evolution of architecture and scalability
- Lessons learned over time
The document provides an overview of the Android mobile platform. It discusses the Android ecosystem and architecture, including the operating system, middleware, key applications, and development tools. The document outlines Android's open source nature, features like the Dalvik VM and app building blocks. It also provides references and contact information for the presenter.
The document summarizes key information about Android:
1) Android is an open-source software platform based on Linux for mobile devices. It uses Java for application development and includes features for hardware integration, security, and networking.
2) The Android software stack includes layers for hardware integration, core libraries, a virtual machine, application framework, and applications. It supports various hardware configurations and network connectivity standards.
3) Android applications are sandboxed for security and permissions are required for sensitive capabilities. Performance is optimized through techniques like avoiding unnecessary object instantiation and using native code where possible.
The document provides an overview of the Android operating system, including its architecture, development tools, and application lifecycle. It describes Android's core components like the Linux kernel, libraries, Dalvik virtual machine, and application framework. It also covers the anatomy of application development using the Android SDK, emulator, and debugging tools like DDMS. In conclusion, it discusses Android's potential beyond mobile devices.
Android is an open source software stack and operating system developed by Google and the Open Handset Alliance. It uses a Linux kernel with middleware, libraries and APIs written in C/C++ and application software running on an application framework and virtual machine. The Android architecture includes secure data storage using SQLite databases and files, as well as an application execution environment using the Dalvik virtual machine to run dex-format files efficiently across multiple processes with an activity-based lifecycle.
This document provides an overview of the Android operating system. It discusses that Android is an open source platform developed by Google and the Open Handset Alliance for mobile devices. It can run on smartphones, tablets, e-readers and other devices. The document describes the core components of Android including the Linux kernel, middleware, key applications and services. It also covers Android application development and the features and capabilities available to developers.
The document provides an overview of the Android software stack, which includes the Linux kernel, middleware, core libraries and runtime, frameworks, and key applications. It describes the various components of the Android software stack like the Dalvik VM, Binder IPC driver, SurfaceFlinger, AudioFlinger and how they work together to power the Android platform. The Open Handset Alliance manages the development of Android as an open source project under the Apache license.
The document provides an overview of the Android software stack, which includes the Linux kernel, middleware, core libraries and runtime, frameworks, and key applications. It describes the various components of the Android software stack like the Dalvik VM, Binder IPC driver, SurfaceFlinger, AudioFlinger and how they work together to power the Android operating system. The Open Handset Alliance manages the development of Android as an open source platform for mobile devices.
This document discusses web operating systems (web OS). It begins by defining a web OS as a software platform that interacts with users through a web browser and does not depend on any particular local OS. The main interface is the browser, which can perform typical OS functions like file access and preferences.
It then covers the history of web OS development from 1998 onwards. The technologies that power web OS are discussed, primarily AJAX and Flash. Example web OS like ICloud, Glide OS, and Eye OS are outlined. Advantages include portability across devices but disadvantages include always needing an internet connection and inability to access local hardware. In conclusion, web OS are predicted to become more prominent as more applications move online.
This document provides an overview of the Android operating system, including:
- A brief history of Android starting from its founding in 2003 by Android Inc. to being acquired by Google in 2005.
- An overview of the architecture of Android including the Linux kernel, libraries, Android runtime based on Java using the Dalvik VM, and core applications.
- A description of key Android features such as connectivity technologies, multitasking, media support, graphics capabilities, and the Android Market app store.
- A comparison of Android to other mobile operating systems such as BlackBerry, iOS, and Symbian.
Android is a software platform and operating system for mobile devices based on the Linux kernel. It was developed by Android Inc which was bought by Google in 2005. The goal was to create smarter mobile devices that are more aware of the owner's location and preferences. The first Android phone was released in 2008. Android uses libraries written in C/C++ and core Java libraries. Applications run in a sandboxed environment using the Dalvik virtual machine. The architecture includes components like activities, services, content providers and broadcasts that allow applications to work together in an integrated way.
AIR (Adobe Integrated Runtime) is a cross-platform runtime environment for building desktop applications using Adobe Flash and Flex technologies. It allows developers to reuse code and features from web applications, while also providing capabilities typically found in desktop apps like local data storage and the ability to run in the background. AIR competes with technologies like Google Gears, Mozilla Prism, and Microsoft Silverlight for developing rich internet applications that have more functionality than traditional web apps. It supports Windows, Mac, with Linux support in development.
The document discusses the development of the Android operating system. It describes how the Open Handset Alliance was formed in 2007 by Google and other companies to develop Android. Android is an open source software stack that includes an operating system, middleware and key apps. It uses the Java programming language and a custom virtual machine called Dalvik. The Android architecture includes frameworks for applications, libraries, the Android runtime and the Linux kernel. It also discusses the lifecycles of Android services and applications.
The document provides an overview of the Android framework, which consists of the Linux kernel, Dalvik virtual machine, core libraries, and application framework. It also summarizes the key developer tools for Android including the SDK, Eclipse plugin, emulator, and debugger. Finally, it outlines some of the main terminology for developing Android apps such as activities, intents, manifest files, resources and layouts.
The document provides an overview of the Android platform. Some key points:
- Android is an open-source software platform based on Linux and allows developers to write managed code in Java. It includes APIs for app development, an operating system, and core apps.
- The Open Handset Alliance oversees Android development and aims to advance open standards for mobile devices.
- Developers can use IDEs like Eclipse with the Android SDK to build apps, which are then published through stores like Google Play.
- The document outlines Android architecture, tools, app development process, and provides sample apps. It also evaluates Android's advantages like customization and limitations like Bluetooth support.
Android is an open source, Linux-based operating system for mobile devices. It was developed by Android Inc, which was acquired by Google in 2005. Some key points about Android include:
- It is based on the Linux kernel and uses the Dalvik virtual machine.
- It has a multi-layered architecture with the Linux kernel at the bottom and applications at the top.
- It emphasizes security through application sandboxing and permissions to control access to device resources.
Google released the Android mobile operating system in 2007. Android is an open source software stack that includes an operating system, middleware and key applications. It uses the Linux kernel and is developed using the Java programming language. The Android software architecture includes components like the Dalvik virtual machine, application framework, libraries and core applications. Developers can create applications using the Android SDK that will run within the Android environment on mobile devices.
Introduction to Mobile Operating System.pptxaparna14patil
The document discusses various aspects of mobile operating systems. It begins by defining a mobile operating system as the software that controls mobile devices. It then lists some key features of mobile OSes like connectivity, application stores, and built-in apps. The two most widely used mobile operating systems are identified as Apple's iOS and Google's Android. The document also provides an overview of the architecture and layers of the Android operating system.
This document provides an overview of Android architecture and components. It describes that Android is an open source software stack that includes an operating system, middleware and key applications built around the Linux kernel. The Android software architecture consists of applications, an application framework, libraries and services, and the operating system. It explains the main components of an Android application - activities, services, broadcast receivers and content providers.
Shopify & Shopify Plus Ecommerce Development Experts Folio3 Software
As Shopify developers and experts specializing in Shopify design and development services, we have been enabling businesses outpace their competition and deliver value to their customers for over five years. Our Shopify and Shopify Plus experts offer full spectrum Shopify development services and solutions to clients across a wide range of industries. From Shopify design, Shopify customization and Shopify app development, to full-fledged Shopify migration and Shopify support services, we are your go-to Shopify development partner.
Our white-glove approach and hands on bedside manner makes us the perfect partner to help turn around your ecommerce business. Whether you’re looking to enhance your Shopify store’s customer experience, convert your ecommerce idea into a fully functional Shopify web store, or want to migrate your existing ecommerce site to Shopify or Shopify Plus, our Shopify experts can help you get there. Our service focus for Shopify development is based on providing services related to:
Shopify Design
Shopify Customization
Shopify Integration Solutions
Shopify App Development
Shopify Migration (from other ecommerce platforms)
Shopify Support
At Folio3 we specialize in all aspects of Magento development, from Magento design and web store development, to Magento customization, Magento integration and custom Magento extensions. As a Magento 2 Trained Solution Partner with over 10 years of ecommerce expertise, and a dedicated team of certified Magento development experts (including certified Magento & Magento 2 developers, architects and project managers), we can assist you with practically any Magento development requirement. Our Magento service focus is based on:
Magento (1 & 2) Customization
Magento Integration Solutions
Magento Design
Magento (1 & 2) Development
Magento Migration (from other platforms)
Magento Performance Optimization
Magento Support
Custom Magento Extensions & Modules
Folio3 is a development partner that focuses on building custom enterprise, mobile, and social media applications. It was founded in 2005 and has over 200 employees across offices in the US, Canada, Bulgaria, and Pakistan. Go-Lang is a statically-typed, compiled programming language designed for building scalable network applications and facilitating concurrency. Key features include structs instead of classes, built-in concurrency through goroutines and channels, and static compilation to binary files.
Folio3 is a development partner that specializes in custom enterprise applications, mobile apps, and social media solutions. They provide expertise in areas like mobile, social, cloud, and gamification. The document introduces SharePoint 2013 and covers its installation process. It also provides overviews of key SharePoint 2013 features such as Business Connectivity Services, Business Intelligence, Identity Management, mobile enhancements, web content management, and workflows. Finally, it discusses customization options and tools in SharePoint development.
Agenda
- BlackBerry OS History
- BlackBerry 10 & QNX
- Comparison With Other Mobile OS
- Enterprise Mobility & Security
- Demo
- How To Develop Apps?
- Case Study – A Secure Messaging App
- Future
First attempt -> RIM (1990)
- Blackberry Platform + Blackberry Enterprise Server (BES)
- Corporate-owned personally-enabled (COPE) Model
- Mainly enterprise data, and communication; no or little operations
- Pros & Cons
1. Very effective; secure
2. Very costly
Distributed and Fault Tolerant Realtime Computation with Apache Storm, Apache...Folio3 Software
Folio3 is a software development company that focuses on building mobile, social, cloud-based, and gamified applications. They have over 200 employees across offices in the US, Canada, Bulgaria, and Pakistan. Folio3 works with enterprise and consumer clients to develop custom applications for areas like mobile, web, social media, and more. They also have expertise in distributed and fault-tolerant real-time computation using Apache Storm.
Folio3 is a development partner that focuses on designing custom software solutions, including enterprise applications, mobile apps, and social media platforms. It was founded in 2005 and has over 200 employees across offices in Palo Alto, CA, Sofia, Bulgaria, Karachi, Pakistan, and Toronto, Canada. Folio3's expertise includes building applications that are mobile, social, cloud-based, and gamified. It provides services to enterprise clients across industries like healthcare, digital media, and supply chain, as well as consumer mobile and social media clients.
Agenda
- What is NOSQL?
- Motivations for NOSQL?
- Brewer’s CAP Theorem
- Taxonomy of NOSQL databases
- Apache Cassandra
- Features
- Data Model
- Consistency
- Operations
- Cluster Membership
- What Does NOSQL means for RDBMS?
Folio3 is a software development company that focuses on designing custom enterprise, mobile, and social media applications. They have over 200 employees across offices in the US, Canada, Bulgaria, and Pakistan. The document outlines Folio3's areas of expertise and best practices for software development and databases, including using consistent naming conventions, short methods, clear comments, specific exceptions, and avoiding wildcard queries.
This document discusses strategies for scaling web applications. It identifies key areas like the database, application, web server, scripting language, hardware, and hosting that impact scalability. Specific solutions proposed include adding servers horizontally, caching outputs, optimizing databases through indexing and load balancing, profiling applications to identify bottlenecks, tuning web and scripting language servers, using solid state drives, and leveraging the cloud for easy scaling. Resources are provided for further reading on high performance PHP and LAMP application scalability.
Web Application Security DOs and DON’Ts
While you do not know attacks, how can you know about defense?
http://web.folio3.com/services/web-application-development/
The document discusses optimizing client-side delivery of web resources for performance. It notes that generation time accounts for 10-20% of performance, while delivery time accounts for 80-90%. Faster load times improve the customer experience and can increase revenue. Various techniques are presented for reducing load times, such as minimizing HTTP requests, optimizing caching, using content delivery networks, browser-based compression, and minimizing file sizes.
The document discusses dimensional modeling, which structures data from online transaction processing (OLTP) systems for online analytical processing (OLAP). It covers extracting and transforming OLTP data and loading it into a data warehouse with a star schema. Facts and dimensions are identified based on business requirements and grains of data. Tables are designed around the identified dimensions and facts. Data is then transformed from the OLTP to the OLAP schema for analysis and reporting.
The document discusses caching techniques and tools. It introduces common caching tools like Memcache, Redis, and Varnish that can be used to speed up web applications. It then covers caching implementation details like populating the cache, managing cache size, and keeping the cache and source data in sync. The document also discusses caching challenges and provides comparisons of Memcache and Redis.
An Overview of Blackberry 10 & Blackberry App DevelopmentFolio3 Software
The document provides an overview of BlackBerry 10 and Folio3. It discusses BlackBerry's history with mobile operating systems leading up to the development of BlackBerry 10 based on the QNX operating system. It then compares BlackBerry 10 to other mobile operating systems, outlines enterprise mobility and security features, and demonstrates app development options for BlackBerry 10.
Cross Platform Mobile App Development - An Introduction to Sencha TouchFolio3 Software
Sencha Touch is a high-performance HTML5 based mobile application framework that enables mobile app developers to build cross platform mobile apps that work on a variety of platforms such as iOS, Android, BlackBerry, Kindle Fire and more. In this presentation we'll introduce you to the concepts and techniques behind Secha and help you get started with mobile app development using Secha Touch.
2. www.folio3.com
Mobile Platforms
There a lot of mobile
platforms
SymbianOS
IPhoneOS
BlackberryOS
WinMo
ALP
OpenMoko
WebOS
Android
BadaOS
Mobile Platform
requirements
Stable real-time kernel
Steady HAL
Power management
Rich system libraries
Rich application
framework
Essential applications
Steady UI
Optimized application
management
3. www.folio3.com
Introduction
Another Mobile Platform
Offers
Operating System
Kernel: Linux 2.6
Sys Library: Subset of LibC, LibM,
A complete application stack
User land applications
Development infrastructure
SDK 2.0.1
Java
NDK 1.5
C/C++
Components reusability and integration
Based on ARM based processor
Can be run on x86 platform
4. (Cont.) Introduction
License
Open source from the beginning
Apache License
Made available
Primarily for
Cell (mobile) devices
But can also be use on
MIDs
Nettops
Mobile gaming devices
Other light weight devices
Releases
1.5 – Cupcake
1.6 – Donut
2.0 – Eclair
2.1 – Extension to Eclair
www.folio3.com
5. Support
Full multimedia hardware and software stack
Advanced application supports
Background services
Complex widgets
Easy and manageable lifecycle
Full control of the hardware through well designed
APIs
Advanced I/O supports
www.folio3.com
6. History
July 2005
Google acquired Android Inc.
November 2007
OHA, Open Handset Alliance, consortium started with
Texas Instruments, Broadcom Corporation, Google, HTC, Intel, LG, Marvell
Technology Group, Motorola, Nvidia, Qualcomm, Samsung Electronics, Sprint
Nextel, T-Mobile
October 2008
First Android phone release – HTC Dream
December 2008
OHA, Open Handset Alliance, expanded with
ARM Holdings, Atheros Communications, Asustek Computer Inc, Garmin Ltd.,
Softbank, Sony Ericsson, Toshiba Corp, Vodafone Group
January 2010
OHA, Open Handset Alliance, expanded with
China Mobile Comm Corp., China Telecomm Corp., China United
Network Comm., KDDI Corp., NTT DoCoMo Inc., Bouygues Telecom, etc
www.folio3.com
9. The Kernel
Kernel – Linux 2.6
Patches – Android
Ashmem, binder, and Android Power Management (PM)
OS HAL
Provides management for
Memory modules (Primary, Secondary)
Processes
Provides networking stack
Full TCP/IP v4 support
Provides device drivers
Telephony, GSM, CDMA, GPRS, Edge, 3G, WiFi, Bluetooth, others
transceivers
Accelerometer, gyroscope , GPS transceiver, magnetometer
Touchscreen, keyboard, keypad, camera
VGA display
Others
www.folio3.com
10. Native System Libraries
C/C++ libraries
Interface through Java layer
Includes …
1. Standard UNIX libc libraries
Called BIONIC
Derived from BSD
Only on ARM and x86 platforms
1. Surface manager
2. 3D graphics with/without H/W acceleration using OpenGL ES
3. 2D scalable vector graphics using SGL (Skia)
4. TrueType fonts
5. Media frameworks including audio, video codecs
6. HTTP rendering engine – Webkit
7. Light database management through SQLite3
8. TCP socket security through SSL
www.folio3.com
11. Java Runtime
Specialized Virtual Machine
Dalvik Virtual Machine
Written by Dan Bornstein
Architecture - Register-based machine
Class files - Delvik Executibles .dex files
Structures ? Difference from normal class files
Light weight, compact, and processor and memory efficient
An uncompressed .dex size is less than compressed .jar
Can contain several classes
Code reordering and re-organization at installation time
Designed to enable execution of multiple instances
www.folio3.com
12. (Cont.) Java Runtime
Relies on Linux for underlying functionality such as
multi-threading and low level memory management
The dx utility
No official JIT compiler
Core library – Java 1.5 SDK
Completely not compatible with Java SE and ME
class library profiles
E.g., J2ME, AWT, Swing are not supported
Subset of the Apache Harmony
www.folio3.com
13. Dalvik Virtual Machine
Motivation
Can run on lesser RAM
Can run on slower CPUs
Can run without swap space defined
Can run with less power
Can enable concurrent execution of multiple instances
Memory efficiency
More memory requirement
Each application runs in its own address space – process
Optimization
Shared constant pool in .dex files
Minimal repetition
Per type pools (implicit typing)
Implicit labeling
www.folio3.com
14. (Cont.) Dalvik Virtual Machine
Emphasis to use clean (shared/private) memory
Emphasis to limit the use of dirty private memory
Memory types
Clean memories
Common .dex files (shared)
Application specific .dex files (private)
Private dirty memories
Application “live” .dex structures
Application heap
Shared dirty memories
Common “live” .dex structures
Shared COW heap
www.folio3.com
15. (Cont.) Dalvik Virtual Machine
Separate Garbage Collection meta
Specialized GC meta structures
Optimized for memory usage with less fragmentation and sharing
Each application heap is GCed independently
Run time efficiency
Install time verification
Static type and reference checking, indices and offset checking
Reduces run-time cost of checking the code
Install time optimization
Byte swapping and padding
Static linking
Inlining special native methods
Pruning empty methods
Adding auxiliary data
Creating shared constant pools
www.folio3.com
16. (Cont.) Dalvik Virtual Machine
Why
To avoid instruction dispatch
Avoid unnecessary memory accesses
Consume instruction stream efficiently
Higher semantic density per instruction
Uses register based interpreter
Stacks are used to keep tracks on the methods nesting and
calling sequence
Efficient initialization and management of array data
www.folio3.com
17. Enter the Zygote
The first process
Similar to UNIX init process
Preloads and preinitializes shared classes
Create clean shared memories
Create dirty shared memories
Uses UNIX fork() to start a new application
Provides shared mapping to the child
processes for shared classes
Promotes the sharing of common code
www.folio3.com
18. Application Framework
All Java Libraries
1. Activity manager – Manages application life cycle
An activity is an application UI window
Activities are managed through system’s activity stack
Four states of activity
Foreground – top on activity stack
Paused – when lost focus, and still showing (partially) on the screen.
Stopped – When completely hidden by another activity
Killed - Killing the process
1. Package manager – Installed software manager
2. Window manager – Manages UI components along with
screens and transitions
3. Telephony manager – Provides the interface to the underneath
telephony/GSM services
www.folio3.com
19. (Cont.) Application Framework
5. Resource manager – Provides access to the non-code
components such as images, icons, audio/video, string
tables, etc.
6. Content manager – Mediates in the data sharing among
applications, such as contacts are shared to other
application.
Various content providers
Can access others, and publish own
Content provider security
5. Location manager – Provides intends on registered
location. Uses GPS, or GSM tower ID or WiFi location
beacons to determine location.
www.folio3.com
20. (Cont.) Application Framework
8. View system – Provides widgets to the
application to create activities
Two new views; MapView and WebView
8. Notification manager – Enables the application
to show custom alerts on the status bar.
9. XMPP services – Peer-to-peer Android device
communication layer
www.folio3.com
21. Applications
Java applications
Runs in separate user address space - process
Each is managed by its own DVM instance
Can be replaced
Can be installed from
Online app stores
Usually end up in calling native code that might
goes to the kernel system call
www.folio3.com
22. Security & Access Control
Only Java applications can be installed
Each application runs in its process under DVM
Each process (DVM) is a sandbox
Each application has its own UIDs and GIDs
Additional access control on several operations
Architecture:
No application by default has permission to perform any operation that would
adversely impact other applications, operating system, or the user.
Such as
R/W on user’s private data; contacts
R/W on another application data files
Performing network (through GPRS/Edge, Wifi), bluetooth access, or
Keeping the device awake
Application certificate, UID/GID, Access Control and URI Permissions
www.folio3.com
23. (Cont.) Security & Access
Control
Application signing and certification
Contains authors identification, and signing authority
Access control
The sandbox is executed with some permissions (access control) to the
operations.
These access control permissions are defined in the application package,
Set at installation point, and
Can be modified by user when OS prompt for the permission to perform the
operation
UIDs and GIDs
Each application and its components are installed with unique UID
Limits the applications to access
Shared UIDs
Only allow applications with identical digital signature
Each file created has the creator’s UID
www.folio3.com
24. (Cont.) Security & Access
Control
URI permissions
Mainly for content providers
Allows capability like access control
Enables applications to manage other application’s accesses on their shared
contents
www.folio3.com
25. OS Concerns
Kernel
No udev support
Static hardware linking and policy
No dynamic hotplug control and management
Replaced by Vold
Provides static hotplug events processing
Storage devices are not managed by HAL (VFS)
Replaced by Vold
Responsible of mounting and unmounting of MMC subsystem
device
Hardcoded power-management policy
Layered PM design
Android PM mapped on Linux PM module
To change the Android PM policy requires code change
www.folio3.com
26. (Cont.) OS Concerns
Limited, un-natural (non-Linux style) I/O support
Un-orthodox touchscreen support
No official support through tslib
Fixed sized framebuffer
No support for larger resolution > 1024x768
Static hardware support assumptions
Telephony (3G signal indicator hardcoded)
Wifi (signal indicator hardcoded)
Ringer volume slider assumes telephony present
No official Ethernet support
No X Window System support
www.folio3.com
27. (Cont.) OS Concerns
LibC - Bionic
No glibc support
Only available on ARM and x86 platforms
Partial pthreads support
No SysV IPC support
Limited C++ support
No STL support
No Linux headers
Limiting the development of native binaries
www.folio3.com
28. Application Development
Online official guide
http://developer.android.com/guide/index.html
Development with Eclipse
Using ADT plugin
Tools
Android – To create/update projects
Emulator – Qemu based ARM emulation system
Debugger bridge – To interface with the emulator
Ant – To compile and build projects into .apk files
Keytool – To maintain keystore and private keys
Jarsigner – To sign .apk files with private keys
www.folio3.com
29. (Cont.) Application
Development
Requires to learn the following skills
1. Java programming language
2. Java 1.5 SDK library
3. Android application life cycle
4. Android APIs
5. Mobile HPC programming
6. Use of sensory hardware and Internet services
www.folio3.com
30. (Cont.) Application
Development
Native Development (NDK)
http://developer.android.com/sdk/ndk
Java Vs. Native development
Why native development is required?
Situations
Resource intensive work
Complex algorithms
Hardware interactions
…
www.folio3.com
31. Limitations
Kernel
Limited support for Mass Storage Devices
No official support for mouse, Ethernet devices
No support of other filesystems, and hardware
Very thin network protocol stack
System libraries
No support for IPC among the application
Replaced by content manager
Limited pthread support
Limited UNIX/Linux native library support
www.folio3.com
32. (Cont.) Limitations
Application
Applications can only be installed on the primary nonvolatile
memory
Most of the Linux binaries will failed to run on Android
Only Java based application can be executed
Native code can be only packaged as library modules for the Java
application
No compatibility to the Jave ME and SE platforms
No Enterprise integration solutions
Missing push messaging or notifications
www.folio3.com
33. Comparison With Other
Mobile Platforms
IPhone Blackberry Android
Background application
Multiprocessing
Peer-to-peer communication
Extensible & Scalable in HW support
Platform support
Application development & publishing
www.folio3.com
34. Comparison With Other
Mobile Platforms
IPhone Blackberry Android
Third party community support
Enterprise integration
Multimedia support
Optimized Java support
Native development
Security
Organization Support
www.folio3.com
35. Future of Android
IS VERY BIG
Increasing support for more hardware and platforms
Extensions to more system level libraries
Extensions to more Java runtime libraries
Enterprise level support
Increase in platform domain from cellphone market
to military, gaming, medical, and other domains
And more …
www.folio3.com
36. Conclusion
It uses Linux, but loses all the flexibility of Linux
Based on the assumption of hardware support available on the
smart-phones with no/limited flexibility for dynamic adjustments
Requires custom work and patching to enable Android to run on
other non-mobile platform and/or with more hardware
Provides native development, but disallows the creation,
execution of the native applications
Provides easy application development using Java
Provides rich application stack and multimedia support
Backed by a stronger organization Google
Technically more stronger and mature platform than other mobile
OS platforms such as IPhoneOS, Blackberry OS and WinMo
www.folio3.com