SlideShare ist ein Scribd-Unternehmen logo
1 von 50
Downloaden Sie, um offline zu lesen
Android Application Development
Environment Setup
System Requirements
Setting up Development Environment
Supported OS
1. Windows XP (32-bit), Vista (32- or 64-bit), or Windows 7
(32- or 64-bit)
2. Mac OS X 10.5.8 or later (x86 only)
3. Linux (tested on Ubuntu Linux, Lucid Lynx)
Supported Development Environment (Eclipse IDE based)
1. Eclipse 3.4 (Ganymede) or greater/Eclipse Classic (versions
3.5.1 and higher)
2. JDK 1.5 or 1.6
3. ADT Plugin
To set up the development environment, we need:
1. Java Development Kit (JDK 1.5+, 1.6 is preferable)
2. Eclipse IDE
3. Android SDK
Setting up Development Environment(Contd.)
JDK for Java SE 6
• Overview
• Java 6 is newest, best, and especially fastest version
– Java 5 supported by Android but not recommended
• For PC, Linux, Solaris, follow directions at
• http://www.oracle.com/technetwork/java/javase/downloads/
– Get JDK, not just JRE
– Get SE (Standard Edition), not EE or Micro Edition
– Don’t get version with the NetBeans IDE
• For MacOS, Java is preinstalled & updated automatically
Installing Java SE 6
• Install Java 6
• http://www.oracle.com/technetwork/java/javase/downloads/
Setting up Development Environment (Contd.)
First we install JDK
We have already done that
The Android SDK
• Overview
– Android-specific libraries
– Dalvik (Android virtual machine) compiler
– Android emulator (to run without physical device)
– DDMS debugging environment
• • Documentation
– Installation
• http://developer.android.com/sdk/installing.html
– – Developer’s Guide
• Developer s • http://developer.android.com/guide/developing/index.html
– – JavaDoc (API Reference)
• http://developer.android.com/reference/classes.html
– – Tutorials and articles
• http://developer.android.com/resources/index.html 12
Android SDK
Setting up Development Environment (Contd.)
Link: http://developer.android.com/sdk/index.html
Download and Install the SDK starter package from the table above
(Highlighted)
Android Environment: Eclipse & ADT
Android SDKEclipse
ADT
Android …..
……………….
Android 3.2
Android 4.x
Android 2.2
Google API 2.2
SDK Manager
AVD Manager
Manages
Emulator
Installing Eclipse
• Go to eclipse.org, click on “Downloads”
• – Results in
• http://eclipse.org/downloads/
• – Can use either “for Java” or
• “for Java EE”.
• I use EE version since I also use Eclipse for Web apps.
• Latest version (3.6 – Helios) recommended.
• Previous version (3.5 – Ganymede) still supported
• Older versions (3.4 and earlier) not supported
Running Eclipse
• Unzip the downloaded file (no installer!)
– Call the folder you unzip into “installDir”
• Double click eclipse.exe
– From installDir/bin
• Click on
• “Workbench” icon
– Next time you bring up Eclipse, it will come up in
workbench automatically
• Shortcut
– Many developers put Eclipse link on their desktop
• R-click eclipse.exe, Copy, then go to desktop, R-click, and Paste
Shortcut (not just Paste!)
Setting up Development Environment (Contd.)
Setting up Development Environment (Contd.)
We’ll setup Eclipse Indigo
Stand-alone Eclipse: just decompress and run eclipse.exe
You can create a shortcut in the desktop for eclipse.exe
Eclipse
• Overview
– Eclipse is a free open source IDE (Integrated
– Development Environment). Support for Java, HTML,
– CSS, JavaScript, C++, PHP, and more.
– Google has free Eclipse plugin to integrate with the Android SDK.
• Features
– General
• Checks your syntax as you type
• Automatically compiles every time you save file
• Refactoring, debugging, templates for common tasks, etc.
– Android-specific
• Deploy apps to Android emulator
• Configure virtual environments
• Drag-and-drop GUI builder
Setting up Development Environment (Contd.)
We’ll setup Eclipse Indigo
Choose your WorkSpace
Setting up Development Environment (Contd.)
We’ll setup Eclipse Indigo
Setting up Development Environment (Contd.)
We’ll setup Eclipse Indigo
We’ll become familiar to our new IDE gradually and I swear you’ll start loving it
Setting up Development Environment (Contd.)
We’ll setup ADT Plugin
Setting up Development Environment (Contd.)
We’ll setup ADT Plug-in
Setting up Development Environment (Contd.)
We’ll setup ADT Plugin
Setting up Development Environment (Contd.)
We’ll setup ADT Plug-in
Setting up Development Environment (Contd.)
We’ll setup ADT Plug-in
Setting up Development Environment (Contd.)
We’ll setup ADT Plug-in
Setting up Development Environment (Contd.)
We’ll setup ADT Plug-in
Adding ADT Pluging is DONE… You’ll now get a message
Setting up Development Environment (Contd.)
We’ll setup android SDK
After restarting Eclipse we get:
Don’t forget to ask me about the red marks
Setting up Development Environment (Contd.)
We’ll setup android SDK
SDK and AVD Manager: If we click on it:
So, we have to set the location of Android SDK and show it to our IDE
To do so….
Setting up Development Environment (Contd.)
We’ll setup android SDK
Setting up Development Environment (Contd.)
We’ll setup android SDK
Setting up Development Environment (Contd.)
We’ll setup android SDK
Setting up Development Environment (Contd.)
We’ll setup android SDK
Setting up Development Environment (Contd.)
We’ll setup DDMS
Now We are Ready
Let’s say “Hello” to the Android World!
Let’s Go Deep…
Created Project has the following structure
Project Structure
-Source (src)
-Generated Class (gen)
-Android 1.6 library
-Assets (assets)
-Resource(res)
-drawable-hdpi
-drawable-ldpi
-drawable-mdpi
-layout
-values
-AndroidMenifest.xml
-default.properties
Let’s Go Deep… (Contd.)
To run the app in emulator, we have to do the following steps:
1. Create AVD (Android Virtual Device)
2. Create Run Configuration
3. Run the Application
To run the app in device, we have to do the following steps:
1. Install device driver
2. Connect device through USB
3. Create Run Configuration
4. Run the Application
We’ll run the app in emulator for now
Let’s Go Deep… (Contd.)
1. Create AVD (Android Virtual Device)
Use Android SDK & AVD Manager to create AVD
Let’s Go Deep… (Contd.)
2. Create Run Configuration
1. Create a Run
Configuration
2. Browse and select
the project to run
Let’s Go Deep… (Contd.)
3. Select AVD & Run
Click Run to start AVD/emulator
Let’s Go Deep… (Contd.)
Result in Emulator
Now its time to analyze how it works
Create a new Project in Eclipse
To create a new project:
1.Start Eclipse
2.Select File> New> Project.
3.Select Android> Android Project, and click
Next.
Select Android Project, a new window
will open.
Specify the Project Name (Ex :
HelloWorld).
Create a new Project in Eclipse (Cont)
On The same window select the build target
and specify the Application Name, Package
Name, Activity Name and the Minimum SDK
version.
Click on Finish. The new Android Project
will be opened.
Create a new Project in Eclipse (Cont)
Once you complete the New Project Wizard, ADT creates the following folders and
files in your new project:
src/ - Includes your stub Activity Java file. All other Java files for your application go
here.
<Android Version>/ - (e.g., Android 1.5/) Includes the android.jar file that your
application will build against.
Gen/ - This contains the Java files generated by ADT, such as your R.java file and
interfaces created from AIDL files.
assets/ - This is empty. You can use it to store raw asset files.
bin/ - stores the compiled application
bin/classes/ - stores the compiled Java classes
bin/classes.dex - stores the executable created from compiled Java classes
bin/app.apk – holds the Android application.
res/ - A folder for your application resources, such as drawable files, layout files,
string values, etc.
res/ - resources used in the application
res/drawable/ - for images
res/layout/ - for XML-based UI layout
res/raw/ - for general-purpose files
res/values/ - for strings, dimensions
res/xml/ - for general-purpose XML files
AndroidManifest.xml - The Android Manifest for your project.
default.properties - This file contains project settings, such as the build target.
Create a new Project in Eclipse (Cont)
The new created project will have the following main entities.
• HelloAndroid.java- The default main Activity created while creating the
project. It would contain all the logic that needs to be implemented for the
main page.
• Main.xml- This xml file will comprise of the view part i.e. how the main
Activity will look like.
• AndroidManifest.xml- This is the main configuration file that will contain all
the information about the application like the details of all the activities, the
main activity, the permissions for the application etc.
• Strings.xml- This file contains the string definitions that we use in our
android application.
• There is one more file R.java in the application. This is the most important
file as it contains the list of compiled objects representation of the layout
defined in the layout files.
• R.java is generated automatically at the compile time if there are no
compilation errors and cannot be modified by the user.
Create a new Project in Eclipse (Cont)
Compilation process
Project Structure…
Created Project has the following structure
Project Structure
-Source (src)
-Generated Class (gen)
-Android 1.6 library
-Assets (assets)
-Resource(res)
-drawable-hdpi
-drawable-ldpi
-drawable-mdpi
-layout
-values
-AndroidMenifest.xml
-default.properties
Project Structure (Contd.)
-Source (src)
We have used only one class here which is an Activity named HalloActivity. We’ll
describe about Activity in detail with lifecycle shortly. For now we can consider
Activity as Android analogue for the window or dialog in a desktop application. It
can load view from xml layout (here main.xml under res/layout folder)
In the HelloActivity class the view
of the Activity is set from main.xml
given below
Project Structure (Contd.)
-res/layout/main.xml
1. UI Layout can be defined from source code using View or by layout xmls.
2. The layout xml can be generated by visual tool given by ADT
Project Structure (Contd.)
-res/drawable
1. From Android 1.6 to support different screen sizes and screen densities graphic files
are kept in 3 different folders drawable-hdpi, drawable-ldpi and drawable-mdpi
2. In our current project, they contain only default icon file with different dimensions
to support devices with different screen resolution.
-assets
Holds other static files you wish packaged with the application for deployment
onto the device. In this project, we have none
-gen/R.java -values/strings.xml
Project Structure (Contd.)
-AndroidMenifest.xml
XML file describing the application being built and what components – activities,
services, etc. – are being supplied by that application
Questions?

Weitere ähnliche Inhalte

Was ist angesagt?

Getting Enter in Android development
Getting Enter in Android developmentGetting Enter in Android development
Getting Enter in Android developmentGhufran Hashmi
 
Mobile App Testing ScanAgile 2012
Mobile App Testing ScanAgile 2012Mobile App Testing ScanAgile 2012
Mobile App Testing ScanAgile 2012Daniel Knott
 
Ios actions and outlets
Ios actions and outletsIos actions and outlets
Ios actions and outletsveeracynixit
 
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
 
Different Android Test Automation Frameworks - What Works You the Best?
Different Android Test Automation Frameworks - What Works You the Best?Different Android Test Automation Frameworks - What Works You the Best?
Different Android Test Automation Frameworks - What Works You the Best?Bitbar
 
Training Session 2 - Day 2
Training Session 2 - Day 2Training Session 2 - Day 2
Training Session 2 - Day 2Vivek Bhusal
 
Android Programming Basics
Android Programming BasicsAndroid Programming Basics
Android Programming BasicsEueung Mulyana
 
Introduction to android coding
Introduction to android codingIntroduction to android coding
Introduction to android codingHari Krishna
 
Android development session
Android development sessionAndroid development session
Android development sessionEsraa Ibrahim
 
Installing android sdk on net beans
Installing android sdk on net beansInstalling android sdk on net beans
Installing android sdk on net beansAravindharamanan S
 

Was ist angesagt? (20)

Getting Enter in Android development
Getting Enter in Android developmentGetting Enter in Android development
Getting Enter in Android development
 
Mobile App Testing ScanAgile 2012
Mobile App Testing ScanAgile 2012Mobile App Testing ScanAgile 2012
Mobile App Testing ScanAgile 2012
 
Android Applications Development
Android Applications DevelopmentAndroid Applications Development
Android Applications Development
 
Calc app
Calc appCalc app
Calc app
 
Android studio
Android studioAndroid studio
Android studio
 
Synapseindia android apps application
Synapseindia android apps applicationSynapseindia android apps application
Synapseindia android apps application
 
Training android
Training androidTraining android
Training android
 
Google Android
Google AndroidGoogle Android
Google Android
 
Ios actions and outlets
Ios actions and outletsIos actions and outlets
Ios actions and outlets
 
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
 
Different Android Test Automation Frameworks - What Works You the Best?
Different Android Test Automation Frameworks - What Works You the Best?Different Android Test Automation Frameworks - What Works You the Best?
Different Android Test Automation Frameworks - What Works You the Best?
 
Android Lab
Android LabAndroid Lab
Android Lab
 
Training Session 2 - Day 2
Training Session 2 - Day 2Training Session 2 - Day 2
Training Session 2 - Day 2
 
Android Programming Basics
Android Programming BasicsAndroid Programming Basics
Android Programming Basics
 
I Phone101
I Phone101I Phone101
I Phone101
 
Introduction to android coding
Introduction to android codingIntroduction to android coding
Introduction to android coding
 
Android development session
Android development sessionAndroid development session
Android development session
 
Installing android sdk on net beans
Installing android sdk on net beansInstalling android sdk on net beans
Installing android sdk on net beans
 
Android course (lecture2)
Android course (lecture2)Android course (lecture2)
Android course (lecture2)
 
Android Layout.pptx
Android Layout.pptxAndroid Layout.pptx
Android Layout.pptx
 

Ähnlich wie Android App Dev Environment Setup in 40 Steps

Android Workshop: Day 1 Part 3
Android Workshop: Day 1 Part 3Android Workshop: Day 1 Part 3
Android Workshop: Day 1 Part 3Ahsanul Karim
 
Day: 2 Environment Setup for Android Application Development
Day: 2 Environment Setup for Android Application DevelopmentDay: 2 Environment Setup for Android Application Development
Day: 2 Environment Setup for Android Application DevelopmentAhsanul Karim
 
Lec005 android start_program
Lec005 android start_programLec005 android start_program
Lec005 android start_programEyad Almasri
 
Ayw android env_setup
Ayw android env_setupAyw android env_setup
Ayw android env_setuppbeerak
 
Android chapter02-setup1-sdk
Android chapter02-setup1-sdkAndroid chapter02-setup1-sdk
Android chapter02-setup1-sdkTran Le Hoan
 
Android application development
Android application developmentAndroid application development
Android application developmentslidesuren
 
Session 2 prepare android development environment
Session 2   prepare android development environmentSession 2   prepare android development environment
Session 2 prepare android development environmentAdham Enaya
 
Android installation guide
Android installation guideAndroid installation guide
Android installation guidemagicshui
 
03 Beginning Android Application Development
03 Beginning Android Application Development03 Beginning Android Application Development
03 Beginning Android Application DevelopmentArief Gunawan
 
Introduction to Android and Java.pptx
Introduction to Android and Java.pptxIntroduction to Android and Java.pptx
Introduction to Android and Java.pptxGandhiMathy6
 
Android app development: a top-down perspective
Android app development: a top-down perspectiveAndroid app development: a top-down perspective
Android app development: a top-down perspectiveChao-Chueh Chang
 

Ähnlich wie Android App Dev Environment Setup in 40 Steps (20)

Android Workshop: Day 1 Part 3
Android Workshop: Day 1 Part 3Android Workshop: Day 1 Part 3
Android Workshop: Day 1 Part 3
 
Day: 2 Environment Setup for Android Application Development
Day: 2 Environment Setup for Android Application DevelopmentDay: 2 Environment Setup for Android Application Development
Day: 2 Environment Setup for Android Application Development
 
ANDROID PPT 1.pdf
ANDROID PPT 1.pdfANDROID PPT 1.pdf
ANDROID PPT 1.pdf
 
Lec005 android start_program
Lec005 android start_programLec005 android start_program
Lec005 android start_program
 
Ayw android env_setup
Ayw android env_setupAyw android env_setup
Ayw android env_setup
 
Android chapter02-setup1-sdk
Android chapter02-setup1-sdkAndroid chapter02-setup1-sdk
Android chapter02-setup1-sdk
 
Android session 1
Android session 1Android session 1
Android session 1
 
Android app upload
Android app uploadAndroid app upload
Android app upload
 
Android application development
Android application developmentAndroid application development
Android application development
 
Session 2 beccse
Session 2 beccseSession 2 beccse
Session 2 beccse
 
Session 2 prepare android development environment
Session 2   prepare android development environmentSession 2   prepare android development environment
Session 2 prepare android development environment
 
Android installation guide
Android installation guideAndroid installation guide
Android installation guide
 
03 Beginning Android Application Development
03 Beginning Android Application Development03 Beginning Android Application Development
03 Beginning Android Application Development
 
Android App development I
Android App development IAndroid App development I
Android App development I
 
Introduction to Android and Java.pptx
Introduction to Android and Java.pptxIntroduction to Android and Java.pptx
Introduction to Android and Java.pptx
 
Android app development: a top-down perspective
Android app development: a top-down perspectiveAndroid app development: a top-down perspective
Android app development: a top-down perspective
 
Android
Android Android
Android
 
Android Basic
Android BasicAndroid Basic
Android Basic
 
Android_PDF
Android_PDFAndroid_PDF
Android_PDF
 
Android installation guide
Android installation guideAndroid installation guide
Android installation guide
 

Mehr von Siva Kumar reddy Vasipally

Mehr von Siva Kumar reddy Vasipally (10)

01 11 - graphical user interface - fonts-web-tab
01  11 - graphical user interface - fonts-web-tab01  11 - graphical user interface - fonts-web-tab
01 11 - graphical user interface - fonts-web-tab
 
01 10 - graphical user interface - others
01  10 - graphical user interface - others01  10 - graphical user interface - others
01 10 - graphical user interface - others
 
01 09 - graphical user interface - basic widgets
01  09 - graphical user interface - basic widgets01  09 - graphical user interface - basic widgets
01 09 - graphical user interface - basic widgets
 
01 08 - graphical user interface - layouts
01  08 - graphical user interface - layouts01  08 - graphical user interface - layouts
01 08 - graphical user interface - layouts
 
01 07 -android programming basics (cont)
01  07 -android programming basics (cont)01  07 -android programming basics (cont)
01 07 -android programming basics (cont)
 
01 06 - android programming basics
01  06 - android programming basics01  06 - android programming basics
01 06 - android programming basics
 
01 05 - introduction xml
01  05 - introduction xml01  05 - introduction xml
01 05 - introduction xml
 
01 03 - introduction to android
01  03 - introduction to android01  03 - introduction to android
01 03 - introduction to android
 
01 02 - introduction - adroid stack
01  02 - introduction - adroid stack01  02 - introduction - adroid stack
01 02 - introduction - adroid stack
 
01 01 - introduction to mobile application development
01  01 - introduction to mobile application development01  01 - introduction to mobile application development
01 01 - introduction to mobile application development
 

Kürzlich hochgeladen

Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 

Kürzlich hochgeladen (20)

Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 

Android App Dev Environment Setup in 40 Steps

  • 2. System Requirements Setting up Development Environment Supported OS 1. Windows XP (32-bit), Vista (32- or 64-bit), or Windows 7 (32- or 64-bit) 2. Mac OS X 10.5.8 or later (x86 only) 3. Linux (tested on Ubuntu Linux, Lucid Lynx) Supported Development Environment (Eclipse IDE based) 1. Eclipse 3.4 (Ganymede) or greater/Eclipse Classic (versions 3.5.1 and higher) 2. JDK 1.5 or 1.6 3. ADT Plugin
  • 3. To set up the development environment, we need: 1. Java Development Kit (JDK 1.5+, 1.6 is preferable) 2. Eclipse IDE 3. Android SDK Setting up Development Environment(Contd.)
  • 4. JDK for Java SE 6 • Overview • Java 6 is newest, best, and especially fastest version – Java 5 supported by Android but not recommended • For PC, Linux, Solaris, follow directions at • http://www.oracle.com/technetwork/java/javase/downloads/ – Get JDK, not just JRE – Get SE (Standard Edition), not EE or Micro Edition – Don’t get version with the NetBeans IDE • For MacOS, Java is preinstalled & updated automatically
  • 5. Installing Java SE 6 • Install Java 6 • http://www.oracle.com/technetwork/java/javase/downloads/
  • 6. Setting up Development Environment (Contd.) First we install JDK We have already done that
  • 7. The Android SDK • Overview – Android-specific libraries – Dalvik (Android virtual machine) compiler – Android emulator (to run without physical device) – DDMS debugging environment • • Documentation – Installation • http://developer.android.com/sdk/installing.html – – Developer’s Guide • Developer s • http://developer.android.com/guide/developing/index.html – – JavaDoc (API Reference) • http://developer.android.com/reference/classes.html – – Tutorials and articles • http://developer.android.com/resources/index.html 12
  • 8. Android SDK Setting up Development Environment (Contd.) Link: http://developer.android.com/sdk/index.html Download and Install the SDK starter package from the table above (Highlighted)
  • 9. Android Environment: Eclipse & ADT Android SDKEclipse ADT Android ….. ………………. Android 3.2 Android 4.x Android 2.2 Google API 2.2 SDK Manager AVD Manager Manages Emulator
  • 10. Installing Eclipse • Go to eclipse.org, click on “Downloads” • – Results in • http://eclipse.org/downloads/ • – Can use either “for Java” or • “for Java EE”. • I use EE version since I also use Eclipse for Web apps. • Latest version (3.6 – Helios) recommended. • Previous version (3.5 – Ganymede) still supported • Older versions (3.4 and earlier) not supported
  • 11. Running Eclipse • Unzip the downloaded file (no installer!) – Call the folder you unzip into “installDir” • Double click eclipse.exe – From installDir/bin • Click on • “Workbench” icon – Next time you bring up Eclipse, it will come up in workbench automatically • Shortcut – Many developers put Eclipse link on their desktop • R-click eclipse.exe, Copy, then go to desktop, R-click, and Paste Shortcut (not just Paste!)
  • 12. Setting up Development Environment (Contd.)
  • 13. Setting up Development Environment (Contd.) We’ll setup Eclipse Indigo Stand-alone Eclipse: just decompress and run eclipse.exe You can create a shortcut in the desktop for eclipse.exe
  • 14. Eclipse • Overview – Eclipse is a free open source IDE (Integrated – Development Environment). Support for Java, HTML, – CSS, JavaScript, C++, PHP, and more. – Google has free Eclipse plugin to integrate with the Android SDK. • Features – General • Checks your syntax as you type • Automatically compiles every time you save file • Refactoring, debugging, templates for common tasks, etc. – Android-specific • Deploy apps to Android emulator • Configure virtual environments • Drag-and-drop GUI builder
  • 15. Setting up Development Environment (Contd.) We’ll setup Eclipse Indigo Choose your WorkSpace
  • 16. Setting up Development Environment (Contd.) We’ll setup Eclipse Indigo
  • 17. Setting up Development Environment (Contd.) We’ll setup Eclipse Indigo We’ll become familiar to our new IDE gradually and I swear you’ll start loving it
  • 18. Setting up Development Environment (Contd.) We’ll setup ADT Plugin
  • 19. Setting up Development Environment (Contd.) We’ll setup ADT Plug-in
  • 20. Setting up Development Environment (Contd.) We’ll setup ADT Plugin
  • 21. Setting up Development Environment (Contd.) We’ll setup ADT Plug-in
  • 22. Setting up Development Environment (Contd.) We’ll setup ADT Plug-in
  • 23. Setting up Development Environment (Contd.) We’ll setup ADT Plug-in
  • 24. Setting up Development Environment (Contd.) We’ll setup ADT Plug-in Adding ADT Pluging is DONE… You’ll now get a message
  • 25. Setting up Development Environment (Contd.) We’ll setup android SDK After restarting Eclipse we get: Don’t forget to ask me about the red marks
  • 26. Setting up Development Environment (Contd.) We’ll setup android SDK SDK and AVD Manager: If we click on it: So, we have to set the location of Android SDK and show it to our IDE To do so….
  • 27. Setting up Development Environment (Contd.) We’ll setup android SDK
  • 28. Setting up Development Environment (Contd.) We’ll setup android SDK
  • 29. Setting up Development Environment (Contd.) We’ll setup android SDK
  • 30. Setting up Development Environment (Contd.) We’ll setup android SDK
  • 31. Setting up Development Environment (Contd.) We’ll setup DDMS Now We are Ready
  • 32. Let’s say “Hello” to the Android World!
  • 33. Let’s Go Deep… Created Project has the following structure Project Structure -Source (src) -Generated Class (gen) -Android 1.6 library -Assets (assets) -Resource(res) -drawable-hdpi -drawable-ldpi -drawable-mdpi -layout -values -AndroidMenifest.xml -default.properties
  • 34. Let’s Go Deep… (Contd.) To run the app in emulator, we have to do the following steps: 1. Create AVD (Android Virtual Device) 2. Create Run Configuration 3. Run the Application To run the app in device, we have to do the following steps: 1. Install device driver 2. Connect device through USB 3. Create Run Configuration 4. Run the Application We’ll run the app in emulator for now
  • 35. Let’s Go Deep… (Contd.) 1. Create AVD (Android Virtual Device) Use Android SDK & AVD Manager to create AVD
  • 36. Let’s Go Deep… (Contd.) 2. Create Run Configuration 1. Create a Run Configuration 2. Browse and select the project to run
  • 37. Let’s Go Deep… (Contd.) 3. Select AVD & Run Click Run to start AVD/emulator
  • 38. Let’s Go Deep… (Contd.) Result in Emulator Now its time to analyze how it works
  • 39. Create a new Project in Eclipse To create a new project: 1.Start Eclipse 2.Select File> New> Project. 3.Select Android> Android Project, and click Next. Select Android Project, a new window will open. Specify the Project Name (Ex : HelloWorld).
  • 40. Create a new Project in Eclipse (Cont) On The same window select the build target and specify the Application Name, Package Name, Activity Name and the Minimum SDK version. Click on Finish. The new Android Project will be opened.
  • 41. Create a new Project in Eclipse (Cont) Once you complete the New Project Wizard, ADT creates the following folders and files in your new project: src/ - Includes your stub Activity Java file. All other Java files for your application go here. <Android Version>/ - (e.g., Android 1.5/) Includes the android.jar file that your application will build against. Gen/ - This contains the Java files generated by ADT, such as your R.java file and interfaces created from AIDL files. assets/ - This is empty. You can use it to store raw asset files. bin/ - stores the compiled application bin/classes/ - stores the compiled Java classes bin/classes.dex - stores the executable created from compiled Java classes bin/app.apk – holds the Android application. res/ - A folder for your application resources, such as drawable files, layout files, string values, etc. res/ - resources used in the application res/drawable/ - for images res/layout/ - for XML-based UI layout res/raw/ - for general-purpose files res/values/ - for strings, dimensions res/xml/ - for general-purpose XML files AndroidManifest.xml - The Android Manifest for your project. default.properties - This file contains project settings, such as the build target.
  • 42. Create a new Project in Eclipse (Cont) The new created project will have the following main entities. • HelloAndroid.java- The default main Activity created while creating the project. It would contain all the logic that needs to be implemented for the main page. • Main.xml- This xml file will comprise of the view part i.e. how the main Activity will look like. • AndroidManifest.xml- This is the main configuration file that will contain all the information about the application like the details of all the activities, the main activity, the permissions for the application etc. • Strings.xml- This file contains the string definitions that we use in our android application. • There is one more file R.java in the application. This is the most important file as it contains the list of compiled objects representation of the layout defined in the layout files. • R.java is generated automatically at the compile time if there are no compilation errors and cannot be modified by the user.
  • 43. Create a new Project in Eclipse (Cont)
  • 45. Project Structure… Created Project has the following structure Project Structure -Source (src) -Generated Class (gen) -Android 1.6 library -Assets (assets) -Resource(res) -drawable-hdpi -drawable-ldpi -drawable-mdpi -layout -values -AndroidMenifest.xml -default.properties
  • 46. Project Structure (Contd.) -Source (src) We have used only one class here which is an Activity named HalloActivity. We’ll describe about Activity in detail with lifecycle shortly. For now we can consider Activity as Android analogue for the window or dialog in a desktop application. It can load view from xml layout (here main.xml under res/layout folder) In the HelloActivity class the view of the Activity is set from main.xml given below
  • 47. Project Structure (Contd.) -res/layout/main.xml 1. UI Layout can be defined from source code using View or by layout xmls. 2. The layout xml can be generated by visual tool given by ADT
  • 48. Project Structure (Contd.) -res/drawable 1. From Android 1.6 to support different screen sizes and screen densities graphic files are kept in 3 different folders drawable-hdpi, drawable-ldpi and drawable-mdpi 2. In our current project, they contain only default icon file with different dimensions to support devices with different screen resolution. -assets Holds other static files you wish packaged with the application for deployment onto the device. In this project, we have none -gen/R.java -values/strings.xml
  • 49. Project Structure (Contd.) -AndroidMenifest.xml XML file describing the application being built and what components – activities, services, etc. – are being supplied by that application