Praktikum Entwicklung von Mediensystemen (Android)

Similar documents
Praktikum Entwicklung von Mediensystemen (Android)

Android Basics. Xin Yang

Android Developer Fundamental 1

Mobility Introduction Android. Duration 16 Working days Start Date 1 st Oct 2013

An Introduction to Android

Here to take you beyond Mobile Application development using Android Course details

Programming with Android

Jordan Jozwiak November 13, 2011

Graduate presentation for CSCI By Janakiram Vantipalli ( Janakiram.vantipalli@colorado.edu )

Module Title: Software Development A: Mobile Application Development

Getting started with Android and App Engine

A Short Introduction to Android

Workshop on Android and Applications Development

Lecture 1 Introduction to Android

Specialized Android APP Development Program with Java (SAADPJ) Duration 2 months

Android Application Development

Table of Contents. Adding Build Targets to the SDK 8 The Android Developer Tools (ADT) Plug-in for Eclipse 9

ANDROID INTRODUCTION TO ANDROID

Introduction to Android Development. Jeff Avery CS349, Mar 2013

ITG Software Engineering

Introduction (Apps and the Android platform)

Android (Basic + Advance) Application Development

INTRODUCTION TO ANDROID CSCI 4448/5448: OBJECT-ORIENTED ANALYSIS & DESIGN LECTURE 11 02/15/2011

Mobile Application Development 2014

ANDROID. Programming basics

Getting Started with Android Programming (5 days) with Android 4.3 Jelly Bean

CS378 -Mobile Computing. Android Overview and Android Development Environment

Programming with Android

Introduction (Apps and the Android platform) Course Structure. Mobile and Social Application Programming. About the Course.

Introduction to Android Programming (CS5248 Fall 2015)

Expert Android Apps Development

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

Introduction to Android

ANDROID OPERATING SYSTEM

Mobile Application Development Android

Android Geek Night. Application framework

Android Development. Lecture AD 0 Android SDK & Development Environment. Università degli Studi di Parma. Mobile Application Development

Practical Android Projects Lucas Jordan Pieter Greyling

How To Develop Android On Your Computer Or Tablet Or Phone

Introduction to Android

UNIVERSITY AUTHORISED EDUCATION PARTNER (WDP)

Praktikum Entwicklung Mediensysteme (für Master)

ECWM511 MOBILE APPLICATION DEVELOPMENT Lecture 1: Introduction to Android

INTERMEDIATE ANDROID DEVELOPMENT Course Syllabus

Developer's Cookbook. Building Applications with. The Android. the Android SDK. A Addison-Wesley. James Steele Nelson To

Android Programming and Security

01. Introduction of Android

MMI 2: Mobile Human- Computer Interaction Android

How To Develop An Android App On An Android Device

l What is Android? l Getting Started l The Emulator l Hello World l ADB l Text to Speech l Other APIs (camera, bitmap, etc)

Android Development Tutorial. Nikhil Yadav CSE40816/ Pervasive Health Fall 2011

Introduction to Android: Hello, Android! 26 Mar 2010 CMPT166 Dr. Sean Ho Trinity Western University

GETTING STARTED WITH ANDROID DEVELOPMENT FOR EMBEDDED SYSTEMS

Evaluation of Xamarin Forms for MultiPlatform Mobile Application Development

WEB, HYBRID, NATIVE EXPLAINED CRAIG ISAKSON. June 2013 MOBILE ENGINEERING LEAD / SOFTWARE ENGINEER

App Development for Smart Devices. Lec #2: Android Tools, Building Applications, and Activities

OpenCV on Android Platforms

ECWM511 MOBILE APPLICATION DEVELOPMENT Lecture 1: Introduction to Android

Professional Tizen Application Development

The power of root on Android emulators

1) SETUP ANDROID STUDIO

Mobile Application Development

Android Mobile App Building Tutorial

COURSE CONTENT. GETTING STARTED Select Android Version Create RUN Configuration Create Your First Android Activity List of basic sample programs

Mobile App Design and Development

Frameworks & Android. Programmeertechnieken, Tim Cocx

Praktikum Entwicklung von Mediensystemen mit

Overview of CS 282 & Android

4. The Android System

[PACKTl. Flash Development for Android Cookbook. Flash, Flex, and AIR. Joseph Labrecque. Over 90 recipes to build exciting Android applications with

ANDROID BASED MOBILE APPLICATION DEVELOPMENT and its SECURITY

Mobile Phones Operating Systems

ANDROID PROGRAMMING - INTRODUCTION. Roberto Beraldi

Islamic University of Gaza. Faculty of Engineering. Computer Engineering Department. Mobile Computing ECOM Eng. Wafaa Audah.

Android Environment SDK

Android Application Development - Exam Sample

Android Application Development Lecture Notes INDEX

Google Android Syllabus

Android Fundamentals 1

Development Of Mobile Applications GDF Mobilinfo

place/business fetch details, removefromfavorite () function, 189 search button handler bind, B BlackBerry build environment

Cookbook. Flash ios Apps. Christopher Caleb. 100 practical recipes for developing ios apps with Flash Professional and Adobe AIR PUBLISHING MUMBAI

DESIGNING AN M-LEARNING APPLICATION FOR A UBIQUITOUS LEARNING ENVIRONMENT IN THE ANDROID BASED MOBILE DEVICES USING WEB SERVICES

QML and JavaScript for Native App Development

Publishing to TIZEN Using the Automated Conversion/Repackaging of Existing Android Apps. Hyeokgon Ryu, Infraware Technology, Ltd.

City of Dublin Education & Training Board. Programme Module for. Mobile Technologies. leading to. Level 6 FETAC. Mobile Technologies 6N0734

ANDROID PROGRAMMING - INTRODUCTION. Roberto Beraldi

Android Development Tools for Eclipse

Beginning Android Programming

CS 528 Mobile and Ubiquitous Computing Lecture 2: Android Introduction and Setup. Emmanuel Agu

Hello World! Some code

Android Architecture. Alexandra Harrison & Jake Saxton

3. Software Installation. 4. Introduction to Android OS. 5. Using Android OS / Devices. 6. Eclipse debug with Android app. 8. Units of measurement

Lecture 3 Mobile App Development (Android, ios, BlackBerry, Windows Mobile) <lecturer, date>

Basics. Bruce Crawford Global Solutions Manager

An Introduction to Android. Huang Xuguang Database Lab. Inha University

Programming with Android: SDK install and initial setup. Dipartimento di Informatica: Scienza e Ingegneria Università di Bologna

Università Degli Studi di Parma. Distributed Systems Group. Android Development. Lecture 1 Android SDK & Development Environment. Marco Picone

The Android Platform

Introduction to Android. CSG250 Wireless Networks Fall, 2008

Transcription:

Praktikum Entwicklung von Mediensystemen (Android) Sommersemester 2014 Simon Eumes, Dr. Alexander De Luca

Today Organization Android 101 Hands-On Assignment 01 April 11, 2014 PEM (Android) - SS 2014 2

Organization Android! 6 ECTS Bachelor: Vertiefendes Thema Master: Gruppenpraktikum Thursday, 14-16h, Amalienstr. 73a, 106 eumes@cip.ifi.lmu.de http://www.medien.ifi.lmu.de/lehre/ss14/pem/ Hand in assignments via Uniworx April 11, 2014 PEM (Android) - SS 2014 3

Roadmap April, May: Lectures Individual assignments May, June, July: App development in teams Groups of 4 (tbc) 4 Milestone presentations (everyone is up once) July: Final presentation and showcase Next lectures: 24.04. and 08.05. April 11, 2014 PEM (Android) - SS 2014 4

ANDROID 101 April 11, 2014 PEM (Android) - SS 2014 5

Android in a Nutshell AOSP maintaining code, open source Linux subsystem Specialized Java VM (Dalvik and ART) Currently version 4.4 (KitKat) Google adds additional services Google Play Store Google Apps (Mail, Chrome, Maps, ) April 11, 2014 PEM (Android) - SS 2014 6

Lots of Cool Features Multiple sensors Accelerometer, gyroscope, magnetometer, Communication interfaces NFC, Bluetooth LE, Wifi, cellular GPS and cell location Cameras High definition displays Hardware keys and virtual controls April 11, 2014 PEM (Android) - SS 2014 7

Programming Languages Mainly: Java (converted to Dalvik bytecode) Baseline 1.6, some features of 1.7+ Limited namespace from classic JDK Additional namespaces for new features Resources: XML Layouts Resource files (localizations, settings) NDK for native C/C++ programming April 11, 2014 PEM (Android) - SS 2014 8

Limitations and Things to Consider System Resources Apps compete for the main display Could be paused/terminated at all time Can be interrupted by various events Phone call App switch Limited number of resources available April 11, 2014 PEM (Android) - SS 2014 9

Limitations and Things to Consider Network Connectivity Changing network availability Flaky connectivity and unpredictable bandwidth Plan accordingly Keep the in/out data small Cache static data Network requests must be executed on separate threads (i.e. not on main thread) April 11, 2014 PEM (Android) - SS 2014 10

Limitations and Things to Consider Device Fragmentation Multitude of different device configurations out in the wild Screen size and resolution Features and sensors No standard configuration that can be targeted Low adaptation rate of new Android versions (if available at all) April 11, 2014 PEM (Android) - SS 2014 11

Version Distribution http://developer.android.com/about/dashboards/index.html April 11, 2014 PEM (Android) - SS 2014 12

Developer Tools Android Studio (IntelliJ) April 11, 2014 PEM (Android) - SS 2014 13

Developer Tools Android Developer Tools (Eclipse) April 11, 2014 PEM (Android) - SS 2014 14

Developer Tools SDK and Emulator Emulator images for almost all Android versions Intel provides x86 images that vastly increase performance (install via SDK Manager) April 11, 2014 PEM (Android) - SS 2014 15

Project Structure /src Source files within respective packages /res Resources, including layouts, image assets and localizations /libs Precompiled libraries (jars) used for the project /gen Auto-generated files (changes will be overwritten) April 11, 2014 PEM (Android) - SS 2014 16

Anatomy of an Android App Manifest.xml General app settings App unique identifier (package) API version targets Contains available Activities and Services Lists required permissions Additional ways to define IntentFilter, BroadcastReceiver and Provider Can also be used specify hardware requirements April 11, 2014 PEM (Android) - SS 2014 17

Anatomy of an Android App Activities & Services Activity is main UI element that is being displayed Normally takes up the entire screen Specific lifecycle for various states New Activities will be stacked on top Long running operations should be handled in a Service Different runtime behavior, running in background Multiple Activities can bind to one service April 11, 2014 PEM (Android) - SS 2014 18

Anatomy of an Android App Layouts & Resources UI layouts are defined in special XML files All resources automatically have a unique id assigned which are used as a reference throughout the app Easy to adapt localization functionality Automatic resource selection based on device capabilities April 11, 2014 PEM (Android) - SS 2014 19

HANDS-ON April 11, 2014 PEM (Android) - SS 2014 20

ANDROID PARTS DAILIES April 11, 2014 PEM (Android) - SS 2014 21

Android Parts Activitiy http://developer.android.com/training/basics/activity-lifecycle/starting.html April 11, 2014 PEM (Android) - SS 2014 22

Android Parts Intent & IntentFilter Intent is used to indicate desire to perform action Make a call Start an Activity IntentFilter automatically registers for Intents that can be handled React to Urls Default startup activity April 11, 2014 PEM (Android) - SS 2014 23

Design Pattern ActionBar Command and control center NavigationDrawer Navigation options, overlaying the content area Content Area App content http://developer.android.com/design/get-started/ui-overview.html#app April 11, 2014 PEM (Android) - SS 2014 24

Design Pattern ActionBar App Icon Customize to make it your own Action Buttons The most important actions at your fingertip View Control Toggle between different data views Action Overflow Infrequently used items are grouped and hidden http://developer.android.com/design/patterns/actionbar.html April 11, 2014 PEM (Android) - SS 2014 25

Design Pattern NavigationDrawer http://developer.android.com/design/patterns/navigation-drawer.html April 11, 2014 PEM (Android) - SS 2014 26

ADDITIONAL INFORMATION April 11, 2014 PEM (Android) - SS 2014 27

Best Practices Make it snappy (asynchronous operations) Do not block the main thread Be aware of orientation changes and how to handle (or disable) them If you need a global app context, think about subclassing Application Make use of external libraries Http/Rest, Testing, Injection, Eventbus April 11, 2014 PEM (Android) - SS 2014 28

Assignment 01 Individual assignment Set up development environment First steps with Android Layouts, Widgets, Interaction, http Due in 2 weeks (24.04.) Submission via Uniworx April 11, 2014 PEM (Android) - SS 2014 29

Next Lecture Next lecture in 2 weeks (28.04.), 14.00h Specific topics you like to learn more about? Sensors Web Maps UI Animations April 11, 2014 PEM (Android) - SS 2014 30

Resources Android Developers http://developer.android.com/design http://developer.android.com/training http://developer.android.com/guide Google IO Session Recordings https://developers.google.com/events/io/2012 https://developers.google.com/events/io/2013 Google IO Schedule App https://code.google.com/p/iosched April 11, 2014 PEM (Android) - SS 2014 31