SlideShare a Scribd company logo
1 of 30
Mobile Applications SIG Event:



    Developing
for the Android OS
        Presented by:

         Has Taiar
Android OS Overview
Overview
   Android Overview (What? & Why?)

   SDK and Development Tools.

   Android architecture, building blocks, and security.

   Applications’ Framework and Components.

   Comparable Features of Android.

   Q&A and Demo
What is Android?
   Modern open-source mobile operating system
   Full software stack
          Linux kernel 2.6
          Java middleware, framework
          core applications
   Google & OHA
       Goals (Being better, open, and standard) and vision.
   Latest Release 4.0 (Ice Cream Sandwich)
Why Android?
   open-source
       oapache    license
       ocost

       osetsdevelopers free
solid foundation: Linux kernel

good framework based on Java

empower users

      oreplace core apps

      oPersonalize

Google stuff

huge opportunity for vendors, developers, users

      oOS for free, innovate at app level

not just for phones
SDK & Dev Tools
   All major platforms supported
        (linux, windows, and mac)
   NDK for porting native code
   OEM USB Driver
   ADT for Eclipse v 18.0.0
SDK    Package manager & AVD Manager
   33.9 MB for the Starter SDK (core)
   clean and compact
   good documentation
   4.0.3 latest version
   Alternative Dev tools
SDK & Dev Tools (cont)
   Eclipse and ADT
   Emulator
   adb tool from the command line
      o   Android Debug Bridge
      o   ex: adb install <path_to_apk>
 other third party tools for UI generating,
sensors readings, etc.
SDK & Dev Tools (cont)
So what are the development approaches?
   Eclipse and ADT
   Mono for Android
   HTML 5 & Javascript
      o   Titanium Appaccelator
      o   PhoneGap
   Google App Inventor (MIT)
   Android App Makers like andromo
   Wordpress and its alike
SDK & Dev Tools (cont)
Architecture & Building Blocks
Architecture & Building Blocks
   Linux 2.6 based
   Provides hardware management
      o   File System
      o   Memory management
      o   Network (3G, EDGE, Wifi, BT)
      o   Camera
      o   Keyboard
      o   Power Management
Architecture & Building Blocks
Libraries
   Graphics
       o   OpenGL, Scalable Image, Animations
   Media
       o   Images (.png, .jpeg, etc)
       o   Videos (.mp4, .3gp, .wmv, etc)
       o   Audio (.mp3, .mp4 etc)
   Local Storage
       o   File System, and SQLite.
   Security
       o   SSL library
Integrated     Web Browser
       o   Webkit based
       oUses    Google Chrome
       oCSS    3, HTML5, Animation, etc
Architecture & Building Blocks
Android Runtime
   Dalvik
      o   A virtual machine executing apps
      o   Java development language


   Provides some supporting libraries
      o   HTTPClient, XML Parsing, JSON, etc
Architecture & Building Blocks
Applications Framework
   Functionality managed by the system
Underlying framework for your app
development
   Sharing common functionality.
   This makes all apps are:
       o   Equal
       o can use any of the mentioned
       functionalities
       o   can cooperate together
App Architecture
   Activity
       visible screens
   Service
       background services
   Content Provider
       shared data
   Broadcast receivers
       receive and react to broadcasted events
   Intent
       activating components
   AndroidManifest.xml
App Architecture (Cont.)
Activity

   Visual User Interface for one task
       o   ex: list of menu items & input fields
   Work together to form a cohesive UI
  One of the activities is marked as the
first or main starting point.
Can use additional UI elements such as
pop-ups and dialogue boxes
App Architecture (Cont.)
                                 Activity Life-cycle
Activity Layout and Life-cycle
App Architecture (Cont.)
Services

Run in the background for an indefinite
period of time
 Interact with services using API or through
UI interfaces.
 A service starts via a UI element, does not
stop even after the activity gets disposed.
Difference     between Create() & Bind()
   Can communicate with other services.
   Examples:
       o   Media player service
       o   Location Monitor Service
App Architecture (Cont.)
Broadcast Receiver
   Receive announcements and react.
   Examples of System broadcast:
   Time zone has changed
   Battery is low, and soon.
   Applications can also initiate broadcasts
   ex: Data has been downloaded
   An app can have many broadcastReceivers
 Difference between BroadcastReceiver and
the services.
       o   Broadcast intents delivered to all BR.
       o   Some Broadcast intents are sticky.
App Architecture (Cont.)
Content Provider
 Makes app data available to other apps by
storing it to:
     o File system

     o SQLite

 Implement a standard set of methods
     o Enable other apps to access and store
     data
 Apps cannot call methods directly

 ContentResolver object is used to
     o communicate with other content
     provider
     o Cooperate with the provider to
     manage any interprocess
     communication that is involved
App Architecture (Cont.)
Intent
Passive data structure holding an abstract description of an operation to be
performed
   Facilitate late run-time binding between components
   All Activities, Services, and BroadcastReceivers are activated by intents.
 An intent is passed with its data to the System to start an operation, the system
finds the appropriate action and performs it.
   The primary pieces of information in an intent are:
       o   Action: action to be performed (ex: ACTION_VIEW, ACTION_DIAL, etc)
       o   Data: data to operate on (ex: person record from the database)
   Examples:
       Intent i = new Intent(this, NameOfClassToTransitTo.class);
       i.putExtra(“key”, “value”);
       startActivity(i);
App Architecture (Cont.)




An intent filter declares the capabilities of its parent component — what an activity
or service can do and what types of broadcasts a receiver can handle
App Architecture (Cont.)
                    AndroidManifest.xml
Applications packaging
So what is delivered?




zip file (.apk)
   Java .class converted to .dex
   XML-files compressed into binary form
   manifest for app permissions
   signed with developer private key
   developer public key included
   assets packaged as is
Security
   Android apps run in sandboxed instances
   Linux user account per app
   Based on app permissions
   Apps are signed by developer private key
   No central authority
   why signing at all:
       two sibling apps can share data (process and
       userid)
          upgrade also smooth, same key
Other Android Features
 Open Nature
      Open Source
      Freedom of Customisability
       (Custom ROM, OS Builds, Core App Replacement).
 User widgets
 Community Based Development
 Third Party App Stores
 Flash Support
 Seamless Integration with Google Stuff
 Application framework enabling reusability and replacement of App components
 SQLite for structured data storage
 Media Support
     o Property-based animation and Renderscript 3D graphics.
     o Support MTP and PTP protocols
 Full device encryption
     o DPM policies for encrypted storage and passwords
Android Issues
Drawbacks:
Fragmentation
Hardware Acceleration
Development environment
Security Issue
Slow Update process
No Central Point of Control (Security, Updates, Notifications, etc).
Conclusions
 Android advantages outweigh its drawbacks as mentioned earlier.
 Android OS is still Consumer focused, no considerable presence in corporate
market.
 Fragmentation and Security are the two major concerns in Android.
 Development tools are evolving.
 In Future, Android might loose a bit of the share to other OS like Windows 7, but
would still be one of the top Mobile OS.
 It all depends on how Google Plays it.
References
 http://developer.android.com/
 http://en.wikipedia.org/wiki/Android_(operating_system)

http://www.slideshare.net/clement.escoffier/android-a-linuxbased-os-for-mobile-phone

http://lifehacker.com/5801862/top-10-awesome-android-features-that-the-iphone-doesn
 http://www.slideshare.net/atomi/android-overview
 http://androidandme.com/2012/04/opinions/the-future-of-android-in-2012/
Demo & Q&A

More Related Content

What's hot

Android- Introduction for Beginners
Android- Introduction for BeginnersAndroid- Introduction for Beginners
Android- Introduction for BeginnersTripti Tiwari
 
Android architecture
Android architecture Android architecture
Android architecture Trong-An Bui
 
Intro To Android App Development
Intro To Android App DevelopmentIntro To Android App Development
Intro To Android App DevelopmentMike Kvintus
 
Android Application Fundamentals
Android Application FundamentalsAndroid Application Fundamentals
Android Application FundamentalsVikalp Jain
 
Arduino - Android Workshop Presentation
Arduino - Android Workshop PresentationArduino - Android Workshop Presentation
Arduino - Android Workshop PresentationHem Shrestha
 
Android architecture
Android architectureAndroid architecture
Android architecturepoojapainter
 
Android fundamentals and tutorial for beginners
Android fundamentals and tutorial for beginnersAndroid fundamentals and tutorial for beginners
Android fundamentals and tutorial for beginnersBoom Shukla
 
Five android architecture
Five android architectureFive android architecture
Five android architectureTomislav Homan
 
Android Workshop Day 1 Part 2
Android Workshop Day 1 Part 2Android Workshop Day 1 Part 2
Android Workshop Day 1 Part 2Ahsanul Karim
 
Introduction to Android
Introduction to Android Introduction to Android
Introduction to Android Ranjith Kumar
 

What's hot (20)

Android architecture
Android architectureAndroid architecture
Android architecture
 
Android overview
Android overviewAndroid overview
Android overview
 
Android- Introduction for Beginners
Android- Introduction for BeginnersAndroid- Introduction for Beginners
Android- Introduction for Beginners
 
01 03 - introduction to android
01  03 - introduction to android01  03 - introduction to android
01 03 - introduction to android
 
Android architecture
Android architecture Android architecture
Android architecture
 
Android
Android Android
Android
 
Android Basic
Android BasicAndroid Basic
Android Basic
 
Intro To Android App Development
Intro To Android App DevelopmentIntro To Android App Development
Intro To Android App Development
 
Android Application Fundamentals
Android Application FundamentalsAndroid Application Fundamentals
Android Application Fundamentals
 
Android dev o_auth
Android dev o_authAndroid dev o_auth
Android dev o_auth
 
Arduino - Android Workshop Presentation
Arduino - Android Workshop PresentationArduino - Android Workshop Presentation
Arduino - Android Workshop Presentation
 
Ci for Android
Ci for AndroidCi for Android
Ci for Android
 
Android architecture
Android architectureAndroid architecture
Android architecture
 
Android fundamentals and tutorial for beginners
Android fundamentals and tutorial for beginnersAndroid fundamentals and tutorial for beginners
Android fundamentals and tutorial for beginners
 
Five android architecture
Five android architectureFive android architecture
Five android architecture
 
Android Workshop Day 1 Part 2
Android Workshop Day 1 Part 2Android Workshop Day 1 Part 2
Android Workshop Day 1 Part 2
 
Introduction to Android
Introduction to Android Introduction to Android
Introduction to Android
 
Getting Started With Android
Getting Started With AndroidGetting Started With Android
Getting Started With Android
 
Android basics
Android basicsAndroid basics
Android basics
 
Ramakri
RamakriRamakri
Ramakri
 

Similar to Android overview

Android 1-intro n architecture
Android 1-intro n architectureAndroid 1-intro n architecture
Android 1-intro n architectureDilip Singh
 
Android development-tutorial
Android development-tutorialAndroid development-tutorial
Android development-tutorialilias ahmed
 
Introduction to android
Introduction to androidIntroduction to android
Introduction to androidzeelpatel0504
 
Introduction to android
Introduction to androidIntroduction to android
Introduction to androidjavalabsf
 
architecture of android.pptx
architecture of android.pptxarchitecture of android.pptx
architecture of android.pptxallurestore
 
First Steps with Android - An Exciting Introduction
First Steps with Android - An Exciting IntroductionFirst Steps with Android - An Exciting Introduction
First Steps with Android - An Exciting IntroductionCesar Augusto Nogueira
 
Android Introduction on Java Forum Stuttgart 11
Android Introduction on Java Forum Stuttgart 11 Android Introduction on Java Forum Stuttgart 11
Android Introduction on Java Forum Stuttgart 11 Lars Vogel
 
Introduction to Android Development Part 1
Introduction to Android Development Part 1Introduction to Android Development Part 1
Introduction to Android Development Part 1Kainda Kiniel Daka
 
Android presentation
Android presentationAndroid presentation
Android presentationImam Raza
 
1 introduction of android
1 introduction of android1 introduction of android
1 introduction of androidakila_mano
 
Android Application Development
Android Application DevelopmentAndroid Application Development
Android Application DevelopmentRamesh Prasad
 
Slides bootcamp21
Slides bootcamp21Slides bootcamp21
Slides bootcamp21dxsaki
 
OS in mobile devices [Android]
OS in mobile devices [Android]OS in mobile devices [Android]
OS in mobile devices [Android]Yatharth Aggarwal
 

Similar to Android overview (20)

PPT Companion to Android
PPT Companion to AndroidPPT Companion to Android
PPT Companion to Android
 
Android 1-intro n architecture
Android 1-intro n architectureAndroid 1-intro n architecture
Android 1-intro n architecture
 
Android Anatomy
Android  AnatomyAndroid  Anatomy
Android Anatomy
 
Android development-tutorial
Android development-tutorialAndroid development-tutorial
Android development-tutorial
 
Introduction to android
Introduction to androidIntroduction to android
Introduction to android
 
Introduction to android
Introduction to androidIntroduction to android
Introduction to android
 
architecture of android.pptx
architecture of android.pptxarchitecture of android.pptx
architecture of android.pptx
 
Android Introduction by Kajal
Android Introduction by KajalAndroid Introduction by Kajal
Android Introduction by Kajal
 
First Steps with Android - An Exciting Introduction
First Steps with Android - An Exciting IntroductionFirst Steps with Android - An Exciting Introduction
First Steps with Android - An Exciting Introduction
 
Android Deep Dive
Android Deep DiveAndroid Deep Dive
Android Deep Dive
 
Android primer
Android primerAndroid primer
Android primer
 
Android Introduction on Java Forum Stuttgart 11
Android Introduction on Java Forum Stuttgart 11 Android Introduction on Java Forum Stuttgart 11
Android Introduction on Java Forum Stuttgart 11
 
Introduction to Android Development Part 1
Introduction to Android Development Part 1Introduction to Android Development Part 1
Introduction to Android Development Part 1
 
Android presentation
Android presentationAndroid presentation
Android presentation
 
1 introduction of android
1 introduction of android1 introduction of android
1 introduction of android
 
Android Application Development
Android Application DevelopmentAndroid Application Development
Android Application Development
 
Slides bootcamp21
Slides bootcamp21Slides bootcamp21
Slides bootcamp21
 
Android platform
Android platform Android platform
Android platform
 
OS in mobile devices [Android]
OS in mobile devices [Android]OS in mobile devices [Android]
OS in mobile devices [Android]
 
Android
AndroidAndroid
Android
 

Recently uploaded

[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 

Recently uploaded (20)

[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 

Android overview

  • 1. Mobile Applications SIG Event: Developing for the Android OS Presented by: Has Taiar
  • 3. Overview  Android Overview (What? & Why?)  SDK and Development Tools.  Android architecture, building blocks, and security.  Applications’ Framework and Components.  Comparable Features of Android.  Q&A and Demo
  • 4. What is Android?  Modern open-source mobile operating system  Full software stack  Linux kernel 2.6  Java middleware, framework  core applications  Google & OHA Goals (Being better, open, and standard) and vision.  Latest Release 4.0 (Ice Cream Sandwich)
  • 5. Why Android?  open-source oapache license ocost osetsdevelopers free solid foundation: Linux kernel good framework based on Java empower users oreplace core apps oPersonalize Google stuff huge opportunity for vendors, developers, users oOS for free, innovate at app level not just for phones
  • 6. SDK & Dev Tools  All major platforms supported (linux, windows, and mac)  NDK for porting native code  OEM USB Driver  ADT for Eclipse v 18.0.0 SDK Package manager & AVD Manager  33.9 MB for the Starter SDK (core)  clean and compact  good documentation  4.0.3 latest version  Alternative Dev tools
  • 7. SDK & Dev Tools (cont)  Eclipse and ADT  Emulator  adb tool from the command line o Android Debug Bridge o ex: adb install <path_to_apk>  other third party tools for UI generating, sensors readings, etc.
  • 8. SDK & Dev Tools (cont) So what are the development approaches?  Eclipse and ADT  Mono for Android  HTML 5 & Javascript o Titanium Appaccelator o PhoneGap  Google App Inventor (MIT)  Android App Makers like andromo  Wordpress and its alike
  • 9. SDK & Dev Tools (cont)
  • 11. Architecture & Building Blocks  Linux 2.6 based  Provides hardware management o File System o Memory management o Network (3G, EDGE, Wifi, BT) o Camera o Keyboard o Power Management
  • 12. Architecture & Building Blocks Libraries  Graphics o OpenGL, Scalable Image, Animations  Media o Images (.png, .jpeg, etc) o Videos (.mp4, .3gp, .wmv, etc) o Audio (.mp3, .mp4 etc)  Local Storage o File System, and SQLite.  Security o SSL library Integrated Web Browser o Webkit based oUses Google Chrome oCSS 3, HTML5, Animation, etc
  • 13. Architecture & Building Blocks Android Runtime  Dalvik o A virtual machine executing apps o Java development language  Provides some supporting libraries o HTTPClient, XML Parsing, JSON, etc
  • 14. Architecture & Building Blocks Applications Framework  Functionality managed by the system Underlying framework for your app development  Sharing common functionality.  This makes all apps are: o Equal o can use any of the mentioned functionalities o can cooperate together
  • 15. App Architecture  Activity visible screens  Service background services  Content Provider shared data  Broadcast receivers receive and react to broadcasted events  Intent activating components  AndroidManifest.xml
  • 16. App Architecture (Cont.) Activity  Visual User Interface for one task o ex: list of menu items & input fields  Work together to form a cohesive UI  One of the activities is marked as the first or main starting point. Can use additional UI elements such as pop-ups and dialogue boxes
  • 17. App Architecture (Cont.) Activity Life-cycle Activity Layout and Life-cycle
  • 18. App Architecture (Cont.) Services Run in the background for an indefinite period of time  Interact with services using API or through UI interfaces.  A service starts via a UI element, does not stop even after the activity gets disposed. Difference between Create() & Bind()  Can communicate with other services.  Examples: o Media player service o Location Monitor Service
  • 19. App Architecture (Cont.) Broadcast Receiver  Receive announcements and react.  Examples of System broadcast:  Time zone has changed  Battery is low, and soon.  Applications can also initiate broadcasts  ex: Data has been downloaded  An app can have many broadcastReceivers  Difference between BroadcastReceiver and the services. o Broadcast intents delivered to all BR. o Some Broadcast intents are sticky.
  • 20. App Architecture (Cont.) Content Provider  Makes app data available to other apps by storing it to: o File system o SQLite  Implement a standard set of methods o Enable other apps to access and store data  Apps cannot call methods directly  ContentResolver object is used to o communicate with other content provider o Cooperate with the provider to manage any interprocess communication that is involved
  • 21. App Architecture (Cont.) Intent Passive data structure holding an abstract description of an operation to be performed  Facilitate late run-time binding between components  All Activities, Services, and BroadcastReceivers are activated by intents.  An intent is passed with its data to the System to start an operation, the system finds the appropriate action and performs it.  The primary pieces of information in an intent are: o Action: action to be performed (ex: ACTION_VIEW, ACTION_DIAL, etc) o Data: data to operate on (ex: person record from the database)  Examples: Intent i = new Intent(this, NameOfClassToTransitTo.class); i.putExtra(“key”, “value”); startActivity(i);
  • 22. App Architecture (Cont.) An intent filter declares the capabilities of its parent component — what an activity or service can do and what types of broadcasts a receiver can handle
  • 23. App Architecture (Cont.) AndroidManifest.xml
  • 24. Applications packaging So what is delivered? zip file (.apk)  Java .class converted to .dex  XML-files compressed into binary form  manifest for app permissions  signed with developer private key  developer public key included  assets packaged as is
  • 25. Security  Android apps run in sandboxed instances  Linux user account per app  Based on app permissions  Apps are signed by developer private key  No central authority  why signing at all: two sibling apps can share data (process and userid)  upgrade also smooth, same key
  • 26. Other Android Features  Open Nature  Open Source  Freedom of Customisability (Custom ROM, OS Builds, Core App Replacement).  User widgets  Community Based Development  Third Party App Stores  Flash Support  Seamless Integration with Google Stuff  Application framework enabling reusability and replacement of App components  SQLite for structured data storage  Media Support o Property-based animation and Renderscript 3D graphics. o Support MTP and PTP protocols  Full device encryption o DPM policies for encrypted storage and passwords
  • 27. Android Issues Drawbacks: Fragmentation Hardware Acceleration Development environment Security Issue Slow Update process No Central Point of Control (Security, Updates, Notifications, etc).
  • 28. Conclusions  Android advantages outweigh its drawbacks as mentioned earlier.  Android OS is still Consumer focused, no considerable presence in corporate market.  Fragmentation and Security are the two major concerns in Android.  Development tools are evolving.  In Future, Android might loose a bit of the share to other OS like Windows 7, but would still be one of the top Mobile OS.  It all depends on how Google Plays it.

Editor's Notes

  1. Original Equipment Manafacuturers. For Mac, it just works For ubuntu, you need to add udev rules to configure your usb
  2. Original Equipment Manafacuturers. For Mac, it just works For ubuntu, you need to add udev rules to configure your usb
  3. Original Equipment Manafacuturers. For Mac, it just works For ubuntu, you need to add udev rules to configure your usb
  4. Original Equipment Manafacuturers. For Mac, it just works For ubuntu, you need to add udev rules to configure your usb
  5. Original Equipment Manafacuturers. For Mac, it just works For ubuntu, you need to add udev rules to configure your usb
  6. Original Equipment Manafacuturers. For Mac, it just works For ubuntu, you need to add udev rules to configure your usb
  7. Original Equipment Manafacuturers. For Mac, it just works For ubuntu, you need to add udev rules to configure your usb
  8. Original Equipment Manafacuturers. For Mac, it just works For ubuntu, you need to add udev rules to configure your usb
  9. Original Equipment Manafacuturers. For Mac, it just works For ubuntu, you need to add udev rules to configure your usb
  10. Original Equipment Manafacuturers. For Mac, it just works For ubuntu, you need to add udev rules to configure your usb
  11. Original Equipment Manafacuturers. For Mac, it just works For ubuntu, you need to add udev rules to configure your usb
  12. Original Equipment Manafacuturers. For Mac, it just works For ubuntu, you need to add udev rules to configure your usb
  13. Original Equipment Manafacuturers. For Mac, it just works For ubuntu, you need to add udev rules to configure your usb
  14. Original Equipment Manafacuturers. For Mac, it just works For ubuntu, you need to add udev rules to configure your usb
  15. Original Equipment Manafacuturers. For Mac, it just works For ubuntu, you need to add udev rules to configure your usb
  16. Original Equipment Manafacuturers. For Mac, it just works For ubuntu, you need to add udev rules to configure your usb
  17. Original Equipment Manafacuturers. For Mac, it just works For ubuntu, you need to add udev rules to configure your usb
  18. Original Equipment Manafacuturers. For Mac, it just works For ubuntu, you need to add udev rules to configure your usb
  19. Original Equipment Manafacuturers. For Mac, it just works For ubuntu, you need to add udev rules to configure your usb
  20. Original Equipment Manafacuturers. For Mac, it just works For ubuntu, you need to add udev rules to configure your usb
  21. Original Equipment Manafacuturers. For Mac, it just works For ubuntu, you need to add udev rules to configure your usb
  22. Original Equipment Manafacuturers. For Mac, it just works For ubuntu, you need to add udev rules to configure your usb
  23. Original Equipment Manafacuturers. For Mac, it just works For ubuntu, you need to add udev rules to configure your usb
  24. Original Equipment Manafacuturers. For Mac, it just works For ubuntu, you need to add udev rules to configure your usb
  25. Original Equipment Manafacuturers. For Mac, it just works For ubuntu, you need to add udev rules to configure your usb