SlideShare a Scribd company logo
How Android API’s
evolved
Powered by

0
jueves, 23 de enero de 14
Index
+ Who i am?
+ The problem
+
+ Demo
+ Resumen
+Q&A
1
jueves, 23 de enero de 14
Who i am?

2
jueves, 23 de enero de 14
Enrique Díaz
GDG AndroidTitlan founder
Android Hacker

3
jueves, 23 de enero de 14
The problem

4
jueves, 23 de enero de 14
The problem

5
jueves, 23 de enero de 14
Aha!

6
jueves, 23 de enero de 14
How we implement
HomeScreen-like
functionality?

7
jueves, 23 de enero de 14
ViewFlipper+ GestureDetector
+Animations
Lots of things to do here!

0. Create an object which extends from ViewFlipper.
1. In order to recognize gestures, we need an object which
extends GestureDetector.
2. Also we need gestureListener interface to recognize when
user has touched the screen.
3. From each XML file, we define 4 animations( left intro, left
outro, right intro, right outro ).
4. Create a class which extends from SimpleOnGestureListener,
then add business logic to start an animation based on fling
direction.
5. Last, we define a ViewFlipper element from XML which
contains layouts that gets animated based in business logic.
jueves, 23 de enero de 14

8
Demo

9
jueves, 23 de enero de 14
Yes, it hurts

Worse, it’s not
what i want
ed

10
jueves, 23 de enero de 14
Download the code
here:
https://github.com/nRike/
Swipe-with-ViewFlip--.git

11
jueves, 23 de enero de 14
How we implement
HomeScreen-like
functionality?

12
jueves, 23 de enero de 14
PageAdapter + ViewPager
Lots of fun to enjoy here!

0. We create a class which extends PageAdapter, then
assign the amount of existing elements to swipe and inflate
them.
1. Create an element in XML which extends from
android.support.v4.view.ViewPager.
2. Assign our PageAdapter to a ViewPager object in our
main Activity.
3. We create each resource through XML.
4. There’s no step 4.

13
jueves, 23 de enero de 14
Demo

14
jueves, 23 de enero de 14
Yes, it doesn’t
hurts

it is what i
wanted!

15
jueves, 23 de enero de 14
Download the code
here:
https://github.com/nRike/
SimpleViewPager.git

16
jueves, 23 de enero de 14
Q&A

17
jueves, 23 de enero de 14
Resume
0. Use the latest API
level, because there’s
lots of awesome API’s
to write less code and
DO MORE.
1. Simple is better.
2. Think users first and
last.
3. Keep calm and
Gagnam Style
jueves, 23 de enero de 14

18
How Android API’s
evolved

Thank you!

19
jueves, 23 de enero de 14

More Related Content

Similar to How Android API's evolved: Viewflipper vs ViewPager

Selenium to Appium - how hard can it be (SauceCon).
Selenium to Appium - how hard can it be (SauceCon).Selenium to Appium - how hard can it be (SauceCon).
Selenium to Appium - how hard can it be (SauceCon).
snevesbarros
 
From Selenium to Appium: How Hard Can It Be? by Sergio Neves Barros
From Selenium to Appium: How Hard Can It Be? by Sergio Neves BarrosFrom Selenium to Appium: How Hard Can It Be? by Sergio Neves Barros
From Selenium to Appium: How Hard Can It Be? by Sergio Neves Barros
Sauce Labs
 
Developing PWAs and Mobile Apps with Ionic, Angular, and JHipster - Devoxx Mo...
Developing PWAs and Mobile Apps with Ionic, Angular, and JHipster - Devoxx Mo...Developing PWAs and Mobile Apps with Ionic, Angular, and JHipster - Devoxx Mo...
Developing PWAs and Mobile Apps with Ionic, Angular, and JHipster - Devoxx Mo...
Matt Raible
 
Mobile App Feature Configuration and A/B Experiments
Mobile App Feature Configuration and A/B ExperimentsMobile App Feature Configuration and A/B Experiments
Mobile App Feature Configuration and A/B Experiments
lacyrhoades
 
Lecture #3 activities and intents
Lecture #3  activities and intentsLecture #3  activities and intents
Lecture #3 activities and intents
Vitali Pekelis
 
Lecture 12 - Maps, AR_VR_aaaaHardware.pptx
Lecture 12 - Maps, AR_VR_aaaaHardware.pptxLecture 12 - Maps, AR_VR_aaaaHardware.pptx
Lecture 12 - Maps, AR_VR_aaaaHardware.pptx
NgLQun
 
Thane Brimhall So You’ve Built It… Now What?
Thane Brimhall So You’ve Built It… Now What?Thane Brimhall So You’ve Built It… Now What?
Thane Brimhall So You’ve Built It… Now What?
Amazon Web Services
 
FITC 2013 - The Technical Learning Curve
FITC 2013 - The Technical Learning CurveFITC 2013 - The Technical Learning Curve
FITC 2013 - The Technical Learning Curve
Little Miss Robot
 
Modularization Kaidee App and new features roadmap for 2019
Modularization Kaidee App and new features roadmap for 2019Modularization Kaidee App and new features roadmap for 2019
Modularization Kaidee App and new features roadmap for 2019
Abdulrohim sama
 
Play framework - Bristol Java meetup
Play framework - Bristol Java meetupPlay framework - Bristol Java meetup
Play framework - Bristol Java meetup
Robin Warren
 
Appium Meetup #2 - Mobile Web Automation Introduction
Appium Meetup #2 - Mobile Web Automation IntroductionAppium Meetup #2 - Mobile Web Automation Introduction
Appium Meetup #2 - Mobile Web Automation Introduction
snevesbarros
 
Tools/Processes for serious android app development
Tools/Processes for serious android app developmentTools/Processes for serious android app development
Tools/Processes for serious android app development
Gaurav Lochan
 
Slide Deck - Shift Left Beyond App Performance Improvement at Gojek_.pptx
Slide Deck - Shift Left Beyond App Performance Improvement at Gojek_.pptxSlide Deck - Shift Left Beyond App Performance Improvement at Gojek_.pptx
Slide Deck - Shift Left Beyond App Performance Improvement at Gojek_.pptx
raditya gumay
 
Conquering the code in softimage
Conquering the code in softimageConquering the code in softimage
Conquering the code in softimageJared Glass
 
Desenvolvendo para Android com componentes Open Source
Desenvolvendo para Android com componentes Open SourceDesenvolvendo para Android com componentes Open Source
Desenvolvendo para Android com componentes Open Source
Adriel Café
 
How to create high scalable JavaScript apps for Java Portals
How to create high scalable JavaScript apps for Java PortalsHow to create high scalable JavaScript apps for Java Portals
How to create high scalable JavaScript apps for Java Portals
Zeno Rocha
 
App stores + cordova... get excited!
App stores + cordova... get excited!App stores + cordova... get excited!
App stores + cordova... get excited!
Drake Emko
 
Introduction to Android Develpment
Introduction to Android DevelpmentIntroduction to Android Develpment
Introduction to Android Develpment
NikhilPawar932560
 
Ionic creator
Ionic creatorIonic creator
Ionic creator
Xavier Lozinguez
 
ProTips DroidCon Paris 2013
ProTips DroidCon Paris 2013ProTips DroidCon Paris 2013
ProTips DroidCon Paris 2013
Mathias Seguy
 

Similar to How Android API's evolved: Viewflipper vs ViewPager (20)

Selenium to Appium - how hard can it be (SauceCon).
Selenium to Appium - how hard can it be (SauceCon).Selenium to Appium - how hard can it be (SauceCon).
Selenium to Appium - how hard can it be (SauceCon).
 
From Selenium to Appium: How Hard Can It Be? by Sergio Neves Barros
From Selenium to Appium: How Hard Can It Be? by Sergio Neves BarrosFrom Selenium to Appium: How Hard Can It Be? by Sergio Neves Barros
From Selenium to Appium: How Hard Can It Be? by Sergio Neves Barros
 
Developing PWAs and Mobile Apps with Ionic, Angular, and JHipster - Devoxx Mo...
Developing PWAs and Mobile Apps with Ionic, Angular, and JHipster - Devoxx Mo...Developing PWAs and Mobile Apps with Ionic, Angular, and JHipster - Devoxx Mo...
Developing PWAs and Mobile Apps with Ionic, Angular, and JHipster - Devoxx Mo...
 
Mobile App Feature Configuration and A/B Experiments
Mobile App Feature Configuration and A/B ExperimentsMobile App Feature Configuration and A/B Experiments
Mobile App Feature Configuration and A/B Experiments
 
Lecture #3 activities and intents
Lecture #3  activities and intentsLecture #3  activities and intents
Lecture #3 activities and intents
 
Lecture 12 - Maps, AR_VR_aaaaHardware.pptx
Lecture 12 - Maps, AR_VR_aaaaHardware.pptxLecture 12 - Maps, AR_VR_aaaaHardware.pptx
Lecture 12 - Maps, AR_VR_aaaaHardware.pptx
 
Thane Brimhall So You’ve Built It… Now What?
Thane Brimhall So You’ve Built It… Now What?Thane Brimhall So You’ve Built It… Now What?
Thane Brimhall So You’ve Built It… Now What?
 
FITC 2013 - The Technical Learning Curve
FITC 2013 - The Technical Learning CurveFITC 2013 - The Technical Learning Curve
FITC 2013 - The Technical Learning Curve
 
Modularization Kaidee App and new features roadmap for 2019
Modularization Kaidee App and new features roadmap for 2019Modularization Kaidee App and new features roadmap for 2019
Modularization Kaidee App and new features roadmap for 2019
 
Play framework - Bristol Java meetup
Play framework - Bristol Java meetupPlay framework - Bristol Java meetup
Play framework - Bristol Java meetup
 
Appium Meetup #2 - Mobile Web Automation Introduction
Appium Meetup #2 - Mobile Web Automation IntroductionAppium Meetup #2 - Mobile Web Automation Introduction
Appium Meetup #2 - Mobile Web Automation Introduction
 
Tools/Processes for serious android app development
Tools/Processes for serious android app developmentTools/Processes for serious android app development
Tools/Processes for serious android app development
 
Slide Deck - Shift Left Beyond App Performance Improvement at Gojek_.pptx
Slide Deck - Shift Left Beyond App Performance Improvement at Gojek_.pptxSlide Deck - Shift Left Beyond App Performance Improvement at Gojek_.pptx
Slide Deck - Shift Left Beyond App Performance Improvement at Gojek_.pptx
 
Conquering the code in softimage
Conquering the code in softimageConquering the code in softimage
Conquering the code in softimage
 
Desenvolvendo para Android com componentes Open Source
Desenvolvendo para Android com componentes Open SourceDesenvolvendo para Android com componentes Open Source
Desenvolvendo para Android com componentes Open Source
 
How to create high scalable JavaScript apps for Java Portals
How to create high scalable JavaScript apps for Java PortalsHow to create high scalable JavaScript apps for Java Portals
How to create high scalable JavaScript apps for Java Portals
 
App stores + cordova... get excited!
App stores + cordova... get excited!App stores + cordova... get excited!
App stores + cordova... get excited!
 
Introduction to Android Develpment
Introduction to Android DevelpmentIntroduction to Android Develpment
Introduction to Android Develpment
 
Ionic creator
Ionic creatorIonic creator
Ionic creator
 
ProTips DroidCon Paris 2013
ProTips DroidCon Paris 2013ProTips DroidCon Paris 2013
ProTips DroidCon Paris 2013
 

More from Enrique Diaz

Cómo convertirse en experto
Cómo convertirse en expertoCómo convertirse en experto
Cómo convertirse en experto
Enrique Diaz
 
Android best practices
Android best practicesAndroid best practices
Android best practices
Enrique Diaz
 
¿Cómo implementar Admob en mi app Android?
¿Cómo implementar Admob en mi app Android?¿Cómo implementar Admob en mi app Android?
¿Cómo implementar Admob en mi app Android?
Enrique Diaz
 
The future of mobile apps: Changing the world without staying off the bed
The future of mobile apps: Changing the world without staying off the bedThe future of mobile apps: Changing the world without staying off the bed
The future of mobile apps: Changing the world without staying off the bed
Enrique Diaz
 
Android Basics
Android BasicsAndroid Basics
Android Basics
Enrique Diaz
 
Fragments, all you need to know for create multi-device apps.
Fragments, all you need to know for create multi-device apps.Fragments, all you need to know for create multi-device apps.
Fragments, all you need to know for create multi-device apps.
Enrique Diaz
 

More from Enrique Diaz (7)

Cómo convertirse en experto
Cómo convertirse en expertoCómo convertirse en experto
Cómo convertirse en experto
 
Android best practices
Android best practicesAndroid best practices
Android best practices
 
¿Cómo implementar Admob en mi app Android?
¿Cómo implementar Admob en mi app Android?¿Cómo implementar Admob en mi app Android?
¿Cómo implementar Admob en mi app Android?
 
Campus
Campus Campus
Campus
 
The future of mobile apps: Changing the world without staying off the bed
The future of mobile apps: Changing the world without staying off the bedThe future of mobile apps: Changing the world without staying off the bed
The future of mobile apps: Changing the world without staying off the bed
 
Android Basics
Android BasicsAndroid Basics
Android Basics
 
Fragments, all you need to know for create multi-device apps.
Fragments, all you need to know for create multi-device apps.Fragments, all you need to know for create multi-device apps.
Fragments, all you need to know for create multi-device apps.
 

Recently uploaded

FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance
 
By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
Pierluigi Pugliese
 
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AIEnchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Vladimir Iglovikov, Ph.D.
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
Matthew Sinclair
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
James Anderson
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
Neo4j
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
Neo4j
 
Large Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial ApplicationsLarge Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial Applications
Rohit Gautam
 
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofszkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
Alex Pruden
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
mikeeftimakis1
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
Aftab Hussain
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
Kumud Singh
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
KAMESHS29
 
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Nexer Digital
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Albert Hoitingh
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
Alan Dix
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems S.M.S.A.
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
Quotidiano Piemontese
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
DianaGray10
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
Kari Kakkonen
 

Recently uploaded (20)

FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
 
By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
 
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AIEnchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
 
Large Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial ApplicationsLarge Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial Applications
 
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofszkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
 
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
 

How Android API's evolved: Viewflipper vs ViewPager