Android Application Development Lecture Notes INDEX Lesson 1. - - PDF document

android application development lecture notes index
SMART_READER_LITE
LIVE PREVIEW

Android Application Development Lecture Notes INDEX Lesson 1. - - PDF document

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?


slide-1
SLIDE 1

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

slide-2
SLIDE 2

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

slide-3
SLIDE 3

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

slide-4
SLIDE 4

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

slide-5
SLIDE 5

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

slide-6
SLIDE 6
slide-7
SLIDE 7

Lesson Y. X