SlideShare a Scribd company logo
Android Development for
Java Developers
Michael Hantler
FullStack Developers Israel
April 24th 2014
Hosted by:
WHO AM I?
Working as a consultant in Android Development @ Tikal
Knowledge.
Extensive work in mobile HTML5-hybrid applications
Worked for leading mobile security companies on Android/Mobile
applications.
Contact: michael@tikalk.com
Michael Hantler, Lead
Android Architect
over 2 years of
Android Specific Development
{ }
WHO WE ARE?
We help companies build,
deliver, deploy, manage
and optimize their products.
OUR EXPERTESE
Android Development for
Java Developers
text
Prerequisite Knowledge
• Java Development (basic understanding of
dev environments and UI component
implementations)
Prerequisite Installs
• Eclipse
• ADT plugin for Eclipse
• Android SDK with at least version 4.3
Outline
Android at a Glance
Short History of Android
Android at a Glance
Android Software Stacks
Android at a Glance
Development Tools
Android at a Glance
Google’s Development References and Tools
Package References
Development Tools
Building Your First App
Developer Blog
Sample Apps (download through SDK
manager)
Android at a Glance
Hello World example
(also covering Project
structure/creation/debuging/DDMS/Manifest)
Android UI via XML
Utilization
• UI can be designed for one or many screens using XML parameters
and graphical previews using Android Developer Toolkit WYSIWYG
editor.
• XMLs are then loaded dynamically in Java components and can be
accessed/manipulated on the Java level.
Usefulness
• Offers similar development to HTML and JavaScript paradigm
• Easily generate UI assets in WYSIWYG
• Naming conventions allow to design XML for specific screen
sizes, orientations, Android SDK versions, languages
text
R.javatext
Android UI via XML
XML layout example (from Hello World)
Activities and Fragments
Activities
• An “application component that provides a screen with which users
can interact in order to do something, such as dial the phone, take
a photo, send an email, or view a map.” - Activities
• Usually tied to an xml layout that constitutes its ContentView
Fragments
• Only added in Android 3.0.xx in order to deal with tablets, but now
available with backwards compatibility using Support Library
• Different concept from Activities, now need to think about aspects of
each screen and not just the screen themselves in order to offer
responsive design for multiple screens
text
Activity Lifecycle
Fragment Lifecycle
Intents
Description
• “An intent is an abstract description of an operation to be
performed.” – Intent Reference
• Intents offer a runtime binding between Activities and Applications
allowing them to be added to the different process stacks.
Example (Explicit Intent, activities need to be added to
manifest)
Intent intent = new Intent(this, DisplayMessageActivity.class);
intent.putExtra(EXTRA_ACTION, “warning”);
this.startActivity(intent);
text
Code sample after next topic
Views
“This class represents the basic building block for user
interface components. A View occupies a rectangular
area on the screen and is responsible for drawing and
event handling. View is the base class for
widgets, which are used to create interactive UI
components (buttons, text fields, etc.). The ViewGroup
subclass is the base class for layouts, which are
invisible containers that hold other Views (or other
ViewGroups) and define their layout properties.”
text
Commonly Used Views
Definitions from developer.android.com
• TextView - Displays text to the user and optionally allows them to
edit it. A TextView is a complete text editor, however the basic class
is configured to not allow editing…
• EditText - EditText is a thin veneer over TextView that configures
itself to be editable.
• Button - Represents a push-button widget. Push-buttons can be
pressed, or clicked, by the user to perform an action.
• ImageView - Displays an arbitrary image, such as an icon. The
ImageView class can load images from various sources (such as
resources or content providers), takes care of computing its
measurement from the image so that it can be used in any layout
manager, and provides various display options such as scaling and
tinting.
text
Commonly Used Views
(continued)
Definitions from developer.android.com
• ProgressBar - Visual indicator of progress in some operation…
• CheckBox - A checkbox is a specific type of two-states button that
can be either checked or unchecked.
• RadioButton - A radio button is a two-states button that can be
either checked or unchecked…contrary to a CheckBox, a radio
button cannot be unchecked by the user once checked.
• WebView - A View that displays web pages. This class is the basis
upon which you can roll your own web browser or simply display
some online content within your Activity. It uses the WebKit
rendering engine to display web pages and includes methods to
navigate forward and backward through a history, zoom in and
out, perform text searches and more.
text
Email Fragment/Activity Example
(with two buttons instead of list)
ListViews and Adapters
ListView is a view group that displays a list of scrollable
items. The list items are automatically inserted to the list
using an Adapter that pulls content from a source such
as an array or database query and converts each item
result into a view that's placed into the list.
text
Email Fragment/Activity Example
(with list)
Dialogs
A dialog is a small window that prompts the user to
make a decision or enter additional information. A dialog
does not fill the screen and is normally used for modal
events that require users to take an action before they
can proceed.
text
Toasts
A toast provides simple feedback about an operation in
a small popup. It only fills the amount of space required
for the message and the current activity remains visible
and interactive. For example, navigating away from an
email before you send it triggers a "Draft saved" toast to
let you know that you can continue editing later. Toasts
automatically disappear after a timeout.
text
Email Fragment/Activity Example
(with popups)
Support Library
The Android Support Library package is a set of code
libraries that provide backward-compatible versions of
Android framework APIs as well as features that are
only available through the library APIs.
text
Including features like:
• Fragments
• ViewPager
• DrawerLayout
• ActionBar
• Many more
Email Fragment/Activity Example
(add Support Library and ActionBar)
Google Play Services and
Google Play Game Services
Google Play services gives you the freedom to use the newest APIs for
popular Google services without worrying about device support. Updates to
Google Play services are distributed automatically by the Google Play Store
and new versions of the client library are delivered through the Android SDK
Manager. This makes it easy for you to focus on what's important: your users'
experience.
Include Services like:
• Geofencing
• Google Wallet
• Game Leader Boards
• Cloud Data
• Much Much More
text
THANK YOU
Michael Hantler
Email:
michael@tikalk.com

More Related Content

What's hot

Selenium web driver | java
Selenium web driver | javaSelenium web driver | java
Selenium web driver | java
Rajesh Kumar
 
Hello java
Hello java  Hello java
Hello Java-First Level
Hello Java-First LevelHello Java-First Level
Hello Java-First Level
Dr. Raaid Alubady
 
Packages and inbuilt classes of java
Packages and inbuilt classes of javaPackages and inbuilt classes of java
Packages and inbuilt classes of java
kamal kotecha
 
Lecture - 1 introduction to java
Lecture - 1 introduction to javaLecture - 1 introduction to java
Lecture - 1 introduction to java
manish kumar
 
Java
Java Java
java drag and drop and data transfer
java drag and drop and data transferjava drag and drop and data transfer
java drag and drop and data transfer
Ankit Desai
 
Pi j4.1 packages
Pi j4.1 packagesPi j4.1 packages
Pi j4.1 packages
mcollison
 
Java Annotations
Java AnnotationsJava Annotations
Java Annotations
Serhii Kartashov
 
Java API, Exceptions and IO
Java API, Exceptions and IOJava API, Exceptions and IO
Java API, Exceptions and IO
Jussi Pohjolainen
 
Java for beginners
Java for beginnersJava for beginners
Java for beginners
Saeid Zebardast
 
Java cheat sheet
Java cheat sheet Java cheat sheet
Java cheat sheet
Saifur Rahman
 
Java 101 Intro to Java Programming - Exercises
Java 101   Intro to Java Programming - ExercisesJava 101   Intro to Java Programming - Exercises
Java 101 Intro to Java Programming - Exercises
agorolabs
 
Hibernate Training Session1
Hibernate Training Session1Hibernate Training Session1
Hibernate Training Session1
Asad Khan
 
Object Oriented Programming in PHP
Object Oriented Programming in PHPObject Oriented Programming in PHP
Object Oriented Programming in PHP
Lorna Mitchell
 
Annotations
AnnotationsAnnotations
Annotations
Knoldus Inc.
 
OOPS in java | Super and this Keyword | Memory Management in java | pacakages...
OOPS in java | Super and this Keyword | Memory Management in java | pacakages...OOPS in java | Super and this Keyword | Memory Management in java | pacakages...
OOPS in java | Super and this Keyword | Memory Management in java | pacakages...
Sagar Verma
 
Core Java Programming | Data Type | operator | java Control Flow| Class 2
Core Java Programming | Data Type | operator | java Control Flow| Class 2Core Java Programming | Data Type | operator | java Control Flow| Class 2
Core Java Programming | Data Type | operator | java Control Flow| Class 2
Sagar Verma
 
Java tutorials
Java tutorialsJava tutorials

What's hot (19)

Selenium web driver | java
Selenium web driver | javaSelenium web driver | java
Selenium web driver | java
 
Hello java
Hello java  Hello java
Hello java
 
Hello Java-First Level
Hello Java-First LevelHello Java-First Level
Hello Java-First Level
 
Packages and inbuilt classes of java
Packages and inbuilt classes of javaPackages and inbuilt classes of java
Packages and inbuilt classes of java
 
Lecture - 1 introduction to java
Lecture - 1 introduction to javaLecture - 1 introduction to java
Lecture - 1 introduction to java
 
Java
Java Java
Java
 
java drag and drop and data transfer
java drag and drop and data transferjava drag and drop and data transfer
java drag and drop and data transfer
 
Pi j4.1 packages
Pi j4.1 packagesPi j4.1 packages
Pi j4.1 packages
 
Java Annotations
Java AnnotationsJava Annotations
Java Annotations
 
Java API, Exceptions and IO
Java API, Exceptions and IOJava API, Exceptions and IO
Java API, Exceptions and IO
 
Java for beginners
Java for beginnersJava for beginners
Java for beginners
 
Java cheat sheet
Java cheat sheet Java cheat sheet
Java cheat sheet
 
Java 101 Intro to Java Programming - Exercises
Java 101   Intro to Java Programming - ExercisesJava 101   Intro to Java Programming - Exercises
Java 101 Intro to Java Programming - Exercises
 
Hibernate Training Session1
Hibernate Training Session1Hibernate Training Session1
Hibernate Training Session1
 
Object Oriented Programming in PHP
Object Oriented Programming in PHPObject Oriented Programming in PHP
Object Oriented Programming in PHP
 
Annotations
AnnotationsAnnotations
Annotations
 
OOPS in java | Super and this Keyword | Memory Management in java | pacakages...
OOPS in java | Super and this Keyword | Memory Management in java | pacakages...OOPS in java | Super and this Keyword | Memory Management in java | pacakages...
OOPS in java | Super and this Keyword | Memory Management in java | pacakages...
 
Core Java Programming | Data Type | operator | java Control Flow| Class 2
Core Java Programming | Data Type | operator | java Control Flow| Class 2Core Java Programming | Data Type | operator | java Control Flow| Class 2
Core Java Programming | Data Type | operator | java Control Flow| Class 2
 
Java tutorials
Java tutorialsJava tutorials
Java tutorials
 

Viewers also liked

Android Development Workshop
Android Development WorkshopAndroid Development Workshop
Android Development Workshop
Peter Robinett
 
project center in coimbatore
project center in coimbatoreproject center in coimbatore
project center in coimbatore
cbeproject centercoimbatore
 
Android Development
Android DevelopmentAndroid Development
Android Development
Daksh Semwal
 
Optimizing Apps for Better Performance
Optimizing Apps for Better PerformanceOptimizing Apps for Better Performance
Optimizing Apps for Better Performance
Elif Boncuk
 
Workhsop on Logic Building for Programming
Workhsop on Logic Building for ProgrammingWorkhsop on Logic Building for Programming
Workhsop on Logic Building for Programming
Adarsh Patel
 
Workshop on Search Engine Optimization
Workshop on Search Engine OptimizationWorkshop on Search Engine Optimization
Workshop on Search Engine Optimization
Adarsh Patel
 
App indexing api
App indexing apiApp indexing api
App indexing api
Mohammad Tarek
 
Project Analysis - How to Start Project Develoment
Project Analysis - How to Start Project DevelomentProject Analysis - How to Start Project Develoment
Project Analysis - How to Start Project Develoment
Adarsh Patel
 
Optimizing apps for better performance extended
Optimizing apps for better performance extended Optimizing apps for better performance extended
Optimizing apps for better performance extended
Elif Boncuk
 
Hack'n Break Android Workshop
Hack'n Break Android WorkshopHack'n Break Android Workshop
Hack'n Break Android Workshop
Elif Boncuk
 
What's new in Android at I/O'16
What's new in Android at I/O'16What's new in Android at I/O'16
What's new in Android at I/O'16
Elif Boncuk
 
Overview of DroidCon UK 2015
Overview of DroidCon UK 2015 Overview of DroidCon UK 2015
Overview of DroidCon UK 2015
Elif Boncuk
 
Lecture 04. Mobile App Design
Lecture 04. Mobile App DesignLecture 04. Mobile App Design
Lecture 04. Mobile App Design
Maksym Davydov
 
Android development session 3 - layout
Android development   session 3 - layoutAndroid development   session 3 - layout
Android development session 3 - layout
Farabi Technology Middle East
 
Android development session 4 - Fragments
Android development   session 4 - FragmentsAndroid development   session 4 - Fragments
Android development session 4 - Fragments
Farabi Technology Middle East
 
Android Udacity Study group 1
Android Udacity Study group 1Android Udacity Study group 1
Android Udacity Study group 1
Aly Abdelkareem
 
Fundamental of android
Fundamental of androidFundamental of android
Fundamental of android
Adarsh Patel
 
Working better together designers & developers
Working better together   designers & developersWorking better together   designers & developers
Working better together designers & developers
Vitali Pekelis
 
Session #8 adding magic to your app
Session #8  adding magic to your appSession #8  adding magic to your app
Session #8 adding magic to your app
Vitali Pekelis
 
Management Innovation
Management Innovation Management Innovation
Management Innovation
Elif Boncuk
 

Viewers also liked (20)

Android Development Workshop
Android Development WorkshopAndroid Development Workshop
Android Development Workshop
 
project center in coimbatore
project center in coimbatoreproject center in coimbatore
project center in coimbatore
 
Android Development
Android DevelopmentAndroid Development
Android Development
 
Optimizing Apps for Better Performance
Optimizing Apps for Better PerformanceOptimizing Apps for Better Performance
Optimizing Apps for Better Performance
 
Workhsop on Logic Building for Programming
Workhsop on Logic Building for ProgrammingWorkhsop on Logic Building for Programming
Workhsop on Logic Building for Programming
 
Workshop on Search Engine Optimization
Workshop on Search Engine OptimizationWorkshop on Search Engine Optimization
Workshop on Search Engine Optimization
 
App indexing api
App indexing apiApp indexing api
App indexing api
 
Project Analysis - How to Start Project Develoment
Project Analysis - How to Start Project DevelomentProject Analysis - How to Start Project Develoment
Project Analysis - How to Start Project Develoment
 
Optimizing apps for better performance extended
Optimizing apps for better performance extended Optimizing apps for better performance extended
Optimizing apps for better performance extended
 
Hack'n Break Android Workshop
Hack'n Break Android WorkshopHack'n Break Android Workshop
Hack'n Break Android Workshop
 
What's new in Android at I/O'16
What's new in Android at I/O'16What's new in Android at I/O'16
What's new in Android at I/O'16
 
Overview of DroidCon UK 2015
Overview of DroidCon UK 2015 Overview of DroidCon UK 2015
Overview of DroidCon UK 2015
 
Lecture 04. Mobile App Design
Lecture 04. Mobile App DesignLecture 04. Mobile App Design
Lecture 04. Mobile App Design
 
Android development session 3 - layout
Android development   session 3 - layoutAndroid development   session 3 - layout
Android development session 3 - layout
 
Android development session 4 - Fragments
Android development   session 4 - FragmentsAndroid development   session 4 - Fragments
Android development session 4 - Fragments
 
Android Udacity Study group 1
Android Udacity Study group 1Android Udacity Study group 1
Android Udacity Study group 1
 
Fundamental of android
Fundamental of androidFundamental of android
Fundamental of android
 
Working better together designers & developers
Working better together   designers & developersWorking better together   designers & developers
Working better together designers & developers
 
Session #8 adding magic to your app
Session #8  adding magic to your appSession #8  adding magic to your app
Session #8 adding magic to your app
 
Management Innovation
Management Innovation Management Innovation
Management Innovation
 

Similar to Workshop Android for Java Developers

Introduction to Android Development.pptx
Introduction to Android Development.pptxIntroduction to Android Development.pptx
Introduction to Android Development.pptx
asmeerana605
 
[PBO] Pertemuan 12 - Pemrograman Android
[PBO] Pertemuan 12 - Pemrograman Android[PBO] Pertemuan 12 - Pemrograman Android
[PBO] Pertemuan 12 - Pemrograman Android
rizki adam kurniawan
 
Android Jumpstart Jfokus
Android Jumpstart JfokusAndroid Jumpstart Jfokus
Android Jumpstart Jfokus
Lars Vogel
 
Front-End Web Development
Front-End Web DevelopmentFront-End Web Development
Front-End Web Development
Yash Sati
 
Baparekraf Digital Talent Day: Monitoring dan Coaching Penerima Fasilitasi BD...
Baparekraf Digital Talent Day: Monitoring dan Coaching Penerima Fasilitasi BD...Baparekraf Digital Talent Day: Monitoring dan Coaching Penerima Fasilitasi BD...
Baparekraf Digital Talent Day: Monitoring dan Coaching Penerima Fasilitasi BD...
DicodingEvent
 
Unit I- ANDROID OVERVIEW.ppt
Unit I- ANDROID OVERVIEW.pptUnit I- ANDROID OVERVIEW.ppt
Unit I- ANDROID OVERVIEW.ppt
dineshkumar periyasamy
 
Android Workshop_1
Android Workshop_1Android Workshop_1
Android Workshop_1
Purvik Rana
 
Innovation Generation - The Mobile Meetup: Android Best Practices
Innovation Generation - The Mobile Meetup: Android Best PracticesInnovation Generation - The Mobile Meetup: Android Best Practices
Innovation Generation - The Mobile Meetup: Android Best Practices
Solstice Mobile Argentina
 
Sharing Knowladge - Mendix.pptx
Sharing Knowladge - Mendix.pptxSharing Knowladge - Mendix.pptx
Sharing Knowladge - Mendix.pptx
AdityaHikmatTsauqi1
 
Android Deep Dive
Android Deep DiveAndroid Deep Dive
Android Deep Dive
Marko Gargenta
 
hema ppt (2).pptx
hema ppt (2).pptxhema ppt (2).pptx
hema ppt (2).pptx
balasekaran5
 
Lecture 05. UI programming for Mobile Apps
Lecture 05. UI programming for Mobile AppsLecture 05. UI programming for Mobile Apps
Lecture 05. UI programming for Mobile Apps
Maksym Davydov
 
Android Tutorial For Beginners Part-1
Android Tutorial For Beginners Part-1Android Tutorial For Beginners Part-1
Android Tutorial For Beginners Part-1
Amit Saxena
 
Android Development Tutorial
Android Development TutorialAndroid Development Tutorial
Android Development Tutorial
Germán Bringas
 
Introduction to Visual Basic 6.0
Introduction to Visual Basic 6.0Introduction to Visual Basic 6.0
Introduction to Visual Basic 6.0
DivyaR219113
 
Introduction to Android Development
Introduction to Android DevelopmentIntroduction to Android Development
Introduction to Android Development
Prof. Erwin Globio
 
Notes Unit3.pptx
Notes Unit3.pptxNotes Unit3.pptx
Notes Unit3.pptx
MIT Autonomous Aurangabad
 
Android- Introduction for Beginners
Android- Introduction for BeginnersAndroid- Introduction for Beginners
Android- Introduction for Beginners
Tripti Tiwari
 
Android dev o_auth
Android dev o_authAndroid dev o_auth
Android dev o_auth
fantasy zheng
 
Java Is A Programming Dialect And Registering Stage Essay
Java Is A Programming Dialect And Registering Stage EssayJava Is A Programming Dialect And Registering Stage Essay
Java Is A Programming Dialect And Registering Stage Essay
Liz Sims
 

Similar to Workshop Android for Java Developers (20)

Introduction to Android Development.pptx
Introduction to Android Development.pptxIntroduction to Android Development.pptx
Introduction to Android Development.pptx
 
[PBO] Pertemuan 12 - Pemrograman Android
[PBO] Pertemuan 12 - Pemrograman Android[PBO] Pertemuan 12 - Pemrograman Android
[PBO] Pertemuan 12 - Pemrograman Android
 
Android Jumpstart Jfokus
Android Jumpstart JfokusAndroid Jumpstart Jfokus
Android Jumpstart Jfokus
 
Front-End Web Development
Front-End Web DevelopmentFront-End Web Development
Front-End Web Development
 
Baparekraf Digital Talent Day: Monitoring dan Coaching Penerima Fasilitasi BD...
Baparekraf Digital Talent Day: Monitoring dan Coaching Penerima Fasilitasi BD...Baparekraf Digital Talent Day: Monitoring dan Coaching Penerima Fasilitasi BD...
Baparekraf Digital Talent Day: Monitoring dan Coaching Penerima Fasilitasi BD...
 
Unit I- ANDROID OVERVIEW.ppt
Unit I- ANDROID OVERVIEW.pptUnit I- ANDROID OVERVIEW.ppt
Unit I- ANDROID OVERVIEW.ppt
 
Android Workshop_1
Android Workshop_1Android Workshop_1
Android Workshop_1
 
Innovation Generation - The Mobile Meetup: Android Best Practices
Innovation Generation - The Mobile Meetup: Android Best PracticesInnovation Generation - The Mobile Meetup: Android Best Practices
Innovation Generation - The Mobile Meetup: Android Best Practices
 
Sharing Knowladge - Mendix.pptx
Sharing Knowladge - Mendix.pptxSharing Knowladge - Mendix.pptx
Sharing Knowladge - Mendix.pptx
 
Android Deep Dive
Android Deep DiveAndroid Deep Dive
Android Deep Dive
 
hema ppt (2).pptx
hema ppt (2).pptxhema ppt (2).pptx
hema ppt (2).pptx
 
Lecture 05. UI programming for Mobile Apps
Lecture 05. UI programming for Mobile AppsLecture 05. UI programming for Mobile Apps
Lecture 05. UI programming for Mobile Apps
 
Android Tutorial For Beginners Part-1
Android Tutorial For Beginners Part-1Android Tutorial For Beginners Part-1
Android Tutorial For Beginners Part-1
 
Android Development Tutorial
Android Development TutorialAndroid Development Tutorial
Android Development Tutorial
 
Introduction to Visual Basic 6.0
Introduction to Visual Basic 6.0Introduction to Visual Basic 6.0
Introduction to Visual Basic 6.0
 
Introduction to Android Development
Introduction to Android DevelopmentIntroduction to Android Development
Introduction to Android Development
 
Notes Unit3.pptx
Notes Unit3.pptxNotes Unit3.pptx
Notes Unit3.pptx
 
Android- Introduction for Beginners
Android- Introduction for BeginnersAndroid- Introduction for Beginners
Android- Introduction for Beginners
 
Android dev o_auth
Android dev o_authAndroid dev o_auth
Android dev o_auth
 
Java Is A Programming Dialect And Registering Stage Essay
Java Is A Programming Dialect And Registering Stage EssayJava Is A Programming Dialect And Registering Stage Essay
Java Is A Programming Dialect And Registering Stage Essay
 

Recently uploaded

PCOS corelations and management through Ayurveda.
PCOS corelations and management through Ayurveda.PCOS corelations and management through Ayurveda.
PCOS corelations and management through Ayurveda.
Dr. Shivangi Singh Parihar
 
Digital Artefact 1 - Tiny Home Environmental Design
Digital Artefact 1 - Tiny Home Environmental DesignDigital Artefact 1 - Tiny Home Environmental Design
Digital Artefact 1 - Tiny Home Environmental Design
amberjdewit93
 
Smart-Money for SMC traders good time and ICT
Smart-Money for SMC traders good time and ICTSmart-Money for SMC traders good time and ICT
Smart-Money for SMC traders good time and ICT
simonomuemu
 
Chapter 4 - Islamic Financial Institutions in Malaysia.pptx
Chapter 4 - Islamic Financial Institutions in Malaysia.pptxChapter 4 - Islamic Financial Institutions in Malaysia.pptx
Chapter 4 - Islamic Financial Institutions in Malaysia.pptx
Mohd Adib Abd Muin, Senior Lecturer at Universiti Utara Malaysia
 
BÀI TẬP BỔ TRỢ TIẾNG ANH 8 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2023-2024 (CÓ FI...
BÀI TẬP BỔ TRỢ TIẾNG ANH 8 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2023-2024 (CÓ FI...BÀI TẬP BỔ TRỢ TIẾNG ANH 8 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2023-2024 (CÓ FI...
BÀI TẬP BỔ TRỢ TIẾNG ANH 8 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2023-2024 (CÓ FI...
Nguyen Thanh Tu Collection
 
Main Java[All of the Base Concepts}.docx
Main Java[All of the Base Concepts}.docxMain Java[All of the Base Concepts}.docx
Main Java[All of the Base Concepts}.docx
adhitya5119
 
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdfবাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
eBook.com.bd (প্রয়োজনীয় বাংলা বই)
 
The basics of sentences session 5pptx.pptx
The basics of sentences session 5pptx.pptxThe basics of sentences session 5pptx.pptx
The basics of sentences session 5pptx.pptx
heathfieldcps1
 
A Survey of Techniques for Maximizing LLM Performance.pptx
A Survey of Techniques for Maximizing LLM Performance.pptxA Survey of Techniques for Maximizing LLM Performance.pptx
A Survey of Techniques for Maximizing LLM Performance.pptx
thanhdowork
 
Introduction to AI for Nonprofits with Tapp Network
Introduction to AI for Nonprofits with Tapp NetworkIntroduction to AI for Nonprofits with Tapp Network
Introduction to AI for Nonprofits with Tapp Network
TechSoup
 
Your Skill Boost Masterclass: Strategies for Effective Upskilling
Your Skill Boost Masterclass: Strategies for Effective UpskillingYour Skill Boost Masterclass: Strategies for Effective Upskilling
Your Skill Boost Masterclass: Strategies for Effective Upskilling
Excellence Foundation for South Sudan
 
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...
PECB
 
writing about opinions about Australia the movie
writing about opinions about Australia the moviewriting about opinions about Australia the movie
writing about opinions about Australia the movie
Nicholas Montgomery
 
Pollock and Snow "DEIA in the Scholarly Landscape, Session One: Setting Expec...
Pollock and Snow "DEIA in the Scholarly Landscape, Session One: Setting Expec...Pollock and Snow "DEIA in the Scholarly Landscape, Session One: Setting Expec...
Pollock and Snow "DEIA in the Scholarly Landscape, Session One: Setting Expec...
National Information Standards Organization (NISO)
 
PIMS Job Advertisement 2024.pdf Islamabad
PIMS Job Advertisement 2024.pdf IslamabadPIMS Job Advertisement 2024.pdf Islamabad
PIMS Job Advertisement 2024.pdf Islamabad
AyyanKhan40
 
The simplified electron and muon model, Oscillating Spacetime: The Foundation...
The simplified electron and muon model, Oscillating Spacetime: The Foundation...The simplified electron and muon model, Oscillating Spacetime: The Foundation...
The simplified electron and muon model, Oscillating Spacetime: The Foundation...
RitikBhardwaj56
 
CACJapan - GROUP Presentation 1- Wk 4.pdf
CACJapan - GROUP Presentation 1- Wk 4.pdfCACJapan - GROUP Presentation 1- Wk 4.pdf
CACJapan - GROUP Presentation 1- Wk 4.pdf
camakaiclarkmusic
 
DRUGS AND ITS classification slide share
DRUGS AND ITS classification slide shareDRUGS AND ITS classification slide share
DRUGS AND ITS classification slide share
taiba qazi
 
Advanced Java[Extra Concepts, Not Difficult].docx
Advanced Java[Extra Concepts, Not Difficult].docxAdvanced Java[Extra Concepts, Not Difficult].docx
Advanced Java[Extra Concepts, Not Difficult].docx
adhitya5119
 
Hindi varnamala | hindi alphabet PPT.pdf
Hindi varnamala | hindi alphabet PPT.pdfHindi varnamala | hindi alphabet PPT.pdf
Hindi varnamala | hindi alphabet PPT.pdf
Dr. Mulla Adam Ali
 

Recently uploaded (20)

PCOS corelations and management through Ayurveda.
PCOS corelations and management through Ayurveda.PCOS corelations and management through Ayurveda.
PCOS corelations and management through Ayurveda.
 
Digital Artefact 1 - Tiny Home Environmental Design
Digital Artefact 1 - Tiny Home Environmental DesignDigital Artefact 1 - Tiny Home Environmental Design
Digital Artefact 1 - Tiny Home Environmental Design
 
Smart-Money for SMC traders good time and ICT
Smart-Money for SMC traders good time and ICTSmart-Money for SMC traders good time and ICT
Smart-Money for SMC traders good time and ICT
 
Chapter 4 - Islamic Financial Institutions in Malaysia.pptx
Chapter 4 - Islamic Financial Institutions in Malaysia.pptxChapter 4 - Islamic Financial Institutions in Malaysia.pptx
Chapter 4 - Islamic Financial Institutions in Malaysia.pptx
 
BÀI TẬP BỔ TRỢ TIẾNG ANH 8 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2023-2024 (CÓ FI...
BÀI TẬP BỔ TRỢ TIẾNG ANH 8 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2023-2024 (CÓ FI...BÀI TẬP BỔ TRỢ TIẾNG ANH 8 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2023-2024 (CÓ FI...
BÀI TẬP BỔ TRỢ TIẾNG ANH 8 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2023-2024 (CÓ FI...
 
Main Java[All of the Base Concepts}.docx
Main Java[All of the Base Concepts}.docxMain Java[All of the Base Concepts}.docx
Main Java[All of the Base Concepts}.docx
 
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdfবাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
 
The basics of sentences session 5pptx.pptx
The basics of sentences session 5pptx.pptxThe basics of sentences session 5pptx.pptx
The basics of sentences session 5pptx.pptx
 
A Survey of Techniques for Maximizing LLM Performance.pptx
A Survey of Techniques for Maximizing LLM Performance.pptxA Survey of Techniques for Maximizing LLM Performance.pptx
A Survey of Techniques for Maximizing LLM Performance.pptx
 
Introduction to AI for Nonprofits with Tapp Network
Introduction to AI for Nonprofits with Tapp NetworkIntroduction to AI for Nonprofits with Tapp Network
Introduction to AI for Nonprofits with Tapp Network
 
Your Skill Boost Masterclass: Strategies for Effective Upskilling
Your Skill Boost Masterclass: Strategies for Effective UpskillingYour Skill Boost Masterclass: Strategies for Effective Upskilling
Your Skill Boost Masterclass: Strategies for Effective Upskilling
 
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...
 
writing about opinions about Australia the movie
writing about opinions about Australia the moviewriting about opinions about Australia the movie
writing about opinions about Australia the movie
 
Pollock and Snow "DEIA in the Scholarly Landscape, Session One: Setting Expec...
Pollock and Snow "DEIA in the Scholarly Landscape, Session One: Setting Expec...Pollock and Snow "DEIA in the Scholarly Landscape, Session One: Setting Expec...
Pollock and Snow "DEIA in the Scholarly Landscape, Session One: Setting Expec...
 
PIMS Job Advertisement 2024.pdf Islamabad
PIMS Job Advertisement 2024.pdf IslamabadPIMS Job Advertisement 2024.pdf Islamabad
PIMS Job Advertisement 2024.pdf Islamabad
 
The simplified electron and muon model, Oscillating Spacetime: The Foundation...
The simplified electron and muon model, Oscillating Spacetime: The Foundation...The simplified electron and muon model, Oscillating Spacetime: The Foundation...
The simplified electron and muon model, Oscillating Spacetime: The Foundation...
 
CACJapan - GROUP Presentation 1- Wk 4.pdf
CACJapan - GROUP Presentation 1- Wk 4.pdfCACJapan - GROUP Presentation 1- Wk 4.pdf
CACJapan - GROUP Presentation 1- Wk 4.pdf
 
DRUGS AND ITS classification slide share
DRUGS AND ITS classification slide shareDRUGS AND ITS classification slide share
DRUGS AND ITS classification slide share
 
Advanced Java[Extra Concepts, Not Difficult].docx
Advanced Java[Extra Concepts, Not Difficult].docxAdvanced Java[Extra Concepts, Not Difficult].docx
Advanced Java[Extra Concepts, Not Difficult].docx
 
Hindi varnamala | hindi alphabet PPT.pdf
Hindi varnamala | hindi alphabet PPT.pdfHindi varnamala | hindi alphabet PPT.pdf
Hindi varnamala | hindi alphabet PPT.pdf
 

Workshop Android for Java Developers

  • 1. Android Development for Java Developers Michael Hantler FullStack Developers Israel April 24th 2014 Hosted by:
  • 2. WHO AM I? Working as a consultant in Android Development @ Tikal Knowledge. Extensive work in mobile HTML5-hybrid applications Worked for leading mobile security companies on Android/Mobile applications. Contact: michael@tikalk.com
  • 3. Michael Hantler, Lead Android Architect over 2 years of Android Specific Development { }
  • 5. We help companies build, deliver, deploy, manage and optimize their products.
  • 8. Prerequisite Knowledge • Java Development (basic understanding of dev environments and UI component implementations) Prerequisite Installs • Eclipse • ADT plugin for Eclipse • Android SDK with at least version 4.3
  • 10. Android at a Glance Short History of Android
  • 11. Android at a Glance Android Software Stacks
  • 12. Android at a Glance Development Tools
  • 13. Android at a Glance Google’s Development References and Tools Package References Development Tools Building Your First App Developer Blog Sample Apps (download through SDK manager)
  • 14. Android at a Glance Hello World example (also covering Project structure/creation/debuging/DDMS/Manifest)
  • 15. Android UI via XML Utilization • UI can be designed for one or many screens using XML parameters and graphical previews using Android Developer Toolkit WYSIWYG editor. • XMLs are then loaded dynamically in Java components and can be accessed/manipulated on the Java level. Usefulness • Offers similar development to HTML and JavaScript paradigm • Easily generate UI assets in WYSIWYG • Naming conventions allow to design XML for specific screen sizes, orientations, Android SDK versions, languages text
  • 17. Android UI via XML XML layout example (from Hello World)
  • 18. Activities and Fragments Activities • An “application component that provides a screen with which users can interact in order to do something, such as dial the phone, take a photo, send an email, or view a map.” - Activities • Usually tied to an xml layout that constitutes its ContentView Fragments • Only added in Android 3.0.xx in order to deal with tablets, but now available with backwards compatibility using Support Library • Different concept from Activities, now need to think about aspects of each screen and not just the screen themselves in order to offer responsive design for multiple screens text
  • 21. Intents Description • “An intent is an abstract description of an operation to be performed.” – Intent Reference • Intents offer a runtime binding between Activities and Applications allowing them to be added to the different process stacks. Example (Explicit Intent, activities need to be added to manifest) Intent intent = new Intent(this, DisplayMessageActivity.class); intent.putExtra(EXTRA_ACTION, “warning”); this.startActivity(intent); text
  • 22. Code sample after next topic
  • 23. Views “This class represents the basic building block for user interface components. A View occupies a rectangular area on the screen and is responsible for drawing and event handling. View is the base class for widgets, which are used to create interactive UI components (buttons, text fields, etc.). The ViewGroup subclass is the base class for layouts, which are invisible containers that hold other Views (or other ViewGroups) and define their layout properties.” text
  • 24. Commonly Used Views Definitions from developer.android.com • TextView - Displays text to the user and optionally allows them to edit it. A TextView is a complete text editor, however the basic class is configured to not allow editing… • EditText - EditText is a thin veneer over TextView that configures itself to be editable. • Button - Represents a push-button widget. Push-buttons can be pressed, or clicked, by the user to perform an action. • ImageView - Displays an arbitrary image, such as an icon. The ImageView class can load images from various sources (such as resources or content providers), takes care of computing its measurement from the image so that it can be used in any layout manager, and provides various display options such as scaling and tinting. text
  • 25. Commonly Used Views (continued) Definitions from developer.android.com • ProgressBar - Visual indicator of progress in some operation… • CheckBox - A checkbox is a specific type of two-states button that can be either checked or unchecked. • RadioButton - A radio button is a two-states button that can be either checked or unchecked…contrary to a CheckBox, a radio button cannot be unchecked by the user once checked. • WebView - A View that displays web pages. This class is the basis upon which you can roll your own web browser or simply display some online content within your Activity. It uses the WebKit rendering engine to display web pages and includes methods to navigate forward and backward through a history, zoom in and out, perform text searches and more. text
  • 26. Email Fragment/Activity Example (with two buttons instead of list)
  • 27. ListViews and Adapters ListView is a view group that displays a list of scrollable items. The list items are automatically inserted to the list using an Adapter that pulls content from a source such as an array or database query and converts each item result into a view that's placed into the list. text
  • 29. Dialogs A dialog is a small window that prompts the user to make a decision or enter additional information. A dialog does not fill the screen and is normally used for modal events that require users to take an action before they can proceed. text
  • 30. Toasts A toast provides simple feedback about an operation in a small popup. It only fills the amount of space required for the message and the current activity remains visible and interactive. For example, navigating away from an email before you send it triggers a "Draft saved" toast to let you know that you can continue editing later. Toasts automatically disappear after a timeout. text
  • 32. Support Library The Android Support Library package is a set of code libraries that provide backward-compatible versions of Android framework APIs as well as features that are only available through the library APIs. text Including features like: • Fragments • ViewPager • DrawerLayout • ActionBar • Many more
  • 33. Email Fragment/Activity Example (add Support Library and ActionBar)
  • 34. Google Play Services and Google Play Game Services Google Play services gives you the freedom to use the newest APIs for popular Google services without worrying about device support. Updates to Google Play services are distributed automatically by the Google Play Store and new versions of the client library are delivered through the Android SDK Manager. This makes it easy for you to focus on what's important: your users' experience. Include Services like: • Geofencing • Google Wallet • Game Leader Boards • Cloud Data • Much Much More text