SlideShare uma empresa Scribd logo
1 de 35
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

Mais conteúdo relacionado

Mais procurados

Selenium web driver | java
Selenium web driver | javaSelenium web driver | java
Selenium web driver | javaRajesh Kumar
 
Packages and inbuilt classes of java
Packages and inbuilt classes of javaPackages and inbuilt classes of java
Packages and inbuilt classes of javakamal kotecha
 
Lecture - 1 introduction to java
Lecture - 1 introduction to javaLecture - 1 introduction to java
Lecture - 1 introduction to javamanish kumar
 
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 transferAnkit Desai
 
Pi j4.1 packages
Pi j4.1 packagesPi j4.1 packages
Pi j4.1 packagesmcollison
 
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 - Exercisesagorolabs
 
Hibernate Training Session1
Hibernate Training Session1Hibernate Training Session1
Hibernate Training Session1Asad Khan
 
Object Oriented Programming in PHP
Object Oriented Programming in PHPObject Oriented Programming in PHP
Object Oriented Programming in PHPLorna Mitchell
 
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 2Sagar Verma
 

Mais procurados (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
 

Destaque

Android Development Workshop
Android Development WorkshopAndroid Development Workshop
Android Development WorkshopPeter Robinett
 
Android Development
Android DevelopmentAndroid Development
Android DevelopmentDaksh Semwal
 
Optimizing Apps for Better Performance
Optimizing Apps for Better PerformanceOptimizing Apps for Better Performance
Optimizing Apps for Better PerformanceElif Boncuk
 
Workhsop on Logic Building for Programming
Workhsop on Logic Building for ProgrammingWorkhsop on Logic Building for Programming
Workhsop on Logic Building for ProgrammingAdarsh Patel
 
Workshop on Search Engine Optimization
Workshop on Search Engine OptimizationWorkshop on Search Engine Optimization
Workshop on Search Engine OptimizationAdarsh Patel
 
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 DevelomentAdarsh 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 WorkshopElif 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'16Elif 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 DesignMaksym Davydov
 
Android Udacity Study group 1
Android Udacity Study group 1Android Udacity Study group 1
Android Udacity Study group 1Aly Abdelkareem
 
Fundamental of android
Fundamental of androidFundamental of android
Fundamental of androidAdarsh Patel
 
Working better together designers & developers
Working better together   designers & developersWorking better together   designers & developers
Working better together designers & developersVitali 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 appVitali Pekelis
 
Management Innovation
Management Innovation Management Innovation
Management Innovation Elif Boncuk
 

Destaque (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
 

Semelhante a Workshop Android for Java Developers

Introduction to Android Development.pptx
Introduction to Android Development.pptxIntroduction to Android Development.pptx
Introduction to Android Development.pptxasmeerana605
 
[PBO] Pertemuan 12 - Pemrograman Android
[PBO] Pertemuan 12 - Pemrograman Android[PBO] Pertemuan 12 - Pemrograman Android
[PBO] Pertemuan 12 - Pemrograman Androidrizki adam kurniawan
 
Android Jumpstart Jfokus
Android Jumpstart JfokusAndroid Jumpstart Jfokus
Android Jumpstart JfokusLars Vogel
 
Front-End Web Development
Front-End Web DevelopmentFront-End Web Development
Front-End Web DevelopmentYash 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
 
Android Workshop_1
Android Workshop_1Android Workshop_1
Android Workshop_1Purvik 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 PracticesSolstice Mobile Argentina
 
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 AppsMaksym Davydov
 
Android Tutorial For Beginners Part-1
Android Tutorial For Beginners Part-1Android Tutorial For Beginners Part-1
Android Tutorial For Beginners Part-1Amit Saxena
 
Android Development Tutorial
Android Development TutorialAndroid Development Tutorial
Android Development TutorialGermán Bringas
 
Introduction to Visual Basic 6.0
Introduction to Visual Basic 6.0Introduction to Visual Basic 6.0
Introduction to Visual Basic 6.0DivyaR219113
 
Introduction to Android Development
Introduction to Android DevelopmentIntroduction to Android Development
Introduction to Android DevelopmentProf. Erwin Globio
 
Android- Introduction for Beginners
Android- Introduction for BeginnersAndroid- Introduction for Beginners
Android- Introduction for BeginnersTripti Tiwari
 
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 EssayLiz Sims
 

Semelhante a 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
 

Último

General AI for Medical Educators April 2024
General AI for Medical Educators April 2024General AI for Medical Educators April 2024
General AI for Medical Educators April 2024Janet Corral
 
Sanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfSanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfsanyamsingh5019
 
Disha NEET Physics Guide for classes 11 and 12.pdf
Disha NEET Physics Guide for classes 11 and 12.pdfDisha NEET Physics Guide for classes 11 and 12.pdf
Disha NEET Physics Guide for classes 11 and 12.pdfchloefrazer622
 
Arihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdfArihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdfchloefrazer622
 
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdfSoniaTolstoy
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)eniolaolutunde
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsTechSoup
 
Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..Disha Kariya
 
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in DelhiRussian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhikauryashika82
 
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxiammrhaywood
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfagholdier
 
Class 11th Physics NEET formula sheet pdf
Class 11th Physics NEET formula sheet pdfClass 11th Physics NEET formula sheet pdf
Class 11th Physics NEET formula sheet pdfAyushMahapatra5
 
IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...
IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...
IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...PsychoTech Services
 
Measures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDMeasures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDThiyagu K
 
Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104misteraugie
 
Unit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxUnit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxVishalSingh1417
 
Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactdawncurless
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformChameera Dedduwage
 

Último (20)

General AI for Medical Educators April 2024
General AI for Medical Educators April 2024General AI for Medical Educators April 2024
General AI for Medical Educators April 2024
 
Sanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfSanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdf
 
Disha NEET Physics Guide for classes 11 and 12.pdf
Disha NEET Physics Guide for classes 11 and 12.pdfDisha NEET Physics Guide for classes 11 and 12.pdf
Disha NEET Physics Guide for classes 11 and 12.pdf
 
Arihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdfArihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdf
 
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 
Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..
 
Advance Mobile Application Development class 07
Advance Mobile Application Development class 07Advance Mobile Application Development class 07
Advance Mobile Application Development class 07
 
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in DelhiRussian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
 
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdf
 
Class 11th Physics NEET formula sheet pdf
Class 11th Physics NEET formula sheet pdfClass 11th Physics NEET formula sheet pdf
Class 11th Physics NEET formula sheet pdf
 
IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...
IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...
IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...
 
Measures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDMeasures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SD
 
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
 
Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104
 
Unit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxUnit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptx
 
Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impact
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy Reform
 

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