Android Programmierung leichtgemacht. Lars Vogel

Similar documents
Introduction to Android development

Lab 1: Getting Started With Android Programming

Introduction To Android

Embedded Systems Programming - PA8001

Mobile OS. Symbian. BlackBerry. ios. Window mobile. Android

Real-Time Embedded Systems

Android App Development

Android for Ubiquitous Computing Researchers. Andrew Rice University of Cambridge 17-Sep-2011

Android App Development

Android Ecosystem and. Revised v4presenter. What s New

Developer s overview of the Android platform

UNDERSTANDING ACTIVITIES

Android Overview. Most of the material in this section comes from

Mobile Computing. Introduction to Android

Produced by. Mobile Application Development. David Drohan Department of Computing & Mathematics Waterford Institute of Technology

CS260 Intro to Java & Android 04.Android Intro

Mobile and Wireless Systems Programming

Computer Science E-76 Building Mobile Applications

CS378 -Mobile Computing. Anatomy of and Android App and the App Lifecycle

ACTIVITY, FRAGMENT, NAVIGATION. Roberto Beraldi

COSC 3P97 Mobile Computing

Introduction to Android

Android App Development. Muhammad Sharjeel COMSATS Institute of Information Technology, Lahore

Another difference is that the kernel includes only the suspend to memory mechanism, and not the suspend to hard disk, which is used on PCs.

CS378 - Mobile Computing. Anatomy of an Android App and the App Lifecycle

Introduction to Android

Introduction to Android

CS 370 Android Basics D R. M I C H A E L J. R E A L E F A L L

Around Android. Essential Android features illustrated by a walk through a practical example

IGEEKS TECHNOLOGIES. Software Training Division. Academic Live Projects For BE,ME,MCA,BCA and PHD Students

CS 528 Mobile and Ubiquitous Computing Lecture 3b: Android Activity Lifecycle and Intents Emmanuel Agu

EMBEDDED SYSTEMS PROGRAMMING Application Basics

Minds-on: Android. Session 2

Lecture 1 Introduction to Android. App Development for Mobile Devices. App Development for Mobile Devices. Announcement.

Android Online Training

Android. (XKE Mars 2009) Erwan Alliaume.

Mobile Application Development

An Introduction to Android. Jason Chen Developer Advocate Google I/O 2008

Android Training Overview (For Demo Classes Call Us )

ANDROID SYLLABUS. Advanced Android

IEMS 5722 Mobile Network Programming and Distributed Server Architecture

States of Activities. Active Pause Stop Inactive

1. What are the key components of Android Architecture? 2. What are the advantages of having an emulator within the Android environment?

SHWETANK KUMAR GUPTA Only For Education Purpose

ANDROID TRAINING PROGRAM COURSE CONTENT

Android" Application Development SAMS. Sams Teach Yourself. Shane Conder. Lauren Darcey. Second Edition

Overview of Activities

Understand applications and their components. activity service broadcast receiver content provider intent AndroidManifest.xml

Software Development & Education Center ANDROID. Application Development

Mobile development initiation

Android Fundamentals - Part 1

Android. Mobile operating system developed by Google A complete stack. Based on the Linux kernel Open source under the Apache 2 license

ANDROID COURSE BROCHURE

Android Apps Development

Programming with Android: System Architecture. Dipartimento di Scienze dell Informazione Università di Bologna

Android App Development Workshop

INTRODUCTION. 2

Lifecycle Callbacks and Intents

ORACLE UNIVERSITY AUTHORISED EDUCATION PARTNER (WDP)

Syllabus- Java + Android. Java Fundamentals

COLLEGE OF ENGINEERING, NASHIK-4

CS 528 Mobile and Ubiquitous Computing Lecture 4a: Fragments, Camera Emmanuel Agu

Android App Development. Ahmad Tayeb

ANDROID DEVELOPMENT. Course Details

ANDROID APPS DEVELOPMENT FOR MOBILE AND TABLET DEVICE (LEVEL I)

Introduction to Android Android Smartphone Programming. Outline University of Freiburg. What is Android? Background University of Freiburg.

LECTURE NOTES OF APPLICATION ACTIVITIES

Android for Java Developers Dr. Markus Schmall, Jochen Hiller

Android Application Development

ATC Android Application Development

CS 4518 Mobile and Ubiquitous Computing Lecture 5: Rotating Device, Saving Data, Intents and Fragments Emmanuel Agu

Wirtschaftsinformatik Skiseminar ao. Prof. Dr. Rony G. Flatscher. Seminar paper presentation Dennis Robert Stöhr

Mobile Application Development - Android

Programming with Android: System Architecture. Luca Bedogni. Dipartimento di Scienze dell Informazione Università di Bologna

Android - open source mobile platform

Android. Lesson 1. Introduction. Android Developer Fundamentals. Android Developer Fundamentals. to Android 1

ANDROID APPS DEVELOPMENT FOR MOBILE AND TABLET DEVICE (LEVEL I)

Praktikum Mobile und Verteilte Systeme. Android-Basics. Prof. Dr. Claudia Linnhoff-Popien André Ebert, Sebastian Feld

INTRODUCTION TO ANDROID

Android-Basics. Praktikum Mobile und Verteilte Systeme. Prof. Dr. Claudia Linnhoff-Popien André Ebert, Sebastian Feld

Android Basics. - Bhaumik Shukla Android Application STEALTH FLASH

Android Basics. Android UI Architecture. Android UI 1

CS 4518 Mobile and Ubiquitous Computing Lecture 4: Data-Driven Views, Android Components & Android Activity Lifecycle Emmanuel Agu

Introduction to Mobile Application and Development

Open Mobile Platforms. EE 392I, Lecture-6 May 4 th, 2010

Android Development Tutorial. Yi Huang

Required Core Java for Android application development

IJRDTM Kailash ISBN No Vol.17 Issue

Introduction What is Android?

Introduction. Lecture 1. Operating Systems Practical. 5 October 2016

Android-Basics. Praktikum Mobile und Verteilte Systeme

Android Programming in Bluetooth Cochlea Group

Lecture 1 - Introduction to Android

University of Babylon - College of IT SW Dep. - Android Assist. Lect. Wadhah R. Baiee Activities

Android Exam AND-401 Android Application Development Version: 7.0 [ Total Questions: 129 ]

Introduction to Android Application Development. Mike Kvintus Principal Engineer JDSU

Android Application Development A Beginners Tutorial

ITG Software Engineering

CMSC436: Fall 2013 Week 3 Lab

INTERNATIONAL JOURNAL OF PURE AND APPLIED RESEARCH IN ENGINEERING AND TECHNOLOGY

Transcription:

Android Programmierung leichtgemacht Lars Vogel Twitter: @vogella

Lars Vogel Arbeitet als unabhängiger Eclipse und Android Berater und Trainer Arbeit zusätzlichen für SAP AG als Product Owner in einem Mobile Team Pflegt http://www.vogella.de mit Tutorials über Java, Eclipse and Android mit ~25 000 Besuchern pro Tag

During this presentation

What is Android? - Software stack based on Linux with a Java programming interface. - Open Source - Developed officially by the Open Handset Alliance lead by Google

On Android you develop in Java Really?

Android Programming You use the Java programming language but Android does not run Java Bytecode

Android Programming Application runs on the Dalvik virtual machine Tool dx converts Java Bytecode into Dalvik Executable Code (.dex) You use the Java programming language but Android does not run Java Bytecode

Main target of Dalvik Low memory consumption and fast execution

Overview of the API Capabilities Rich UI components Threads and Background Processing Full network stack (Http, JSON) Database and File System access Access to the hardware (GPS, Camera, Phone) and much more...

Restrictions Its a freaking phone

Android Development Tools (ADT) for Eclipse Eclipse based tooling Windows Linux (i386) Mac OS (Intel)

QEMU-based ARM emulator runs same image as a device Use same toolchain to work with device or emulator Inital startup is slooooowwwwww...

Demo

AndroidManifest.xml Central configuration file for your application uses-permission: asked to uses something which requires permission permissions: the new permissions that the app defines instrumentation: the events that should be hooked uses-library: defines the optional libraries which the app uses uses-sdk: which SDK uses the application application: defines activities, services, content provider and broadcast receiver

Android programming constructs

Main Android programming constructs Activity Views Intents Broadcast Receiver Services ContentProvider

Demo Your first project

Activity An activity is a single, focused thing that the user can do. Extends android.app.activity Layout of Activity defines UI elements and their arrangements

Demo Presentation Timer

Life Cyle of an Activity void oncreate(bundle savedinstancestate) void onstart() void onrestart() void onresume() void onpause() void onstop() void ondestroy() Android may destroy you!

I had only the best intents...

Intents - messages to tell the system to do something Two types Explicit: Asking someone to do something Implicit: Asking the system who can do something Intent

Implicit Intents new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.vogella.de")); new Intent(Intent.ACTION_CALL, Uri.parse("tel:(+49)12345789"));

Demo: Create and call the Your are done activity

Lars Vogel and others, Licensed under Creative Commons by-nc-nd-3.0 (de)

Services Android provides a multitude of system services NotificationService VibratorService LocationService AlarmService... Access via context.getsystemservice(context.const); You can define your own service.

Timer check Application Lets alert!

Security

Each apps gets into own user and runs in its own process

Android Application requires explicit permissions, e.g. for DB access Phone access Contacts Internet System messages

There is more...

I can talk and hear Internet (java.net, Apache HttpClient, JSON...) Bluetooth Email SMS VoIP (SIP (Session Initiation Protocol))

I have feelings Camera API Motion Detection Location API (GIS) Heat Sensor Accelerator

Other Capabilities Storage: File System / Preferences SQLiteDatabase Push to device Interactive Widgets on the homescreen Live Wallpapers (as background) Animations Simple List handling (Multi-) Touch NFS

Performance?

Be fast! Avoid ApplicationNotResponding Error Threads not allowed to modify the UI directly Use handler or AsyncTask to update the UI after Thread is done

Summary Android powerful and welldesigned development platform Power to the developer

Android: Where to go from here: Android Tutorial http://www.vogella.de/articles/android/article.html

Thank you For further questions: Lars.Vogel@gmail.com http://www.vogella.de http://www.twitter.com/vogella

Picture Credit All pictures are from http://www.sxc.hu/ to get them add the number to http://www.sxc.hu/photo/ Agenda 1089869 Dalvik 1269657 Software Layer / Tomatos 832159 616474 Thinking guy 324541 Smiling Boy 812138 Toolchain 1197009 Stopwatch http://www.sxc.hu/photo/634598 Timer / Watches 1062014 Next guy 986700 Sad Lady 232738 Funny guy 1173019 Waiter / Services http://www.sxc.hu/photo/157966 Security 695054 There is more 702367 Performance rabbits 786444 Performance snail 1181451 Performance Running man 377100 Hang-man 620961 Summary http://www.sxc.hu/photo/1184807 Question http://www.sxc.hu/photo/418215 Reading material http://www.sxc.hu/photo/406547 Thank you http://www.sxc.hu/photo/986313

License & Acknowledgements This work is licensed under the Creative Commons Attribution-Noncommercial-No Derivative Works 3.0 Germany License See http://creativecommons.org/licenses/by-ncnd/3.0/de/deed.en_us