Android Application Development Lecture Notes INDEX



Similar documents
Android Basics. Xin Yang

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

Android Basic XML Layouts

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

Jordan Jozwiak November 13, 2011

Application Development

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

Homeschool Programming, Inc.

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

Introduction to Android

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

UNIVERSITY AUTHORISED EDUCATION PARTNER (WDP)

Android Development. Marc Mc Loughlin

Introduction to Android Development. Jeff Avery CS349, Mar 2013

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

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

Getting Started With Android

Workshop on Android and Applications Development

How To Develop An Android App On An Android Device

Android Environment SDK

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

Beginner s Android Development Tutorial!

Getting started with Android and App Engine

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

Android Application Development. Daniel Switkin Senior Software Engineer, Google Inc.

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

Running a Program on an AVD

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

Developing Android Applications Introduction to Software Engineering Fall Updated 7 October 2015

«compl*tc IDIOT'S GUIDE. Android App. Development. by Christopher Froehlich ALPHA. A member of Penguin Group (USA) Inc.

Introduction to Android. CSG250 Wireless Networks Fall, 2008

ANDROID INTRODUCTION TO ANDROID

Chapter 2 Getting Started

A Modular Approach to Teaching Mobile APPS Development

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

Android Application Development - Exam Sample

ADT Plugin for Eclipse

Smartphone market share

OpenCV on Android Platforms

Android Application Development

Mobile Application Development 2014

CS378 -Mobile Computing. Android Overview and Android Development Environment

How to Create an Android Application using Eclipse on Windows 7

ITG Software Engineering

Mobile App Design and Development

Android Mobile App Building Tutorial

Getting Started with Android Development

Reminders. Lab opens from today. Many students want to use the extra I/O pins on

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

Google Android Syllabus

Chapter 9: Customize! Navigating with Tabs on a Tablet App

Android Programming. Høgskolen i Telemark Telemark University College. Cuong Nguyen,

ECWM511 MOBILE APPLICATION DEVELOPMENT Lecture 1: Introduction to Android

Presenting Android Development in the CS Curriculum

Mobile Application Development Android

ANDROID APP DEVELOPMENT: AN INTRODUCTION CSCI /19/14 HANNAH MILLER

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

Android For Java Developers. Marko Gargenta Marakana

CHAPTER 1: INTRODUCTION TO ANDROID, MOBILE DEVICES, AND THE MARKETPLACE

1. Introduction to Android

Tutorial on Basic Android Setup

Android Setup Phase 2

Developing NFC Applications on the Android Platform. The Definitive Resource

An Introduction to Android Application Development. Serdar Akın, Haluk Tüfekçi

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

Praktikum Entwicklung Mediensysteme (für Master)

Practical Android Projects Lucas Jordan Pieter Greyling

Android 多 核 心 嵌 入 式 多 媒 體 系 統 設 計 與 實 作

ECE 455/555 Embedded System Design. Android Programming. Wei Gao. Fall

Getting Started: Creating a Simple App

Introduction to Android Programming (CS5248 Fall 2015)

Frameworks & Android. Programmeertechnieken, Tim Cocx

Programming with Android

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

Introduction to Android SDK Jordi Linares

Fahim Uddin 1. Java SDK

Android Environment SDK

Introduction to Android

Q1. What method you should override to use Android menu system?

The "Eclipse Classic" version is recommended. Otherwise, a Java or RCP version of Eclipse is recommended.

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

Mobile Application Development

Android Developer Fundamental 1

Developing an Android App. CSC207 Fall 2014

The power of root on Android emulators

Android Programming and Security

An Introduction to Android

Hello World. by Elliot Khazon

QUALIFICATIONS PACK - OCCUPATIONAL STANDARDS FOR TELECOM INDUSTRY. SECTOR:TELECOM SUB-SECTOR: Handset (Terminal Applications) REFERENCE ID: TEL/Q2300

Lecture 1 Introduction to Android

5 reasons to choose Streamezzo SDK over Android SDK Page 2

01. Introduction of Android

Transcription:

Android Application Development Lecture Notes INDEX Lesson 1. Introduction 1-2 Mobile Phone Evolution 1-3 Hardware: What is inside a Smart Cellular Phone? 1-4 Hardware: Reusing Cell Phone Frequencies 1-5 Software: What is Android? 1-6 Why Android? 1-7 What is the Open Handset Alliance? 1-8 Open Handset Alliance Members 1-10 The Mobile Revolution 1-12 Android vs. OS Competitors 1-13 Android Software/Hardware Components 1-14 Android s Software Architecture 1-15 Software Layers (Video) 1-16 Application s Life Cycle (Video) 1-17 Android s API (Video) 1-18 Android Application Framework (Video) 1-19 Android Development Tools (Video) 1-20 An Introduction to Android (Video) 1-21 The Dalvik Virtual Machine (Video) 1-22 Android Intents 1-24 Example1: Java + Built-in Intent 1-27 Dissecting an Android Application 1-28 Android Manifest XML File 1-31 Example2. Currency converter Appendix The Size of the Mobile Market 1-40 2009 Mobile market compared to other technologies 1-41 2009 Mobile Revenue 1-42 2009 Mobile Search Market 1-43 2009 How SMS compares as a text communication application 1-44 2009 Mobile Operating System Market Share Worldwide 1-45 Mobile Market Second Quarter 2010-Q2 1-46 Mobile Market Fourth Quarter 2010-Q4 1-47 Mobile Market Second Quarter 2011-Q2 1-48 Mobile Market First Quarter 2014-Q1 1-51 Cell-Phone Diffusion Lesson 2. Android App Development Using Eclipse + ADT + SD 2-2 Android Applications (Just Apps) 2-3 Dalvik Virtual Machine vs. Android Runtime (ART) 2-4 Development Workbenches 2-5 Typical Layout of the Eclipse-ADT IDE 2-6 Layout of Android-Studio IDE 2-7 Eclipse Setup 2-8 SDK names 2-9 Users Wanting to Update an Older Android Workbench 2-10 First Time Android Users who have Eclipse already installed

2-11 Configure the ADT Plugin 2-12 Working with Virtual Devices (AVDs) 2-13 Creating a Virtual Device (AVD) 2-16 Testing a Virtual Device (AVD) 2-17 Running a Virtual Device (AVD) 2-20 Controlling the AVD Operations 2-21 Working with Emulator Disk Images 2-22 Upload/download Data, Music and Picture files to the Emulator s SDcard 2-27 Example : HelloWorld App 2-33 File Structure of a Typical Android App 2-34 Login into the Android OS shell 2-38 Hacking: Moving an app from a Rooted Phone to the Emulator 2-39 Simpler than Hacking: Install a File Manager for Android 2-40 Using an alternate SD card & userdata Image 2-41 Sending Text Messages from your Window s PC to the Emulator 2-43 Making a Phone Call from your PC to the Emulator 2-45 Using Eclipse s DDMS facility 2-48 Appendix 1 - Using a Hardware Device 2-49 Appendix 2 Emulator-to-Emulator Interaction 2-50 Appendix 3 - How to Transfer Your Google Contacts into the Emulator Lesson 3. Application s Life Cycle 3-2 Anatomy of Android Apps - Core Components 3-3 1. Activity Class 3-4 Example of an app containing multiple Activities 3-5 2. Service Class 3-7 3. Broadcast Receiver Class 3-9 4. Content Provider Class 3-11 Life and Death in Android 3-13 The Activity Stack 3-15 Life Cycle Callbacks 3-17 Activity States and Callback Methods 3-18 Activity State: Running 3-19 Activity State: Paused 3-20 Activity State: Stopped 3-21 Activity Life Cycle Diagram 3-22 Your turn! Lab Experience 1 3-25 Your turn! Lab Experience 2 3-26 Your turn! Lab Experience 3 3-27 Foreground Lifetime 3-28 Associating Lifecycle Events with Application s Code 3-31 Killable States 3-32 Data Persistence using Android SharedPreferences Class 3-34 A complete Example: The LifeCycle App Lesson 4. Graphical User Interfaces 4-2 The Model-View-Control Pattern (MVC) 4-5 Android UI Design Patterns (Video) 4-6 The View Class

4-7 Using XML to represent UIs 4-8 Nesting XML Layouts 4-9 Setting Views to Work 4-10 A Sample of Common Android Layouts 4-11 A Sample of Common Android Widgets 4-13 GUI Editing: XML Version 4-14 GUI Editing: WYSIWYG Version 4-15 Tools you can use to create an Android GUI 4-16 GUI Elements: The LAYOUT 4-17 FrameLayout 4-18 LinearLayout 4-19 Setting Attributes 4-20 Orientation 4-21 Fill Model 4-24 Warning! Same XML different rendition 4-25 Weight 4-26 Gravity 4-27 Layout-Gravity vs. Gravity 4-28 Padding 4-29 Padding and Margin 4-32 Relative Layout 4-34 Referring to the container 4-35 Referring to Other Widgets 4-38 Example 2 4-39 Table Layout 4-40 Setting number of columns 4-41 Example3 4-43 Stretching a column 4-45 Example4 4-46 Stretching the entire table 4-48 ScrollView Layout (Vertical & Horizontal) 4-49 Example 5. Vertical ScrollView Layout 4-50 Example 6. HorizontalScrollView Layout 4-51 Miscellaneous: Absolute Layout (Deprecated) 4-53 Connecting Layouts to Java Code 4-55 What is the meaning of an Android Context? (aside) 4-58 Basic Widgets: TextViews 4-59 Example 8 - TextViews 4-60 Basic Widgets: Buttons 4-61 Example9: Connecting Multiple Buttons Lesson 4. Graphical User Interfaces 4-63 Buttons - Combining Images & Text 4-65 How icons are used in Android? 4-66 Basic Widgets: EditText Boxes 4-67 Example10: Login-Screen 4-69 Programming time Your turn! 4-75 Basic Widgets: CheckBoxes

4-76 Example11: CheckBoxes CaféApp 4-77 Basic Widgets: CheckBoxes 4-82 Example12: CheckBoxes CaféApp 4-83 Miscellaneous: Useful UI Attributes & Java Methods 4-88 Appendix A. Using the @string resource 4-90 Appendix B. DroidDraw 4-91 Appendix C. Android Asset Studio 4-92 Appendix D. Measuring Graphic Elements 4-93 Appendix E. Hierarchy Viewer Tool 4-96 Appendix F. Customizing Widgets 4-97 Appendix G: Fixing Bleeding Background Color 4-107 Appendix H: Useful Color Theme (Android Holo) 4-108 ImageView & ImageButton Lesson 5. List-Based Widgets: Lists, Grids, and Scroll Views 5-2 GUI Design for Selection Making 5-3 Showing a large set of choices on the GUI 5-4 ListViews 5-5 ArrayAdapter 5-6 List-Based App = ListView + Data + DataAdapter 5-7 Using the ArrayAdapter<String> Class 5-8 Example1A: ListView showing a simple list (plain text) 5-14 An experiment based on Example1A 5-15 Another code experiment based on Example1A 5-16 Example1B: Using Activity & ArrayAdapter 5-19 Example1C: Custom ListView 5-21 The Spinner Widget 5-25 Example2: Using the Spinner Widget 5-26 GridViews 5-27 Useful Properties 5-28 Fitting the View to the Screen 5-31 Example3A: GridView Demo - Layout 5-33 AutoComplete TextView 5-36 Example4: AutoComplete Demo - Layout 5-37 The HorizontalScrollView Widget 5-38 Example5: HorizontalScrollView Demo 5-39 How to make a thumbnail? 5-47 Populating The HorizontalScrollView Widget 5-48 Image-Based GridViews (again ) 5-49 Example6: GridView Images Demo 5-55 Custom Adapter - MyImageAdapter 5-58 Example6B: An Experiment - Changing from GridView to ListView 5-60 Using The Spinner Widget (again ) 5-61 Example7: Spinner Demo2 5-66 Example8: Defining your own ListViews 5-67 Create your own DataAdapter 5-68 Designing Custom-Rows 5-76 The LayoutInflater Class 5-77 Example 9: Storing Images on the SD card 5-81 The BitmapFactory class

5-83 Appendix A: Predefined Android Resources 5-85 Appendix B: EditText Boxes & Keyboarding 5-90 Example10: Using android:inputtype=" text textcapwords" 5-93 Example 11: Using android:inputtype="number numbersigned numberdecimal" 5-94 Example 12: Using android:inputtype="textpassword" 5-94 Example 13: Using android:inputtype="textemailaddress" 5-95 Example 14: Using android:inputtype="phone" 5-96 Example 15: Using android:inputtype="time" 5-97 Example 16: Using android:inputtype="time" 5-99 Example 17: Using android:inputtype="datetime" 5-100 Enable-Disable Soft Keyboarding on an EditText View Lesson Y. X

Lesson Y. X