android intoduction and rooting technology
TRANSCRIPT
WHAT IS ANDROID?
Android is a software stack for mobile devices that includes an operating system, middleware and key applications.
2
YEAR TASK
2005 Google buys ANDROID Inc.
2007 Open Handset Alliance. Announced FIRST ADK.
2008-2010 Android become the domain of mobile platform
2011 Games, tablets, watches, TV etc
Future Beyond phones.
4
Our goal is not just a single device. Our vision is a mobile platform that runs on many many devices.
- ERIC SCHMIDT
5
OHA (OPEN HANDSET ALLIANCE)
A business alliance consisting of 47+ companies to develop open standards for mobile devices
6
TABLETS
Velocity Micro Cruz Gome FlyTouch Acer beTouch
Dawa D7
Toshiba Android SmartBook
Cisco Android Tablet
8
VERSIONS Nick name
Android 1.5 Cupcake:
Android 1.6 Donut:
Android 2.0
Android 2.1
Eclair:
Android 2.2 Froyo: (short for "frozen yogurt")
Android 2.3 Gingerbread:
Android 3.0
Android 3.1
Android 3.2
Honeycomb:
Android 4.0 Ice Cream Sandwich:
Android 4.1
Android 4.2
Android 4.3
Jelly Bean:
Android 4.4 KitKat:
Android 5.0 Lolipop:
10
14
ANDROID S/W STACK – LINUX KERNEL
Relying on Linux Kernel 2.6 for core system services
Memory and Process Management
Network Stack
Driver Model
Security
Providing an abstraction layer between the H/W and the rest of the S/W stack
15
ANDROID S/W STACK - RUNTIME
Core Libraries Providing most of the functionality available in the core libraries of the Java language
APIs Data Structures
Utilities
File Access
Network Access
Graphics
Etc
16
ANDROID S/W STACK – RUNTIME (CONT)
Dalvik Virtual Machine Providing environment on which every Android application runs
Each Android application runs in its own process, with its own instance of the Dalvik VM.
Dalvik has been written such that a device can run multiple VMs efficiently.
Register-based virtual machine
17
ANDROID S/W STACK – RUNTIME (CONT)
Dalvik Virtual Machine (Cont) Executing the Dalvik Executable (.dex) format
.dex format is optimized for minimal memory footprint.
Compilation
Relying on the Linux Kernel for: Threading
Low-level memory management
Java source code
Java Byte
Dalvik byte code
Java Byte
Java source code
Java byte code
Java VMDalvik Exicutable
Dalvik VM
Java compiler
Java compiler
Dalvik compiler
18
Now android have two application runtimes Dalvik
ART
ART is introduced in Android 4.4(kitkat) .
Much better than Dalvik.
Is in experimental phase but soon it will replace Dalvik said by Google.
Battery life:- In dalvik runtime, the JIT in bounded to CPU but ART frees the CPU from translating DEX to
machine code during app’s execution thus reduce energy consumption.
Performance:- ART is faster as it directly convert DEX byte-code to Machine code.
Don’t need JIT.
To run only footprint of Application is required.
23
ANDROID S/W STACK - LIBRARIES
Including a set of C/C++ libraries used by components of the Android system
Exposed to developers through the Android application framework.
Bionic, Webkit, openGL, MEDIA codes, Sqlite, etc.
24
ANDROID S/W STACK –APP FRAMEWORK
Enabling and simplifying the reuse of components Developers have full access to the same framework APIs used by the core applications.
Users are allowed to replace components.
25
ANDROID S/W STACK - APPLICATION
Android provides a set of core applications: Email Client
SMS Program
Calendar
Maps
Browser
Contacts
Etc
All applications are written using the Java language.
3 Questions on your Android Mobile
1. Are you using all the features and the settings of your Android Operating System?
1. Can your mobile run every app which is available in Android Play store?
26
What is Rooting?
• Rooting is the process of allowing users of smartphones, tablets, and other devices running the Android mobile operating system to attain privileged control (known as "root access") within Android's sub-system.
• Rooting is performed with the goal of overcoming limitations that carriers and hardware manufacturers put on some devices, or perform other operations that are otherwise inaccessible to a normal Android user.
29
Super user
• Using a rooted android device makes you a Super user
• Super user is the central governance of the Android Software
• With the help of Super user you can gain ultimate control over your Android device
30
Use your low end device with High end performance
• Your Android phone may have a ram of 512MB, 1GB, 2GB or 3GB. RAM is the main reason why your mobile show low end performance
• Have you ever tried increasing the ram. It is possible by rooting
+
1 GB ram mobile 32 gb memory card 4GB ram computer
32
Get control over your processor
• Get full authority over your Android processor.
• Your Android processor is more powerful than what you know about it.
• You can unlock the full speed of your processor by overclocking the processor which is possible by rooting
• You can also underclock your processor for saving your battery life in critical situations.
33
Remove pre-installed Crapware
• There are pre-installed apps in your mobile phone which takes a lot of memory and ram
• Most of those apps are not used by the user.
• Those apps can be removed by root access.
34
Tweak the Dark Corners of Android
• Root Access provides a wide number of possibilities to hack a network, site, server…. Etc
• Since android is a linux based operating system we can imagine the hacking capabilities of Android.
• These hacking capabilities can be enhanced to 100% by rooting
eg: Wifi kill- It allows a android device to gain access over a wifi. It may be a secured wifi or unsecured wifi.
35
Rooting Process
1. Install Root File
1. Install Clockwork Recovery
1. Install Cyanogenmod
1. Enjoy the Root Previleges!!
37
Root File
• Root file is first installed by flashing the Root Package (update.zip) in boot time.
• This root file breaks the security protocol of Android and install Superuser which
gives the total Governance over your Device.
• Installing the root file is the Major step in Rooting.
38
Clockwork Recovery & Cynogenmod
• Clockwork Recovery is installed in the same way as Root file
• Clockwork Recovery is used for the maintenance of Android Software like Custom ROM and RAM
• Cynogenmod is useful for the Advance updating of Android Operating System
Cynogenmod 9 (Icecream Sandwich)Cynogenmod 10 (Jelly Bean)Cynogenmod 11 (Kitkat)
39
Disadvantages of Android rooting
1. Your Android may get bricked while rooting.
2. It will end up your phone’s warranty.
3. Android Hacking will be enhanced by rooting which can be used in a wrong way.
40