<whitone@netstudent.polito.it> Android: Modding & Hacking whitone <whitone@netstudent.polito.it> 2012/12/12.

Slides:



Advertisements
Similar presentations
Programming with Android: System Architecture
Advertisements

Introduction.  Professor  Adam Porter 
What is Android?.
Android architecture overview
Android Platform Overview (1)
Android OS Google's Mobile Device Operating System.
APPFORUM2014 Helping the developer community build next-generation, multi-platform apps. SCHAUMBURG, ILLINOIS | SEPTEMBER 8-10.
Android course Introduction dr Milan Vidaković Chair of Informatics Faculty of Technical Sciences University of Novi Sad.
DEPARTMENT OF COMPUTER ENGINEERING
ANDROID OPERATING SYSTEM Guided By,Presented By, Ajay B.N Somashekar B.T Asst Professor MTech 2 nd Sem (CE)Dept of CS & E.
© 2010 MindTree Limited CONFIDENTIAL: For limited circulation only Slide 1 CONFIDENTIAL: For limited circulation only An automaton that is created from.
Mobile Application Development
This work is licensed under the Creative Commons Attribution 4.0 International License. To view a copy of this license, visit
Silberschatz, Galvin and Gagne ©2013 Operating System Concepts – 9 th Edition Chapter 2: Operating-System Structures.
Asst.Prof.Dr.Ahmet Ünveren SPRING Computer Engineering Department Asst.Prof.Dr.Ahmet Ünveren SPRING Computer Engineering Department.
UFCFX5-15-3Mobile Device Development Android Development Environments and Windows.
Emerging Platform#4: Android Bina Ramamurthy.  Android is an Operating system.  Android is an emerging platform for mobile devices.  Initially developed.
Android Programming Day best Android Apps Lzo&feature=fvwrel.
Android Introduction Platform Overview.
Intro to Android Programming George Nychis Srinivasan Seshan.
Mobile Application Development with ANDROID. Agenda Mobile Application Development (MAD) Intro to Android platform Platform architecture Application building.
Overview of Android North Carolina A&T State University Some slides contain material taken from the Google Android website.
Android Introduction Based on slides made by
@2011 Mihail L. Sichitiu1 Android Introduction Platform Overview.
Android Programming By Mohsen Biglari Android Programming, Part1: Introduction 1 Part1: Introduction By Mohsen Biglari.
Copyright© Jeffrey Jongko, Ateneo de Manila University Android.
ANDROID Presented By Mastan Vali.SK. © artesis 2008 | 2 1. Introduction 2. Platform 3. Software development 4. Advantages Main topics.
Android for Java Developers Denver Java Users Group Jan 11, Mike
ANDROID 응용 프로그래밍 과정 – 목차 - 안드로이드란 - 안드로이드가 만들어지게 된배경 - 안드로이드의 철학 - 안드로이드 환경설정 ( SDK download, eclipse plug-in 설정, 간단한 프로그램 실행 ) - 안드로이드 동작원리 - 안드로이드 핵심.
Porting Operating Systems Phan Duy Hùng (PhD) ES Lecturer – Hanoi FPT University.
Silberschatz, Galvin and Gagne ©2013 Operating System Concepts – 9 th Edition Chapter 2: Operating-System Structures.
Android architecture & setting up. Android operating system comprises of different software components arranges in stack. Different components of android.
Android Security Auditing Slides and projects at samsclass.info.
ANDROID L. Grewe Components  Java Standard Development Kit (JDK) (download) (latest version)  AndroidStudio.
ANDROID BY:-AANCHAL MEHTA MNW-880-2K11. Introduction to Android Open software platform for mobile development A complete stack – OS, Middleware, Applications.
Created By. Jainik B Patel Prashant A Goswami Gujarat Vidyapith Computer Department Ahmedabad.
Android. Basic Architecture Linux Kernel Libraries Applications Android Runtime Application Framework.
Mobile Application Development with ANDROID Umang Patel(6537) LDCE.
By, Rutika R. Channawar. Content Introduction Open Handset Alliance Minimum Hardware Requirements Versions Feature Architecture Advantages Disadvantages.
Android operating system N. Sravani M. Tech(CSE) (09251D5804)
ANDROID OS Ravi Soni MTech (CS) III Sem. W HAT IS A NDROID ? Android is a software stack for mobile devices that includes an operating system, middleware.
Android. Android An Open Handset Alliance Project A software platform and operating system for mobile devices Based on the Linux kernel Developed by Google.
Android Training in Chandigarh. What is Android Android is a mobile operating system based on the Linux Kernel. The goal of android project is to create.
Android Greg Kroah-Hartman A case study of an Embedded Linux Project
Presented by: Saurabh Kumar Sinha (MRT07UGBIT 186) IT VII Semester, Shobhit University Meerut.
Introduction to Android Chapter 1 1. Objectives Understand what Android is Learn the differences between Java and Android Java Examine the Android project.
Android Build System and Overview Karthik Dantu and Steve Ko.
The Basics of Android App Development Sankarshan Mridha Satadal Sengupta.
Google's Mobile Device Operating System
Computer System Structures
Mobile Device Development
Android Mobile Application Development
INFO 448: Android Development
Visit for more Learning Resources
Android Development.
UBUNTU INSTALLATION
Android Runtime – Dalvik VM
Chapter 2: Operating-System Structures
chapter 6- Android Introduction
CMPE419 Mobile Application Development
Building Android OS Topics: Building Android and Kernel
Application Framework
Android Developer Fundamentals V2
Android Introduction Platform Mihail L. Sichitiu.
Korea Software HRD Center
Android Platform, Android App Basic Components
Emerging Platform#3 Android & Programming an App
Getting Started with Android…
Android Development Introduction to Android Development 2011/01/16
CMPE419 Mobile Application Development
Presentation transcript:

<whitone@netstudent.polito.it> Android: Modding & Hacking whitone <whitone@netstudent.polito.it> 2012/12/12

A mobile-centric Linux distro What is Android? A mobile-centric Linux distro patched Linux kernel Bionic Libc Dalvik Java VM App Framework Pag. 2 2012/12/12 whitone <whitone@netstudent.polito.it> CorsoAvanzatoLinux 2012

Android Architecture Pag. 3 2012/12/12 whitone <whitone@netstudent.polito.it> CorsoAvanzatoLinux 2012

Android Version Usage Pag. 4 2012/12/12 whitone <whitone@netstudent.polito.it> CorsoAvanzatoLinux 2012

Android kernel patches low memory killer Viking Killer wake lock /sys/power/wake_lock early suspend /sys/power/request_state timed gpio userspace driver Pag. 5 2012/12/12 whitone <whitone@netstudent.polito.it> CorsoAvanzatoLinux 2012

Android kernel patches ashmem cache pmem contiguous malloc binder IPC ram console /proc/last_kmsg android debug bridge Pag. 6 2012/12/12 whitone <whitone@netstudent.polito.it> CorsoAvanzatoLinux 2012

Android kernel patches … more on: linux-kernel-source / drivers / staging / android Pag. 7 2012/12/12 whitone <whitone@netstudent.polito.it> CorsoAvanzatoLinux 2012

Bionic Libc embedded optimized no fully POSIX not compatible with GNU Libc native programs must linked to this library Pag. 8 2012/12/12 whitone <whitone@netstudent.polito.it> CorsoAvanzatoLinux 2012

Dalvik Java VM register-based architecture low memory requirements Java bytecode (.class) Dalvik Executable (.dex) low memory requirements Pag. 9 2012/12/12 whitone <whitone@netstudent.polito.it> CorsoAvanzatoLinux 2012

Android Packages (APK) Android Applications Android Packages (APK) installation via: Google Play Store storage (usb hd, sd, ...) adb Pag. 10 2012/12/12 whitone <whitone@netstudent.polito.it> CorsoAvanzatoLinux 2012

root of a typical linux tree File System /system root of a typical linux tree /data apps data /cache apps cache /mnt storage Pag. 11 2012/12/12 whitone <whitone@netstudent.polito.it> CorsoAvanzatoLinux 2012

application framework File System in /system: bin, etc, lib, usr framework application framework app system apps media bootanimation.zip Pag. 12 2012/12/12 whitone <whitone@netstudent.polito.it> CorsoAvanzatoLinux 2012

File System … also in /system: build.prop fonts xbin vendor roboto (android > 4.0) xbin optional utilities vendor vendor addons Pag. 13 2012/12/12 whitone <whitone@netstudent.polito.it> CorsoAvanzatoLinux 2012

com.android.providers.settings File System in /data: app user apps data user data com.android.providers.settings dalvik-cache dex files Pag. 14 2012/12/12 whitone <whitone@netstudent.polito.it> CorsoAvanzatoLinux 2012

Android Debug Bridge adb Android SDK install android-tools or android-tools-adb Android SDK available also for Mac and Win Pag. 15 2012/12/12 whitone <whitone@netstudent.polito.it> CorsoAvanzatoLinux 2012

limited standard cmds getprop, setprop Android Debug Bridge adb shell limited standard cmds getprop, setprop netcfg input am busybox Pag. 16 2012/12/12 whitone <whitone@netstudent.polito.it> CorsoAvanzatoLinux 2012

android_metadata language system volume secure lock SQLite 3 Settings Database android_metadata language system volume secure lock SQLite 3 Pag. 17 2012/12/12 whitone <whitone@netstudent.polito.it> CorsoAvanzatoLinux 2012

Simple Boot Animation Pag. 18 2012/12/12 whitone <whitone@netstudent.polito.it> CorsoAvanzatoLinux 2012

Simple Boot Animation Pag. 19 2012/12/12 whitone <whitone@netstudent.polito.it> CorsoAvanzatoLinux 2012

Android NDK $ arm-linux-androideabi- <TAB> Android Toolchain Android NDK $ arm-linux-androideabi- <TAB> Pag. 20 2012/12/12 whitone <whitone@netstudent.polito.it> CorsoAvanzatoLinux 2012

Useful Links Official Android Dev XDA Developers Android NDK developer.android.com XDA Developers www.xda-developers.com Android NDK developer.android.com/sdk/ndk/index.html Pag. 21 2012/12/12 whitone <whitone@netstudent.polito.it> CorsoAvanzatoLinux 2012