SlideShare a Scribd company logo
1 of 47
Instructor Notes
To the instructor:
This slide set has been prepared with both the highlights from the student text as
well as notes from the text. The students will not be able to see the notes unless
you provide them with the slide set. You can choose whether or not to provide that
option.
The notes are best seen by directing the main presentation to the LCD projector
and keeping the Notes view open on the instructor’s PC. You will find that pausing
the presentation to do some kind of activity at least once every 20 minutes is
critical to keeping PowerPoint from become tedious. Since different people have
different presentation styles, it would be impossible to provide a clear timing
structure. You should allow ample time for each slide, including stopping for
activities.
In case you have not done this before, the instructor notes are found by pointing at
Slide Show on the Menu Bar. Click on the Set Up Slide Show option and select the
Multiple Monitors  Show Presenter View.
Note: Presenter View also has a blackout button. Don’t be afraid to use it to
interrupt the tedium of staring at an LCD presentation when doing activities.
From Introduction to Android™ Application Development, Fifth Edition, by Joseph Annuzzi, Jr., Lauren Darcey, and Shane Conder (ISBN-13: 978-0-13-
438945-5)
Introduction to Android Application
Development, Android Essentials,
Fifth Edition
Chapter 2
Setting Up for Development
Chapter 2
Overview
 Learn how to set up our Android development
environment
 Look at many of the tools provided with the
Android SDK
 Review the Android SDK License Agreement
 Learn about many important SDK packages
 Look at the sample applications available with the
SDK
Configuring Your
Development Environment
 Android SDK compatible with Windows,
Macintosh, or Linux systems
 Installation requirements for using this book:
– Java Development Kit (JDK), Version 7
• http://www.oracle.com/technetwork/java/javase/d
ownloads/index.html
– Android Studio (includes the Android SDK)
• http://d.android.com/sdk/index.html
Included with Android Studio
 Android Studio
– SDK tools
– Platform tools
– The latest Android platform
– The latest Android system image for the
emulator
Alternative Compatible Java IDE
 IntelliJ IDEA
– Community Edition
– Ultimate Edition
Alternative Configurations
(Cont’d)
 When using other IDEs:
– Command-line tools
• http://d.android.com/tools/projects/projects-
cmdline.html
– Debugging
• http://d.android.com/tools/debugging/debugging-
projects-cmdline.html
– Testing
• http://d.android.com/tools/testing/testing_otheride
.html
Basic Installation Process
1. Download and install the appropriate JDK.
2. Download and install or unzip the appropriate
Android Studio package for your Operating
System.
3. Launch Android Studio and use the Android SDK
Manager to download and install specific Android
platform versions and other components.
4. Install appropriate USB drivers for device
debugging, if necessary.
5. Configure your device(s) for debugging.
6. Start developing.
Basic Installation Process
Configuring Your Operating
System for Device Debugging
 To install and debug on real devices:
– Configure OS to access device via USB
– Mac OS
• May work without any configuration
– Windows
• Requires appropriate USB driver
• http://d.android.com/sdk/win-usb.html
– Linux
• Requires additional steps
• http://d.android.com/tools/device.html
Configuring Your OS for
Device Debugging (Cont’d)
Configuring Android
Hardware for Debugging
 Devices with Android 4.2+ have debugging
disabled by default.
– This requires enabling Developer Options.
1. From the Home screen, choose All Apps →
Settings → About Phone (or About
Tablet).
2. Scroll down to Build Number.
3. Press Build Number seven times to unlock
Developer Options.
Configuring Android
Hardware for Debugging
(Cont’d)
 To install our own applications, configure our
device to install from Unknown sources.
1. From Home → All Apps → Settings →
Security.
2. Enable (check) Unknown sources.
– Skipping this step prevents us from installing
our apps to our own device.
Configuring Android
Hardware for Debugging
(Cont’d)
Configuring Android
Hardware for Debugging
(Cont’d)
 Enable some Developer Options settings.
– From Home → All Apps → Settings →
Developer options
• Then enable USB debugging.
Configuring Android
Hardware for Debugging
(Cont’d)
Upgrading Android Studio
and the Android SDK
 To stay up-to-date with the latest advancements:
– Upgrade from time to time
 Updates include:
– New, updated, or removed features
– Package name changes
– Updated tools
– Essential documents
• Overview of Changes
• API Diff Report
• Release Notes
– See http://d.android.com/sdk/installing/adding-packages.html
Problems with Android Studio
and the Android SDK
 There may be bugs!
– Find open issues and their status at the Android
project’s Issue Tracker website.
– Submit new issues for review.
– Issue tracker website:
• https://code.google.com/p/android/issues/list
– To report bugs or defects for Android Dev team:
• http://source.android.com/source/report-bugs.html
– Learn more about the bug-fixing process:
• http://source.android.com/source/life-of-a-bug.html
Exploring the Android SDK
 Android SDK major components:
– Android SDK Platform by version
– Platform tools
– SDK Build Tools
– System images
– Google APIs
– Sources for Android SDK
– Extras
– Sample applications
The Android SDK License
Agreement
 Before downloading the SDK, you must agree to
the Android SDK License Agreement.
– This agreement is between you and Google.
– Make sure that you understand this license even
if someone else has accepted the agreement on
your behalf!
The Android SDK License
Agreement (Cont’d)
 Rights granted:
– Google grants you a limited, worldwide, royalty-
free, nonassignable, and nonexclusive license
to use the SDK solely to develop applications
for the Android platform.
– Google still holds all copyrights and intellectual
property rights to the SDK.
– Google does not grant permission to use any of
its brands, logos, or trade names.
– You will not remove any copyright notices
therein.
The Android SDK License
Agreement (Cont’d)
 SDK usage:
– You may only develop Android applications with
the SDK.
• You may not make derivative works from the
SDK or distribute the SDK on any device.
• You may not distribute part of the SDK with
other software.
The Android SDK License
Agreement (Cont’d)
 SDK changes and backward compatibility:
– Google may change the Android SDK at any
time without notice and without regard to
backward compatibility.
• Early APIs had frequent changes, but recent
releases are reasonably stable.
• Each SDK update does affect at least a small
number of apps.
– Updating your application is your own
responsibility.
The Android SDK License
Agreement (Cont’d)
 Android application developer rights:
– You retain all rights to any Android software you
develop with the SDK, including intellectual
property rights.
– You also retain all responsibility for your own
work.
The Android SDK License
Agreement (Cont’d)
 Android application privacy requirements:
– You agree that your application will protect the
privacy and legal rights of your users.
– If your app accesses personal and private info,
you must provide adequate privacy notice and
keep the data stored securely. These include
usernames, passwords, and so on.
– Privacy laws and regulations vary by user
location.
• You are solely responsible for managing this
data appropriately.
The Android SDK License
Agreement (Cont’d)
 Android application malware requirements:
– You are responsible for all applications you
develop.
– You agree not to write disruptive applications or
malware.
– You are solely responsible for all data
transmitted through your application.
The Android SDK License
Agreement (Cont’d)
 Additional terms for specific Google APIs:
– Use of APIs such as Google Maps Android API is
subject to further Terms of Service.
• You must agree to these additional terms before
using those specific APIs.
• You must always include the copyright notice,
too.
– Other API terms include Gmail, Blogger, Google
Calendar, and YouTube.
• Your application’s usage is limited to accessing
those to which your user has explicitly granted
permission.
The Android SDK License
Agreement (Cont’d)
 Develop at your own risk!
– Any harm that comes from developing with the
Android SDK is your own fault and not
Google’s.
Reading the Android SDK
Documentation
 Read locally or online:
– Online at http://d.android.com/index.html
Reading the Android SDK
Documentation (Cont’d)
Exploring the Core Android
Application Framework
 Which file comprises the Android framework?
– android.jar
Important Packages in the
Android SDK
Top-Level Package Name Description
android.* Android application fundamentals
dalvik.* Dalvik virtual machine support classes
java.* Core classes and familiar generic utilities
javax.* Encryption support
junit.* Unit-testing support
org.apache.http.* HTTP protocol support
org.json JSON support
org.w3c.dom W3C DOM XML and HTML support
org.xml.* SAX support for XML
org.xmlpull.* High-performance XML pull parsing
Popular Third-Party Android APIs
 Available outside the core Android SDK
 Installed separately
 Some are from Google, others from device
manufacturers and other providers
Popular Third-Party Android APIs
(Cont’d)
 Android Support Library
 Google Mobile Ads SDK (com.google.android.gms.ads.*)
 Google Analytics SDK for Android
(com.google.android.gms.analytics.*)
 Android Cloud Messaging for Android (GCM)
(com.google.android.gms.gcm)
 Google App Indexing
(com.google.android.gms.appindexing)
 Google App Invites (com.google.android.gms.appinvite)
 Google Play Game Services
(com.google.android.gms.games)
 Google Fit (com.google.android.gms.fitness)
Exploring the Core Android
Tools
 Android Studio
– Where you spend most of your time developing
your apps
– Provides wizards for creating, debugging, and
deploying Android apps
– Several buttons available on the toolbar for
performing helpful actions
Android Studio
 Launch the Android Virtual Device Manager
 Launch the Android SDK Manager
 Launch the Android Device Monitor
Android Studio (Cont’d)
Android SDK and AVD
Managers
 The first Android toolbar icon launches the
Android Virtual Device Manager.
 The second Android toolbar icon launches the
Android SDK Manager.
Android SDK and AVD
Managers (Cont’d)
Android SDK and AVD
Managers (Cont’d)
Android SDK and AVD
Managers (Cont’d)
Android Emulator
 Helpful tool used for designing and developing
Android applications
 Runs on your computer
 Behaves like a real device
 Load Android applications into the emulator to test
and debug them
 Generic device, not tied to any one specific
configuration
 Valuable, but should not be used as a replacement
for testing on actual target devices
Android Emulator (Cont’d)
Android Emulator (Cont’d)
Exploring the Android Sample
Applications
 Demo applications are not provided as part of the Android
SDK by default.
– Android Studio provides a dialog for importing the sample
applications—from GitHub—as a project.
 Android Studio sample applications code categories to
investigate:
– Getting started
– Background
– Input
– Media
– Connectivity
– Notification
– Wearable
Chapter 2
Summary
 We have learned how to install and configure
the tools for Android development.
– JDK, SDK, ADT Bundle
 We have explored many of the tools provided
with the Android SDK.
 We have reviewed the Android SDK License
Agreement.
 We have learned about important SDK
packages.
 We have perused the sample applications
provided with the SDK.
References and More
Information
 Google’s Android Developers Guide:
– http://d.android.com/guide/components/index.html
 Android SDK download site:
– http://d.android.com/sdk/index.html
 Android SDK License Agreement:
– http://d.android.com/sdk/terms.html
 The Java Platform, Standard Edition:
– http://www.oracle.com/technetwork/java/javase/overview/index.html
 JetBrains:
– https://www.jetbrains.com/
 Android Developer Tools:
– https://developer.android.com/tools/help/adt.html
 The Eclipse Project:
– http://www.eclipse.org

More Related Content

What's hot

Week 1 - Android Study Jams
Week 1 - Android Study JamsWeek 1 - Android Study Jams
Week 1 - Android Study JamsJoannaCamille2
 
Android Development: Build Android App from Scratch
Android Development: Build Android App from ScratchAndroid Development: Build Android App from Scratch
Android Development: Build Android App from ScratchTaufan Erfiyanto
 
Android App development and test environment, Understaing android app structure
Android App development and test environment, Understaing android app structureAndroid App development and test environment, Understaing android app structure
Android App development and test environment, Understaing android app structureVijay Rastogi
 
Introduction_to_android_and_android_studio
Introduction_to_android_and_android_studioIntroduction_to_android_and_android_studio
Introduction_to_android_and_android_studioAbdul Basit
 
Android Programming Basics
Android Programming BasicsAndroid Programming Basics
Android Programming BasicsEueung Mulyana
 
Eclipse & android setup
Eclipse & android setupEclipse & android setup
Eclipse & android setupChina Bigs
 
How to create android applications
How to create android applicationsHow to create android applications
How to create android applicationsTOPS Technologies
 
Introduction to android coding
Introduction to android codingIntroduction to android coding
Introduction to android codingHari Krishna
 
Android development-tutorial
Android development-tutorialAndroid development-tutorial
Android development-tutorialilias ahmed
 
Introduction to android studio 2.0 and data binding library
Introduction to android studio 2.0 and data binding libraryIntroduction to android studio 2.0 and data binding library
Introduction to android studio 2.0 and data binding libraryKaushal Dhruw
 
Creating the first app with android studio
Creating the first app with android studioCreating the first app with android studio
Creating the first app with android studioParinita03
 
Android chapter02-setup1-sdk
Android chapter02-setup1-sdkAndroid chapter02-setup1-sdk
Android chapter02-setup1-sdkTran Le Hoan
 
Android tutorial
Android tutorialAndroid tutorial
Android tutorialmaster760
 

What's hot (19)

Week 1 - Android Study Jams
Week 1 - Android Study JamsWeek 1 - Android Study Jams
Week 1 - Android Study Jams
 
Android tutorial1
Android tutorial1Android tutorial1
Android tutorial1
 
Android Development: Build Android App from Scratch
Android Development: Build Android App from ScratchAndroid Development: Build Android App from Scratch
Android Development: Build Android App from Scratch
 
Android studio
Android studioAndroid studio
Android studio
 
Android App development and test environment, Understaing android app structure
Android App development and test environment, Understaing android app structureAndroid App development and test environment, Understaing android app structure
Android App development and test environment, Understaing android app structure
 
Introduction_to_android_and_android_studio
Introduction_to_android_and_android_studioIntroduction_to_android_and_android_studio
Introduction_to_android_and_android_studio
 
Android Programming Basics
Android Programming BasicsAndroid Programming Basics
Android Programming Basics
 
Eclipse & android setup
Eclipse & android setupEclipse & android setup
Eclipse & android setup
 
How to create android applications
How to create android applicationsHow to create android applications
How to create android applications
 
Introduction to android coding
Introduction to android codingIntroduction to android coding
Introduction to android coding
 
Android development-tutorial
Android development-tutorialAndroid development-tutorial
Android development-tutorial
 
Introduction to android studio 2.0 and data binding library
Introduction to android studio 2.0 and data binding libraryIntroduction to android studio 2.0 and data binding library
Introduction to android studio 2.0 and data binding library
 
Creating the first app with android studio
Creating the first app with android studioCreating the first app with android studio
Creating the first app with android studio
 
Android chapter02-setup1-sdk
Android chapter02-setup1-sdkAndroid chapter02-setup1-sdk
Android chapter02-setup1-sdk
 
Android Applications Development
Android Applications DevelopmentAndroid Applications Development
Android Applications Development
 
Android Development
Android DevelopmentAndroid Development
Android Development
 
Android tutorial
Android tutorialAndroid tutorial
Android tutorial
 
Multi-OS Engine Technology Overview
Multi-OS Engine Technology OverviewMulti-OS Engine Technology Overview
Multi-OS Engine Technology Overview
 
Android studio
Android studioAndroid studio
Android studio
 

Similar to 9780134433646 annuzzi ch02 (1)

Developing for Android-Types of Android Application
Developing for Android-Types of Android ApplicationDeveloping for Android-Types of Android Application
Developing for Android-Types of Android ApplicationNandini Prabhu
 
Module-I_Introduction-to-Android.pptx
Module-I_Introduction-to-Android.pptxModule-I_Introduction-to-Android.pptx
Module-I_Introduction-to-Android.pptxlancelotlaytan1996
 
Android tutorial ppt
Android tutorial pptAndroid tutorial ppt
Android tutorial pptRehna Renu
 
Lec004 setting up for development
Lec004   setting up for developmentLec004   setting up for development
Lec004 setting up for developmentEyad Almasri
 
Android tutorial
Android tutorialAndroid tutorial
Android tutorialDanish_k
 
Java Meetup - 12-03-15 - Android Development Workshop
Java Meetup - 12-03-15 - Android Development WorkshopJava Meetup - 12-03-15 - Android Development Workshop
Java Meetup - 12-03-15 - Android Development WorkshopKasun Dananjaya Delgolla
 
Seminar on android app development
Seminar on android app developmentSeminar on android app development
Seminar on android app developmentAbhishekKumar4779
 
Android installation guide
Android installation guideAndroid installation guide
Android installation guidemagicshui
 
Os eclipse-androidwidget-pdf
Os eclipse-androidwidget-pdfOs eclipse-androidwidget-pdf
Os eclipse-androidwidget-pdfweerabahu
 
androidPramming.ppt
androidPramming.pptandroidPramming.ppt
androidPramming.pptBijayKc16
 
Android Application Development Using Java
Android Application Development Using JavaAndroid Application Development Using Java
Android Application Development Using Javaamaankhan
 
Methods to set up android app development environment
Methods to set up android app development environmentMethods to set up android app development environment
Methods to set up android app development environmentastoria0128
 
Android dev o_auth
Android dev o_authAndroid dev o_auth
Android dev o_authlzongren
 
Android Development Primer - GDG Los Angeles
Android Development Primer - GDG Los AngelesAndroid Development Primer - GDG Los Angeles
Android Development Primer - GDG Los AngelesGerard
 
AN ANDROID APP FOR BUILDING STUDENT PROFILES
AN ANDROID APP FOR BUILDING STUDENT PROFILESAN ANDROID APP FOR BUILDING STUDENT PROFILES
AN ANDROID APP FOR BUILDING STUDENT PROFILESIRJET Journal
 
Android App Development - 01 Introduction
Android App Development - 01 IntroductionAndroid App Development - 01 Introduction
Android App Development - 01 IntroductionDiego Grancini
 

Similar to 9780134433646 annuzzi ch02 (1) (20)

Developing for Android-Types of Android Application
Developing for Android-Types of Android ApplicationDeveloping for Android-Types of Android Application
Developing for Android-Types of Android Application
 
Notes Unit2.pptx
Notes Unit2.pptxNotes Unit2.pptx
Notes Unit2.pptx
 
Module-I_Introduction-to-Android.pptx
Module-I_Introduction-to-Android.pptxModule-I_Introduction-to-Android.pptx
Module-I_Introduction-to-Android.pptx
 
Android tutorial
Android tutorialAndroid tutorial
Android tutorial
 
Android tutorial ppt
Android tutorial pptAndroid tutorial ppt
Android tutorial ppt
 
Lec004 setting up for development
Lec004   setting up for developmentLec004   setting up for development
Lec004 setting up for development
 
Android tutorial
Android tutorialAndroid tutorial
Android tutorial
 
Android tutorial
Android tutorialAndroid tutorial
Android tutorial
 
Java Meetup - 12-03-15 - Android Development Workshop
Java Meetup - 12-03-15 - Android Development WorkshopJava Meetup - 12-03-15 - Android Development Workshop
Java Meetup - 12-03-15 - Android Development Workshop
 
Android
AndroidAndroid
Android
 
Seminar on android app development
Seminar on android app developmentSeminar on android app development
Seminar on android app development
 
Android installation guide
Android installation guideAndroid installation guide
Android installation guide
 
Os eclipse-androidwidget-pdf
Os eclipse-androidwidget-pdfOs eclipse-androidwidget-pdf
Os eclipse-androidwidget-pdf
 
androidPramming.ppt
androidPramming.pptandroidPramming.ppt
androidPramming.ppt
 
Android Application Development Using Java
Android Application Development Using JavaAndroid Application Development Using Java
Android Application Development Using Java
 
Methods to set up android app development environment
Methods to set up android app development environmentMethods to set up android app development environment
Methods to set up android app development environment
 
Android dev o_auth
Android dev o_authAndroid dev o_auth
Android dev o_auth
 
Android Development Primer - GDG Los Angeles
Android Development Primer - GDG Los AngelesAndroid Development Primer - GDG Los Angeles
Android Development Primer - GDG Los Angeles
 
AN ANDROID APP FOR BUILDING STUDENT PROFILES
AN ANDROID APP FOR BUILDING STUDENT PROFILESAN ANDROID APP FOR BUILDING STUDENT PROFILES
AN ANDROID APP FOR BUILDING STUDENT PROFILES
 
Android App Development - 01 Introduction
Android App Development - 01 IntroductionAndroid App Development - 01 Introduction
Android App Development - 01 Introduction
 

Recently uploaded

VidaXL dropshipping via API with DroFx.pptx
VidaXL dropshipping via API with DroFx.pptxVidaXL dropshipping via API with DroFx.pptx
VidaXL dropshipping via API with DroFx.pptxolyaivanovalion
 
(ISHITA) Call Girls Service Hyderabad Call Now 8617697112 Hyderabad Escorts
(ISHITA) Call Girls Service Hyderabad Call Now 8617697112 Hyderabad Escorts(ISHITA) Call Girls Service Hyderabad Call Now 8617697112 Hyderabad Escorts
(ISHITA) Call Girls Service Hyderabad Call Now 8617697112 Hyderabad EscortsCall girls in Ahmedabad High profile
 
Carero dropshipping via API with DroFx.pptx
Carero dropshipping via API with DroFx.pptxCarero dropshipping via API with DroFx.pptx
Carero dropshipping via API with DroFx.pptxolyaivanovalion
 
BabyOno dropshipping via API with DroFx.pptx
BabyOno dropshipping via API with DroFx.pptxBabyOno dropshipping via API with DroFx.pptx
BabyOno dropshipping via API with DroFx.pptxolyaivanovalion
 
(PARI) Call Girls Wanowrie ( 7001035870 ) HI-Fi Pune Escorts Service
(PARI) Call Girls Wanowrie ( 7001035870 ) HI-Fi Pune Escorts Service(PARI) Call Girls Wanowrie ( 7001035870 ) HI-Fi Pune Escorts Service
(PARI) Call Girls Wanowrie ( 7001035870 ) HI-Fi Pune Escorts Serviceranjana rawat
 
Industrialised data - the key to AI success.pdf
Industrialised data - the key to AI success.pdfIndustrialised data - the key to AI success.pdf
Industrialised data - the key to AI success.pdfLars Albertsson
 
Introduction-to-Machine-Learning (1).pptx
Introduction-to-Machine-Learning (1).pptxIntroduction-to-Machine-Learning (1).pptx
Introduction-to-Machine-Learning (1).pptxfirstjob4
 
Mature dropshipping via API with DroFx.pptx
Mature dropshipping via API with DroFx.pptxMature dropshipping via API with DroFx.pptx
Mature dropshipping via API with DroFx.pptxolyaivanovalion
 
04242024_CCC TUG_Joins and Relationships
04242024_CCC TUG_Joins and Relationships04242024_CCC TUG_Joins and Relationships
04242024_CCC TUG_Joins and Relationshipsccctableauusergroup
 
Midocean dropshipping via API with DroFx
Midocean dropshipping via API with DroFxMidocean dropshipping via API with DroFx
Midocean dropshipping via API with DroFxolyaivanovalion
 
April 2024 - Crypto Market Report's Analysis
April 2024 - Crypto Market Report's AnalysisApril 2024 - Crypto Market Report's Analysis
April 2024 - Crypto Market Report's Analysismanisha194592
 
VIP Call Girls Service Miyapur Hyderabad Call +91-8250192130
VIP Call Girls Service Miyapur Hyderabad Call +91-8250192130VIP Call Girls Service Miyapur Hyderabad Call +91-8250192130
VIP Call Girls Service Miyapur Hyderabad Call +91-8250192130Suhani Kapoor
 
Beautiful Sapna Vip Call Girls Hauz Khas 9711199012 Call /Whatsapps
Beautiful Sapna Vip  Call Girls Hauz Khas 9711199012 Call /WhatsappsBeautiful Sapna Vip  Call Girls Hauz Khas 9711199012 Call /Whatsapps
Beautiful Sapna Vip Call Girls Hauz Khas 9711199012 Call /Whatsappssapnasaifi408
 
VIP High Class Call Girls Jamshedpur Anushka 8250192130 Independent Escort Se...
VIP High Class Call Girls Jamshedpur Anushka 8250192130 Independent Escort Se...VIP High Class Call Girls Jamshedpur Anushka 8250192130 Independent Escort Se...
VIP High Class Call Girls Jamshedpur Anushka 8250192130 Independent Escort Se...Suhani Kapoor
 
Halmar dropshipping via API with DroFx
Halmar  dropshipping  via API with DroFxHalmar  dropshipping  via API with DroFx
Halmar dropshipping via API with DroFxolyaivanovalion
 
CebaBaby dropshipping via API with DroFX.pptx
CebaBaby dropshipping via API with DroFX.pptxCebaBaby dropshipping via API with DroFX.pptx
CebaBaby dropshipping via API with DroFX.pptxolyaivanovalion
 
EMERCE - 2024 - AMSTERDAM - CROSS-PLATFORM TRACKING WITH GOOGLE ANALYTICS.pptx
EMERCE - 2024 - AMSTERDAM - CROSS-PLATFORM  TRACKING WITH GOOGLE ANALYTICS.pptxEMERCE - 2024 - AMSTERDAM - CROSS-PLATFORM  TRACKING WITH GOOGLE ANALYTICS.pptx
EMERCE - 2024 - AMSTERDAM - CROSS-PLATFORM TRACKING WITH GOOGLE ANALYTICS.pptxthyngster
 
Brighton SEO | April 2024 | Data Storytelling
Brighton SEO | April 2024 | Data StorytellingBrighton SEO | April 2024 | Data Storytelling
Brighton SEO | April 2024 | Data StorytellingNeil Barnes
 

Recently uploaded (20)

VidaXL dropshipping via API with DroFx.pptx
VidaXL dropshipping via API with DroFx.pptxVidaXL dropshipping via API with DroFx.pptx
VidaXL dropshipping via API with DroFx.pptx
 
(ISHITA) Call Girls Service Hyderabad Call Now 8617697112 Hyderabad Escorts
(ISHITA) Call Girls Service Hyderabad Call Now 8617697112 Hyderabad Escorts(ISHITA) Call Girls Service Hyderabad Call Now 8617697112 Hyderabad Escorts
(ISHITA) Call Girls Service Hyderabad Call Now 8617697112 Hyderabad Escorts
 
Carero dropshipping via API with DroFx.pptx
Carero dropshipping via API with DroFx.pptxCarero dropshipping via API with DroFx.pptx
Carero dropshipping via API with DroFx.pptx
 
BabyOno dropshipping via API with DroFx.pptx
BabyOno dropshipping via API with DroFx.pptxBabyOno dropshipping via API with DroFx.pptx
BabyOno dropshipping via API with DroFx.pptx
 
(PARI) Call Girls Wanowrie ( 7001035870 ) HI-Fi Pune Escorts Service
(PARI) Call Girls Wanowrie ( 7001035870 ) HI-Fi Pune Escorts Service(PARI) Call Girls Wanowrie ( 7001035870 ) HI-Fi Pune Escorts Service
(PARI) Call Girls Wanowrie ( 7001035870 ) HI-Fi Pune Escorts Service
 
Industrialised data - the key to AI success.pdf
Industrialised data - the key to AI success.pdfIndustrialised data - the key to AI success.pdf
Industrialised data - the key to AI success.pdf
 
Introduction-to-Machine-Learning (1).pptx
Introduction-to-Machine-Learning (1).pptxIntroduction-to-Machine-Learning (1).pptx
Introduction-to-Machine-Learning (1).pptx
 
Mature dropshipping via API with DroFx.pptx
Mature dropshipping via API with DroFx.pptxMature dropshipping via API with DroFx.pptx
Mature dropshipping via API with DroFx.pptx
 
04242024_CCC TUG_Joins and Relationships
04242024_CCC TUG_Joins and Relationships04242024_CCC TUG_Joins and Relationships
04242024_CCC TUG_Joins and Relationships
 
꧁❤ Aerocity Call Girls Service Aerocity Delhi ❤꧂ 9999965857 ☎️ Hard And Sexy ...
꧁❤ Aerocity Call Girls Service Aerocity Delhi ❤꧂ 9999965857 ☎️ Hard And Sexy ...꧁❤ Aerocity Call Girls Service Aerocity Delhi ❤꧂ 9999965857 ☎️ Hard And Sexy ...
꧁❤ Aerocity Call Girls Service Aerocity Delhi ❤꧂ 9999965857 ☎️ Hard And Sexy ...
 
Midocean dropshipping via API with DroFx
Midocean dropshipping via API with DroFxMidocean dropshipping via API with DroFx
Midocean dropshipping via API with DroFx
 
April 2024 - Crypto Market Report's Analysis
April 2024 - Crypto Market Report's AnalysisApril 2024 - Crypto Market Report's Analysis
April 2024 - Crypto Market Report's Analysis
 
Delhi 99530 vip 56974 Genuine Escort Service Call Girls in Kishangarh
Delhi 99530 vip 56974 Genuine Escort Service Call Girls in  KishangarhDelhi 99530 vip 56974 Genuine Escort Service Call Girls in  Kishangarh
Delhi 99530 vip 56974 Genuine Escort Service Call Girls in Kishangarh
 
VIP Call Girls Service Miyapur Hyderabad Call +91-8250192130
VIP Call Girls Service Miyapur Hyderabad Call +91-8250192130VIP Call Girls Service Miyapur Hyderabad Call +91-8250192130
VIP Call Girls Service Miyapur Hyderabad Call +91-8250192130
 
Beautiful Sapna Vip Call Girls Hauz Khas 9711199012 Call /Whatsapps
Beautiful Sapna Vip  Call Girls Hauz Khas 9711199012 Call /WhatsappsBeautiful Sapna Vip  Call Girls Hauz Khas 9711199012 Call /Whatsapps
Beautiful Sapna Vip Call Girls Hauz Khas 9711199012 Call /Whatsapps
 
VIP High Class Call Girls Jamshedpur Anushka 8250192130 Independent Escort Se...
VIP High Class Call Girls Jamshedpur Anushka 8250192130 Independent Escort Se...VIP High Class Call Girls Jamshedpur Anushka 8250192130 Independent Escort Se...
VIP High Class Call Girls Jamshedpur Anushka 8250192130 Independent Escort Se...
 
Halmar dropshipping via API with DroFx
Halmar  dropshipping  via API with DroFxHalmar  dropshipping  via API with DroFx
Halmar dropshipping via API with DroFx
 
CebaBaby dropshipping via API with DroFX.pptx
CebaBaby dropshipping via API with DroFX.pptxCebaBaby dropshipping via API with DroFX.pptx
CebaBaby dropshipping via API with DroFX.pptx
 
EMERCE - 2024 - AMSTERDAM - CROSS-PLATFORM TRACKING WITH GOOGLE ANALYTICS.pptx
EMERCE - 2024 - AMSTERDAM - CROSS-PLATFORM  TRACKING WITH GOOGLE ANALYTICS.pptxEMERCE - 2024 - AMSTERDAM - CROSS-PLATFORM  TRACKING WITH GOOGLE ANALYTICS.pptx
EMERCE - 2024 - AMSTERDAM - CROSS-PLATFORM TRACKING WITH GOOGLE ANALYTICS.pptx
 
Brighton SEO | April 2024 | Data Storytelling
Brighton SEO | April 2024 | Data StorytellingBrighton SEO | April 2024 | Data Storytelling
Brighton SEO | April 2024 | Data Storytelling
 

9780134433646 annuzzi ch02 (1)

  • 1. Instructor Notes To the instructor: This slide set has been prepared with both the highlights from the student text as well as notes from the text. The students will not be able to see the notes unless you provide them with the slide set. You can choose whether or not to provide that option. The notes are best seen by directing the main presentation to the LCD projector and keeping the Notes view open on the instructor’s PC. You will find that pausing the presentation to do some kind of activity at least once every 20 minutes is critical to keeping PowerPoint from become tedious. Since different people have different presentation styles, it would be impossible to provide a clear timing structure. You should allow ample time for each slide, including stopping for activities. In case you have not done this before, the instructor notes are found by pointing at Slide Show on the Menu Bar. Click on the Set Up Slide Show option and select the Multiple Monitors  Show Presenter View. Note: Presenter View also has a blackout button. Don’t be afraid to use it to interrupt the tedium of staring at an LCD presentation when doing activities. From Introduction to Android™ Application Development, Fifth Edition, by Joseph Annuzzi, Jr., Lauren Darcey, and Shane Conder (ISBN-13: 978-0-13- 438945-5)
  • 2. Introduction to Android Application Development, Android Essentials, Fifth Edition Chapter 2 Setting Up for Development
  • 3. Chapter 2 Overview  Learn how to set up our Android development environment  Look at many of the tools provided with the Android SDK  Review the Android SDK License Agreement  Learn about many important SDK packages  Look at the sample applications available with the SDK
  • 4. Configuring Your Development Environment  Android SDK compatible with Windows, Macintosh, or Linux systems  Installation requirements for using this book: – Java Development Kit (JDK), Version 7 • http://www.oracle.com/technetwork/java/javase/d ownloads/index.html – Android Studio (includes the Android SDK) • http://d.android.com/sdk/index.html
  • 5. Included with Android Studio  Android Studio – SDK tools – Platform tools – The latest Android platform – The latest Android system image for the emulator
  • 6. Alternative Compatible Java IDE  IntelliJ IDEA – Community Edition – Ultimate Edition
  • 7. Alternative Configurations (Cont’d)  When using other IDEs: – Command-line tools • http://d.android.com/tools/projects/projects- cmdline.html – Debugging • http://d.android.com/tools/debugging/debugging- projects-cmdline.html – Testing • http://d.android.com/tools/testing/testing_otheride .html
  • 8. Basic Installation Process 1. Download and install the appropriate JDK. 2. Download and install or unzip the appropriate Android Studio package for your Operating System. 3. Launch Android Studio and use the Android SDK Manager to download and install specific Android platform versions and other components. 4. Install appropriate USB drivers for device debugging, if necessary. 5. Configure your device(s) for debugging. 6. Start developing.
  • 10. Configuring Your Operating System for Device Debugging  To install and debug on real devices: – Configure OS to access device via USB – Mac OS • May work without any configuration – Windows • Requires appropriate USB driver • http://d.android.com/sdk/win-usb.html – Linux • Requires additional steps • http://d.android.com/tools/device.html
  • 11. Configuring Your OS for Device Debugging (Cont’d)
  • 12. Configuring Android Hardware for Debugging  Devices with Android 4.2+ have debugging disabled by default. – This requires enabling Developer Options. 1. From the Home screen, choose All Apps → Settings → About Phone (or About Tablet). 2. Scroll down to Build Number. 3. Press Build Number seven times to unlock Developer Options.
  • 13. Configuring Android Hardware for Debugging (Cont’d)  To install our own applications, configure our device to install from Unknown sources. 1. From Home → All Apps → Settings → Security. 2. Enable (check) Unknown sources. – Skipping this step prevents us from installing our apps to our own device.
  • 14. Configuring Android Hardware for Debugging (Cont’d)
  • 15. Configuring Android Hardware for Debugging (Cont’d)  Enable some Developer Options settings. – From Home → All Apps → Settings → Developer options • Then enable USB debugging.
  • 16. Configuring Android Hardware for Debugging (Cont’d)
  • 17. Upgrading Android Studio and the Android SDK  To stay up-to-date with the latest advancements: – Upgrade from time to time  Updates include: – New, updated, or removed features – Package name changes – Updated tools – Essential documents • Overview of Changes • API Diff Report • Release Notes – See http://d.android.com/sdk/installing/adding-packages.html
  • 18. Problems with Android Studio and the Android SDK  There may be bugs! – Find open issues and their status at the Android project’s Issue Tracker website. – Submit new issues for review. – Issue tracker website: • https://code.google.com/p/android/issues/list – To report bugs or defects for Android Dev team: • http://source.android.com/source/report-bugs.html – Learn more about the bug-fixing process: • http://source.android.com/source/life-of-a-bug.html
  • 19. Exploring the Android SDK  Android SDK major components: – Android SDK Platform by version – Platform tools – SDK Build Tools – System images – Google APIs – Sources for Android SDK – Extras – Sample applications
  • 20. The Android SDK License Agreement  Before downloading the SDK, you must agree to the Android SDK License Agreement. – This agreement is between you and Google. – Make sure that you understand this license even if someone else has accepted the agreement on your behalf!
  • 21. The Android SDK License Agreement (Cont’d)  Rights granted: – Google grants you a limited, worldwide, royalty- free, nonassignable, and nonexclusive license to use the SDK solely to develop applications for the Android platform. – Google still holds all copyrights and intellectual property rights to the SDK. – Google does not grant permission to use any of its brands, logos, or trade names. – You will not remove any copyright notices therein.
  • 22. The Android SDK License Agreement (Cont’d)  SDK usage: – You may only develop Android applications with the SDK. • You may not make derivative works from the SDK or distribute the SDK on any device. • You may not distribute part of the SDK with other software.
  • 23. The Android SDK License Agreement (Cont’d)  SDK changes and backward compatibility: – Google may change the Android SDK at any time without notice and without regard to backward compatibility. • Early APIs had frequent changes, but recent releases are reasonably stable. • Each SDK update does affect at least a small number of apps. – Updating your application is your own responsibility.
  • 24. The Android SDK License Agreement (Cont’d)  Android application developer rights: – You retain all rights to any Android software you develop with the SDK, including intellectual property rights. – You also retain all responsibility for your own work.
  • 25. The Android SDK License Agreement (Cont’d)  Android application privacy requirements: – You agree that your application will protect the privacy and legal rights of your users. – If your app accesses personal and private info, you must provide adequate privacy notice and keep the data stored securely. These include usernames, passwords, and so on. – Privacy laws and regulations vary by user location. • You are solely responsible for managing this data appropriately.
  • 26. The Android SDK License Agreement (Cont’d)  Android application malware requirements: – You are responsible for all applications you develop. – You agree not to write disruptive applications or malware. – You are solely responsible for all data transmitted through your application.
  • 27. The Android SDK License Agreement (Cont’d)  Additional terms for specific Google APIs: – Use of APIs such as Google Maps Android API is subject to further Terms of Service. • You must agree to these additional terms before using those specific APIs. • You must always include the copyright notice, too. – Other API terms include Gmail, Blogger, Google Calendar, and YouTube. • Your application’s usage is limited to accessing those to which your user has explicitly granted permission.
  • 28. The Android SDK License Agreement (Cont’d)  Develop at your own risk! – Any harm that comes from developing with the Android SDK is your own fault and not Google’s.
  • 29. Reading the Android SDK Documentation  Read locally or online: – Online at http://d.android.com/index.html
  • 30. Reading the Android SDK Documentation (Cont’d)
  • 31. Exploring the Core Android Application Framework  Which file comprises the Android framework? – android.jar
  • 32. Important Packages in the Android SDK Top-Level Package Name Description android.* Android application fundamentals dalvik.* Dalvik virtual machine support classes java.* Core classes and familiar generic utilities javax.* Encryption support junit.* Unit-testing support org.apache.http.* HTTP protocol support org.json JSON support org.w3c.dom W3C DOM XML and HTML support org.xml.* SAX support for XML org.xmlpull.* High-performance XML pull parsing
  • 33. Popular Third-Party Android APIs  Available outside the core Android SDK  Installed separately  Some are from Google, others from device manufacturers and other providers
  • 34. Popular Third-Party Android APIs (Cont’d)  Android Support Library  Google Mobile Ads SDK (com.google.android.gms.ads.*)  Google Analytics SDK for Android (com.google.android.gms.analytics.*)  Android Cloud Messaging for Android (GCM) (com.google.android.gms.gcm)  Google App Indexing (com.google.android.gms.appindexing)  Google App Invites (com.google.android.gms.appinvite)  Google Play Game Services (com.google.android.gms.games)  Google Fit (com.google.android.gms.fitness)
  • 35. Exploring the Core Android Tools  Android Studio – Where you spend most of your time developing your apps – Provides wizards for creating, debugging, and deploying Android apps – Several buttons available on the toolbar for performing helpful actions
  • 36. Android Studio  Launch the Android Virtual Device Manager  Launch the Android SDK Manager  Launch the Android Device Monitor
  • 38. Android SDK and AVD Managers  The first Android toolbar icon launches the Android Virtual Device Manager.  The second Android toolbar icon launches the Android SDK Manager.
  • 39. Android SDK and AVD Managers (Cont’d)
  • 40. Android SDK and AVD Managers (Cont’d)
  • 41. Android SDK and AVD Managers (Cont’d)
  • 42. Android Emulator  Helpful tool used for designing and developing Android applications  Runs on your computer  Behaves like a real device  Load Android applications into the emulator to test and debug them  Generic device, not tied to any one specific configuration  Valuable, but should not be used as a replacement for testing on actual target devices
  • 45. Exploring the Android Sample Applications  Demo applications are not provided as part of the Android SDK by default. – Android Studio provides a dialog for importing the sample applications—from GitHub—as a project.  Android Studio sample applications code categories to investigate: – Getting started – Background – Input – Media – Connectivity – Notification – Wearable
  • 46. Chapter 2 Summary  We have learned how to install and configure the tools for Android development. – JDK, SDK, ADT Bundle  We have explored many of the tools provided with the Android SDK.  We have reviewed the Android SDK License Agreement.  We have learned about important SDK packages.  We have perused the sample applications provided with the SDK.
  • 47. References and More Information  Google’s Android Developers Guide: – http://d.android.com/guide/components/index.html  Android SDK download site: – http://d.android.com/sdk/index.html  Android SDK License Agreement: – http://d.android.com/sdk/terms.html  The Java Platform, Standard Edition: – http://www.oracle.com/technetwork/java/javase/overview/index.html  JetBrains: – https://www.jetbrains.com/  Android Developer Tools: – https://developer.android.com/tools/help/adt.html  The Eclipse Project: – http://www.eclipse.org

Editor's Notes

  1. When installing Android Studio, make sure to select all the available components for your system setup, as seen on the Choose Components dialog of the Android Studio Setup wizard as seen here. The last component, Performance (Intel® HAXM), may not be available on your device for installation, but don’t worry if that particular component is not available. Make sure the Android SDK and the Android Virtual Device are selected for installation.
  2. Here is an image representing our development computer and our Android device. As you can see, Android Studio is running on the development computer, along with an emulator instance running our application. On our handset device, we can also see our application running.
  3. Enabling unknown sources on the device
  4. USB debugging: This setting enables you to debug your applications via the USB connection.
  5. Enabling Android developer settings on the device
  6. Essential documents An Overview of Changes: A brief description of the major changes to the SDK An API Diff Report: A complete list of specific changes to the SDK Release Notes: A list of known issues with the SDK
  7. Here is a screenshot showing the Android SDK documentation viewed from the local drive.
  8. Android Support Library Adds several components available in recent SDKs to legacy versions of the SDKs. For example, the Various Loader APIs and Fragment APIs introduced in API Level 11 can be used, in compatibility form, as far back as API Level 4 using this add-on. Google Mobile Ads SDK Allows developers to insert Google Mobile Ads to monetize their applications. This SDK requires agreement to additional Terms of Service and registration for an account. Google Analytics SDK for Android Allows developers to collect and analyze information about how their Android applications are used with the popular Google Analytics service. This SDK requires agreement to additional Terms of Service and registration for an account. Android Cloud Messaging for Android (GCM) Provides access to a service for developers to push data from the network to their applications installed on devices. This SDK requires agreement to additional Terms of Service and registration for an account. Google App Indexing This SDK helps you prepare your application for indexing in Google Search so that your application may be found by users through searching. Google App Invites This SDK allows you to integrate app invite functionality so that your users may invite their Google contacts using SMS and email. Google Play Game Services Provides achievement, leaderboard, and multiplayer functionality to your games. This SDK requires agreement to additional Terms of Service and registration for an account. Google Fit Allows users to integrate fitness tracking functionality in their applications. This SDK requires agreement to additional Terms of Service and registration for an account.
  9. Here is a screenshot showing the Android features present in the Android Studio toolbar.
  10. Android Virtual Device Manager The Android Virtual Device Manager organizes and provides tools to create and edit AVDs. To manage applications in the Android emulator, you must configure different AVD profiles. Each AVD profile describes what type of device you want the emulator to simulate, including which Android platform to support as well what the device specifications should be. You can specify different screen sizes and orientations, and you can specify whether the emulator has an SD card and, if so, what its capacity is, among many other device configuration settings. Android SDK Manager The Android SDK Manager facilitates Android development across multiple platform versions simultaneously. When a new Android SDK is released, you can use this tool to download and update your tools while still maintaining backward compatibility and use older versions of the Android SDK.
  11. This is the Android Virtual Device Manager.
  12. The built-in Android SDK Manager shows the currently installed Android SDK Platforms (top) and SDK Tools (bottom).
  13. This is the stand-alone Android SDK Manager.
  14. This is the Android emulator (Nexus 5 smartphone-style, Android API 22 AVD configuration).
  15. This is the Android emulator (Nexus 9 tablet-style, Android API 22 AVD configuration).
  16. Getting started Includes samples demonstrating common Android components such as the an actionbar, floating action button, and more Background Includes samples demonstrating common tasks that should be run in the background Input Includes samples demonstrating common input methods such as gestures, multitouch, and swipes Media Includes samples demonstrating media-related features such as the camera, recording, effects, and others Connectivity Includes samples demonstrating various networking methods such as Bluetooth and HTTP Notification Includes samples demonstrating various Notification APIs Wearable Includes many samples demonstrating the various features available to developers for wearable devices
  17. Class homework assignment: Chapter 2 Quiz Questions and Exercises listed at the end of the chapter.