Android Development.

Slides:



Advertisements
Similar presentations
Android OS : Core Concepts Dr. Jeyakesavan Veerasamy Sr. Lecturer University of Texas at Dallas
Advertisements

Aurasium: Practical Policy Enforcement for Android Applications
DroidScope: Seamlessly Reconstructing the OS and Dalvik Semantic Views for Dynamic Android Malware Analysis Lok Kwong Yan, and Heng Yin Syracuse University.
Aurasium: Practical Policy Enforcement for Android Applications By Yaoqi USENIX Security Symposium 2012.
Android Tools & Wireless ADB Αντρέας Λύμπουρας Θεόφιλος Φωκάς Ζαχαρίας Χ’’Λάμπρου.
The most exploitable smartphone on the market.  This presentation is a compilation of original research done by the following people:  Charlie Miller,
© 2010 MindTree Limited CONFIDENTIAL: For limited circulation only Slide 1 CONFIDENTIAL: For limited circulation only An automaton that is created from.
Google Android as a mobile development platform T Internet Technologies for Mobile Computing Olli Mäkinen.
This work is licensed under the Creative Commons Attribution 4.0 International License. To view a copy of this license, visit
2. Setting Up Your Android Development Environment.
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.
Setting up the Development Environment Copyright © SUPINFO. All rights reserved Preparation.
© Frank Mueller & Seokyong Hong (TA) North Carolina State University Center for Efficient, Secure and Reliable Computing Android Installation Guide (2)
Emerging Platform#4: Android Bina Ramamurthy.  Android is an Operating system.  Android is an emerging platform for mobile devices.  Initially developed.
Hacking Exposed 7 Network Security Secrets & Solutions
Android Programming Day best Android Apps Lzo&feature=fvwrel.
Android Programming. Outline Preparation Create new project Build and Run a project Debug a project Deploy on devices.
Reverse Engineering Obfuscated Android Applications
Android Introduction Platform Overview.
One Root To Own Them All Black Hat US 2013 Jeff Bluebox 1.
Intro to Android Programming George Nychis Srinivasan Seshan.
Introduction to Android Swapnil Pathak Advanced Malware Analysis Training Series.
Android Programming By Mohsen Biglari Android Programming, Part1: Introduction 1 Part1: Introduction By Mohsen Biglari.
Copyright© Jeffrey Jongko, Ateneo de Manila University Android.
Ali Shahrokni Application Components Activities Services Content providers Broadcast receivers.
ANDROID Presented By Mastan Vali.SK. © artesis 2008 | 2 1. Introduction 2. Platform 3. Software development 4. Advantages Main topics.
Rajab Davudov. Agenda Eclipse, ADT and Android SDK APK file Fundamentals – Activity – Service – Content Provider – Broadcast Receiver – Intent Hello World.
Android for Java Developers Denver Java Users Group Jan 11, Mike
Roopa.T PESIT, Bangalore. Source and Credits Dalvik VM, Dan Bornstein Google IO 2008 The Dalvik virtual machine Architecture by David Ehringer.
Configuring Android Development Environment Nilesh Singh.
Android Security Auditing Slides and projects at samsclass.info.
ANDROID L. Grewe Components  Java Standard Development Kit (JDK) (download) (latest version)  AndroidStudio.
Educational & entertraiment applications on Android platform «Piano» and «Abetare» Anisa Shehu Prof. Asoc. Elinda Meçe 14 th Workshop “Software Engineering.
Created By. Jainik B Patel Prashant A Goswami Gujarat Vidyapith Computer Department Ahmedabad.
 Installation of Android Development Environment  Creating the App with OpenGL ES API  Running the App on Emulator Android App Development.
Slides and projects at samsclass.info. Adding Trojans to Apps Slides and projects at samsclass.info.
Canh Le My  Motivation  Android app packing  How android execute your application  Available tools  Demonstration 2.
Accelerometer based motion gestures for mobile devices Presented by – Neel Parikh Advisor Committee members Dr. Chris Pollett Dr. Robert Chun Dr. Mark.
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.
G2 - Keit Team members: ●Siyang Piao ●Peter Huang ●Bojun Jin ●Ivy Wang ●Jing Wang.
Android apps development - Eclipse, Android SDK, and ADT plugin Introduction of.
Android. Android An Open Handset Alliance Project A software platform and operating system for mobile devices Based on the Linux kernel Developed by Google.
Vijetha Prabhu B & Sushmitha Shenoy. Android is a software stack for mobile devices that includes an operating system, middleware and key applications.
CHAPTER 1 part 1 Introduction. Chapter objectives: Understand Android Learn the differences between Java and Android Java Examine the Android project.
Introduction to Android Programming
Introduction to Android Chapter 1 1. Objectives Understand what Android is Learn the differences between Java and Android Java Examine the Android project.
The Basics of Android App Development Sankarshan Mridha Satadal Sengupta.
Intro To Android Programming
Mobile Device Development
Mobile Hacking - Fundamentals
Android Mobile Application Development
INFO 448: Android Development
Obtaining the Required Tools
Android Runtime – Dalvik VM
Chapter 2: Operating-System Structures
Android.
Android: Modding & Hacking whitone 2012/12/12.
CMPE419 Mobile Application Development
Android training in Chandigarh Android Developer Tools.
Mobile Handset Virtual Machine
CHAPTER 1 Introduction Chapter objectives: Understand what Android is
Android Developer Fundamentals V2
Android Platform, Android App Basic Components
Emerging Platform#3 Android & Programming an App
Mobile Programming Dr. Mohsin Ali Memon.
Getting Started with Android…
Android Overview.
Android Development Introduction to Android Development 2011/01/16
CMPE419 Mobile Application Development
Presentation transcript:

Android Development

Agenda System Linux Bionic libc Dalvik SDK Project Compilation Tools Première partie: Le développement Android natif

System Linux Bionic libc Dalvik Base on 2.6 New Lock type: Wakelock (suspend blocker accessible at userspace level) Hooks for the Android security model → Fork A task force is working on contributing back to the Linux kernel, but it's not a priority for Google. Bionic libc License: keep GPL out of userspace → BSD Size: ~200k, loaded in each process Speed Native code compiled against bionic and not glibc Dalvik Open source: http://code.google.com/p/dalvik/ Executes DEX bytecode Register based instead of stack based in Java VM Première partie: Le développement Android natif

SDK Project Compilation Tools Eclipse (ADT plugin) Android command, Ant Compilation Compile to Java bytecode Convert Java bytecode to DEX with dx tool Tools DDMS (Dalvik Debug Monitor Server) ADB (Android Debug Bridge): logcat, shell, push/pull AAPT, DEXDUMP (used by other tools to create APK) - ADT : Android Developper Tools - Inclus les tools du SDK dans Eclipse - Facilite la création de projet, l'export d'APK signé, permet de visualiser les GUI XML, ... --------- - ADB : Android Debug Bridge - Logcat - Shell - Push/pull - DDMS: Davlik Debug Monitor Server - Voir les Threads/Process - Voir l'utilisation du Java Heap - Dump du Java Heap - Suivre les allocations des objects Java - Parcourir les fichiers - Capture d'écran - Controler l'émulateur (GPS, appel, sms, ..) -------- AAPT: Android Asset Packaging Tool, resources de/compiler (androidmanifest.xml, image) DEXDUMP: get information about dex file

APK Classes.dex (Compiled classes) Resources (strings, layouts, images, ..) Raw files (native binaries, librairies) META.INF (files signatures) Resources.arsc (resources table) XML Manifest (permissions, ...) Première partie: Le développement Android natif

DEX Structure Decompiling header, strings ids, type, ids, proto ids, field ids, method ids, class defs, data, link data Decompiling bak/smali http://code.google.com/p/smali/ dex2jar http://code.google.com/p/dex2jar/ Repackage Apktool http://code.google.com/p/android-apktool/

Links Première partie: Le développement Android natif http://www.kroah.com/log/linux/android-kernel-problems.html http://lwn.net/Articles/416690/ http://www.dalvikvm.com/ DEX format http://source.android.com/tech/dalvik/dex-format.html http://strazzere.com/blog/?tag=dex http://www.retrodev.com/android/dexformat.html (outdated) Première partie: Le développement Android natif