Android – As a tool of innovation
Upcoming SlideShare
Loading in...5

Like this? Share it with your network


Android – As a tool of innovation



Seminar delivered at IEI KSC

Seminar delivered at IEI KSC



Total Views
Views on SlideShare
Embed Views



1 Embed 4 4



Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
Post Comment
Edit your comment

Android – As a tool of innovation Presentation Transcript

  • 1. Android – As a tool of innovation Pallab Sarkar Pradeep Kumar Govindaraju
  • 2. Smart Phones vs Feature Phones
  • 3. Is Internet a major factor ?
  • 4. Android Operating System  Android is an open source operating system, initially developed by Android, Inc which Google later bought in 2005.  Linux based (3.4.10 kernel) OS.  Can be programmed in C/C++ but most app development is done in Java (Java access to C Libraries via JNI (Java Native Interface))  In last Quarter of 2013, Android account for 81.3 % of global Smartphones.
  • 5. Open Handset Alliance  The Open Handset Alliance (OHA) is a consortium of 84 firms to develop open standards for mobile devices.  Member firms include Google, HTC, Sony, Dell, Intel, Motorola, Q ualcomm, Samsung Electronics, LG Electronics , Texas Instruments.  Competes against Apple, Microsoft, Nokia (Symbian), HP (formerly Pa lm), Samsung Electronics/ Intel (Tizen, bada), and Blackberry.
  • 6. What made Android so popular? (From developers point of view)  Global partnerships and large installed base  Powerful development framework  Open marketplace for distributing your apps  Free Apps & Advertisements.
  • 7. Features – Open Source  Initially device manufacturers were not supporting third party firmware.  After the US government declared “Jailbreaking” as legal, manufacturers and carriers have softened their position regarding 3rd party development.  Cyanogen Mod, is the most popular custom ROM.
  • 8. Features – Security & Privacy  Android applications run in a sandbox.  Permissions are provided to the application by the user while installing them from Play Store  Google uses “Google Bouncer” Malware scanner  Only 0.5 % of malware had come from Google Play Store.
  • 9. Features – Memory Management  Android manages RAM to keep power consumption in minimum level.  Though it supports multitasking, when memory is low, the system will kill apps that have been inactive for a while, in reverse order of usage.
  • 10. Features - Hardware Support  Main Hardware is 32 bit ARM v7 Architecture.  Graphics Processing Unit (GPU)  Connectivity Options (3G ,4G LTE, WiFi, Bluetooth)  Accelerometer w/compass • • • • • • • Ambient light sensor Proximity sensor GPS Gyroscope NFC Touch / Pressure Sensor Finger Print Scanner and so on…
  • 11. Android - Architecture
  • 12. Demo on Sample Android App Development Android Manifest Resource XML Java Source Generated Class Android Libraries Java Compiler .dex File Dalvik VM
  • 13. Dalvik virtual Machine • Application virtual Machine or Managed Runtime Environment currently used in Android for running applications. • The compact Dalvik Executable format is designed to be suitable for systems that are constrained in terms of memory and processor speed. Android's ART virtual machine • Introduced with Android 4.4 • It uses Ahead-of-time (AOT) process in which the bytecode is pre-compiled into machine language at the time of installation
  • 14. BYOD – Bring Your Own Device
  • 15. NFC – Near Field Communication
  • 16. Google Android Open Accessory (AOA) Protocol • Accessories use the (AOA) protocol to communicate with Android devices, over a USB cable or through a Bluetooth connection. • Accessory Development Kit (Arduino) • Arduino based boards.
  • 17. . How Application development is made easier and keeps in par in with latest technologies?
  • 18. 3G & 4G Connectivity (Gobi) •It provides a common software interface (API) for developers to connect, locate, and manage the broadest range of 3G/4G devices in the industry. •Tap into the location functionality within Gobi to include services such as driving directions, asset tracking, anti-theft, and enhanced commerce within your mobile app
  • 19. Computer Vision (FastCV) •FastCV is a mobile-optimized computer vision (CV) library for developers of sophisticated CV apps, CV middleware developers and CV app framework architects. •FastCV will enable you to add new user experiences into your camera-based apps like: •gesture recognition •Face detection, tracking and recognition •Text recognition and tracking •Augmented reality
  • 20. Context Aware (Gimbal) •Gimbal is a context aware and proximity platform utilizing geofencing, microlocation, beacons enabled with Bluetooth Smart technology, interest sensing and consumer privacy controls. •A user’s mobile app can be enabled to look for the beacon’s transmission. When it’s within physical proximity to the beacon and detects it, the app can notify the customer of location-relevant content, promotions, and offers.
  • 21. Mobile Gaming & Graphics Optimization (Adreno) •An SDK to optimize for faster frame rates, smoother rendering and longer battery life. •Designed for everything from 3D rendering to high-end effects. •The Adreno SDK includes tools, libraries, samples, documentation, an d tutorials for working with the OpenGL ES, DirectX, OpenCL, and OpenSL API’s.
  • 22. Peer-to-Peer •Create unique apps and services by including the ability for devices to connect via ad-hoc, peer networks using P2P technology. Nearby devices can communicate directly with one another over Wi-Fi or Bluetooth without the need to connect to cellular networks •Qualcomm’s AllJyon •Samsung’s Chord (All Share) •Google’s Chromecast
  • 23. Augmented Reality - Vuforia SDK • Faster local detection of targets • Cloud recognition of up to 1 million targets simultaneously • User-defined targets for run-time target generation • Cylinder targets – Detection and tracking of images on a cylindrical surface • Text recognition – Recognition and tracking of printed text (words) • Robust tracking – Augmentations stick to the target and are not easily lost as the device moves • Optimizations that ensure better and more
  • 24. Demo On AR
  • 25. Open CV – Computer Vision  OpenCV (Open Source Computer Vision library )   It’s a open-source BSD-licensed library  Includes several hundreds of computer vision algorithms.  It has easy to use Android port called OpenCV4Android getting very popular nowadays  OpenCV has a modular structure,  It has OpenCV Manager as an Android service targeted to manage OpenCV library binaries on end users devices.
  • 26. Main modules of OpenCV  core – Defines basic data structures, like        array Mat and basic functions used by all other modules. imgproc - Image processing module that(linear and non-linear image filtering, geometrical image transformations (resize, affine and perspective warping, generic table-based remapping), color space conversion, histograms, and so on.) video - Video analysis module (motion estimation, background subtraction, and object tracking algorithms.) calib3d - basic multiple-view geometry algorithms, single and stereo camera calibration, object pose estimation, stereo correspondence algorithms, and elements of 3D reconstruction. features2d - salient feature detectors, descriptors, and descriptor matchers. objdetect - detection of objects and instances of the predefined classes (for example, faces, eyes, mugs, people, cars, and so on). highgui - Interface to video capturing, image and video codecs, as well as simple UI capabilities. gpu - GPU-accelerated algorithms from different OpenCV modules. Also like ml(machine learning), objdetect(object detection). etc
  • 27. Few example  Color space conversion Imgproc.cvtColor(Mat src, Mat dst, int code) OR Highgui.imread(String filename, int flags)
  • 28.  Histogram Equalization Imgproc.equalizeHist(Mat src, Mat dst)
  • 29.  Straight Line Imgproc.HoughLinesP(Mat image, Mat lines, double rho, double theta, int threshold)
  • 30. Contours Imgproc.findContours(Mat image, List<MatOfPoint> contours, Mat hierarchy, int mode, int method)
  • 31. Like many use cases possible….