Just Enough Software Development in Times of Rapid ChangeTed M. Young
How do you handle relying on useful, yet immature, open source projects? This presentation covers a couple of cases where modularity, hexagonal architecture, anti-corruption layers, and understanding of loose coupling can help when relying on fast-moving technology.
Talk given at the Software Development & Evolution Conference in Winnipeg, Manitoba, Canada on November 3rd, 2015.
Just Enough Software Development in Times of Rapid ChangeTed M. Young
How do you handle relying on useful, yet immature, open source projects? This presentation covers a couple of cases where modularity, hexagonal architecture, anti-corruption layers, and understanding of loose coupling can help when relying on fast-moving technology.
Talk given at the Software Development & Evolution Conference in Winnipeg, Manitoba, Canada on November 3rd, 2015.
Becoming an Advanced Groovy Developer Spring One 2gx 2015Tom Henricksen
Using Groovy is easy and fun. After getting your hands dirty with a few basics it is good to go deeper. In this session we will cover Design Patterns in Groovy, compilation configuration, mixing Java and Groovy, and calling other languages from Groovy. We will show you how to call Scala and Clojure from Groovy. So get ready to take it to the next level.
Frontend Development vs Backend Development | Detailed ComparisonMariya James
Frontend Development vs Backend Development is a topic worth discussing. These two are equally important for web development. Know the advantages and differences between these web development modules.
If your project has working features, a living design system, quality assurance and a code style guide, there is nothing that you will learn in this talk. Maybe.
Having 2+ years of experience in the fields of Web development and User interface Designing and Development. Excellent proven Experience in Handling project and delivery.
Designing for the web changed from an artisan template design to a more modern LEGO builder approach. Creating a personalized library of UI&UX bricks with intelligent behaviors helps an organization to build a real product. Reusable components can be combined in more complex structures, widgets and templates thus providing higher fidelity to design and decreasing the time to market. Through real project examples, this talk will introduce the design methodology and process to translate a UX model into a set of components, and the recommended development practices to implement.
Fearless Internationalization and Localization Across the NationsSiena Aguayo
Many people are intimidated by localization (l10n) and internationalization (i18n) but they don’t have to be—Android provides many tools out of the box to aide you in global domination. Learn what to watch out for while coding your app that will make your life easier once you receive localized content. We’ll cover alternate resources, strings files, date and number formatters and other tips from Android Studio, Google, and third parties that will turn you into an i18n and l10n champion.
This talk was given at Droidcon NYC on August 27th, 2015.
These slides were revised for DroidKaigi in Tokyo, presented on February 19th, 2016.
Discover Android TV and its promising ecosystem.
See how you can easily adapt your apps and games to bring these to TV and distribute them through the Play Store.
Learn how to take advantage of TV-specific features from your apps, like live channels, global search and recommendations.
Also, the Nexus Player being based on an Intel SOC; discover what it implies for existing apps and libs, like with any other Intel-based Android devices.
This talk will give you a broad overview of all you can do with Android TV and your apps/games.
Android TV: Building apps with Google’s Leanback LibraryJoe Birch
In this class, we'll look at how we can create Android TV apps with the help of Google's leanback library. After a brief introduction to the TV platform and an open-source Vine TV app, we'll move straight into how you can begin building applications for yourself using the leanback library, following best practices along the way. We'll take a look at the different components that are provided by the framework and how you can craft custom components of your own to enhance your application's UX. Seeing as Android TV applications are completely testable, we'll also take a brief look at how this can be done to ensure your app functions as expected!
IT talk #18 Odessa: Alexey Rybakov "Android TV"Marina Peregud
Алексей Рыбаков приехал из Харькова и провел IT talk #18. Поговорили в основном про телевидение на базе Android, нюансы разработки. Сравнили Android TV со схожими продуктами Apple, Sony и Mozzila. Алексей также раскрыл недостатки продукта и поделился презентацией.
An introduction to what you have to think about when desinging or migrating an existing app to run on new Android TV devices. The presentation looks at the general guidelines, patterns, and anti-patterns, as well as provides an introduction to the Android TV Leanback library.
Becoming an Advanced Groovy Developer Spring One 2gx 2015Tom Henricksen
Using Groovy is easy and fun. After getting your hands dirty with a few basics it is good to go deeper. In this session we will cover Design Patterns in Groovy, compilation configuration, mixing Java and Groovy, and calling other languages from Groovy. We will show you how to call Scala and Clojure from Groovy. So get ready to take it to the next level.
Frontend Development vs Backend Development | Detailed ComparisonMariya James
Frontend Development vs Backend Development is a topic worth discussing. These two are equally important for web development. Know the advantages and differences between these web development modules.
If your project has working features, a living design system, quality assurance and a code style guide, there is nothing that you will learn in this talk. Maybe.
Having 2+ years of experience in the fields of Web development and User interface Designing and Development. Excellent proven Experience in Handling project and delivery.
Designing for the web changed from an artisan template design to a more modern LEGO builder approach. Creating a personalized library of UI&UX bricks with intelligent behaviors helps an organization to build a real product. Reusable components can be combined in more complex structures, widgets and templates thus providing higher fidelity to design and decreasing the time to market. Through real project examples, this talk will introduce the design methodology and process to translate a UX model into a set of components, and the recommended development practices to implement.
Fearless Internationalization and Localization Across the NationsSiena Aguayo
Many people are intimidated by localization (l10n) and internationalization (i18n) but they don’t have to be—Android provides many tools out of the box to aide you in global domination. Learn what to watch out for while coding your app that will make your life easier once you receive localized content. We’ll cover alternate resources, strings files, date and number formatters and other tips from Android Studio, Google, and third parties that will turn you into an i18n and l10n champion.
This talk was given at Droidcon NYC on August 27th, 2015.
These slides were revised for DroidKaigi in Tokyo, presented on February 19th, 2016.
Discover Android TV and its promising ecosystem.
See how you can easily adapt your apps and games to bring these to TV and distribute them through the Play Store.
Learn how to take advantage of TV-specific features from your apps, like live channels, global search and recommendations.
Also, the Nexus Player being based on an Intel SOC; discover what it implies for existing apps and libs, like with any other Intel-based Android devices.
This talk will give you a broad overview of all you can do with Android TV and your apps/games.
Android TV: Building apps with Google’s Leanback LibraryJoe Birch
In this class, we'll look at how we can create Android TV apps with the help of Google's leanback library. After a brief introduction to the TV platform and an open-source Vine TV app, we'll move straight into how you can begin building applications for yourself using the leanback library, following best practices along the way. We'll take a look at the different components that are provided by the framework and how you can craft custom components of your own to enhance your application's UX. Seeing as Android TV applications are completely testable, we'll also take a brief look at how this can be done to ensure your app functions as expected!
IT talk #18 Odessa: Alexey Rybakov "Android TV"Marina Peregud
Алексей Рыбаков приехал из Харькова и провел IT talk #18. Поговорили в основном про телевидение на базе Android, нюансы разработки. Сравнили Android TV со схожими продуктами Apple, Sony и Mozzila. Алексей также раскрыл недостатки продукта и поделился презентацией.
An introduction to what you have to think about when desinging or migrating an existing app to run on new Android TV devices. The presentation looks at the general guidelines, patterns, and anti-patterns, as well as provides an introduction to the Android TV Leanback library.
Demian Neidetcher's presentation to the Denver Open Source Users Group on the Android mobile phone platform. Full details and source code available at http://neidetcher.com/android.html
Video Streaming: from the native Android player to uncoventional devicesMatteo Bonifazi
Getting a streaming video in your Android smartphone or tablet is no longer enough.In the latest period, Google shows how to push this concept forward to new appliances. Chromecast and Android TV are two of the most promising gadgets for upsetting the way users enjoy video streaming.
This talk we’ll give you an overview about the streaming in Android. Starting from video streaming on mobile devices, we will guide you into the evolution of the development through Chromecast up to Android TV. Matteo Bonifazi and Alessandro Martellucci will be illustrating this talk with their experiences developing mobile television applications for the main Italian broadcaster providers.
Exploring the power and benefits of using WordPress plugins, how to build a WordPress plugin in a few simple steps, plus a good solid list of plugin resources.
A hands-on workshop for DC Web Women on August 14, 2012.
Read more about the workshop and a summary of what we talked about on my blog: http://www.clarissapeterson.com/2012/08/responsive-web-design/
Responsive Web Design: the secret sauce - JavaScript Open Day Montreal - 2015...Frédéric Harper
There is no mobile or desktop Web: we view the same Web, but in different ways. So what is the secret sauce to give the best experience to our users? Drown your fixed-width design, destroy your device-specific approaches and ride the web's unicorn while an orchestra is playing we are the champion in the background: you found the holy grail! It's responsive web design. It's not new. It's not magical. Still, we need it as the bytes going thru the wires doesn't always give us the best experience out there. So stop watching cats videos, and learn more about how you can use Responsive Web Design's approach to your current site, today.
Responsive Web Design, get the best out of your designs - JavaScript Open Day...Frédéric Harper
There is no mobile Web, there is no desktop Web, and there is no tablet Web. We view the same Web just in different ways. So how do we do it? By getting rid of our fixed-width, device-specific approaches and use Responsive Web Design techniques. This session will focus on what is Responsive Web Design and how you can use his 3-pronged approach on your current apps today which will also adapt to new devices in the future.
Optimising Your Front End Workflow With Symfony, Twig, Bower and GulpMatthew Davis
We take great care in our back end coding workflow, optimising, automating and abstracting as much as is possible. So why don't we do that with our front end code?
We'll take a look at some tools to help us take our front end workflow to the next level, and hopefully optimise our load times in the process!
We'll be looking at using Twig templates and optimising them for the different areas of your application, integrating Bower and Gulp for managing assets and processing our front-end code to avoid repetitive tasks - looking at how that impacts the typical Symfony workflow.
Makefiles in 2020 — Why they still matterSimon Brüggen
Make was created in 1976 by Stuart Feldman at Bell Labs to help build C programs. But how can this 40+ year old piece of software help us develop and maintain our ever-growing amount of cloud-based microservices?
Responsive Web Design, the secret sauce - MSDEVMTL - 2016-01-25Frédéric Harper
There is no mobile or desktop Web: we view the same Web, but in different ways. So what is the secret sauce to give the best experience to our users? Drown your fixed-width design, destroy your device-specific approaches and ride the web's unicorn while an orchestra is playing we are the champion in the background: you found the holy grail! It's responsive web design. It's not new. It's not magical. Still, we need it as the bytes going thru the wires doesn't always give us the best experience out there. So stop watching cats videos, and learn more about how you can use Responsive Web Design's approach to your current site, today.
WordPress Plugin Development- Rich Media Institute WorkshopBrendan Sera-Shriar
“Plug-ins can extend WordPress to do almost anything you can imagine.” In this workshop we will cover the following areas, Extending WordPress, Customizing WordPress Plug-ins, Tips On Writing WordPress Plug-ins, Writing WordPress Plug-ins, and Essential WordPress Plug-ins. Plus, that isn’t enough, we will build a simple Flash plug-in by the end of the workshop that you can take with you!"
Into the Box Keynote Day 2: Unveiling amazing updates and announcements for modern CFML developers! Get ready for exciting releases and updates on Ortus tools and products. Stay tuned for cutting-edge innovations designed to boost your productivity.
Experience our free, in-depth three-part Tendenci Platform Corporate Membership Management workshop series! In Session 1 on May 14th, 2024, we began with an Introduction and Setup, mastering the configuration of your Corporate Membership Module settings to establish membership types, applications, and more. Then, on May 16th, 2024, in Session 2, we focused on binding individual members to a Corporate Membership and Corporate Reps, teaching you how to add individual members and assign Corporate Representatives to manage dues, renewals, and associated members. Finally, on May 28th, 2024, in Session 3, we covered questions and concerns, addressing any queries or issues you may have.
For more Tendenci AMS events, check out www.tendenci.com/events
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxrickgrimesss22
Discover the essential features to incorporate in your Winzo clone app to boost business growth, enhance user engagement, and drive revenue. Learn how to create a compelling gaming experience that stands out in the competitive market.
Unleash Unlimited Potential with One-Time Purchase
BoxLang is more than just a language; it's a community. By choosing a Visionary License, you're not just investing in your success, you're actively contributing to the ongoing development and support of BoxLang.
Check out the webinar slides to learn more about how XfilesPro transforms Salesforce document management by leveraging its world-class applications. For more details, please connect with sales@xfilespro.com
If you want to watch the on-demand webinar, please click here: https://www.xfilespro.com/webinars/salesforce-document-management-2-0-smarter-faster-better/
Globus Compute wth IRI Workflows - GlobusWorld 2024Globus
As part of the DOE Integrated Research Infrastructure (IRI) program, NERSC at Lawrence Berkeley National Lab and ALCF at Argonne National Lab are working closely with General Atomics on accelerating the computing requirements of the DIII-D experiment. As part of the work the team is investigating ways to speedup the time to solution for many different parts of the DIII-D workflow including how they run jobs on HPC systems. One of these routes is looking at Globus Compute as a way to replace the current method for managing tasks and we describe a brief proof of concept showing how Globus Compute could help to schedule jobs and be a tool to connect compute at different facilities.
Code reviews are vital for ensuring good code quality. They serve as one of our last lines of defense against bugs and subpar code reaching production.
Yet, they often turn into annoying tasks riddled with frustration, hostility, unclear feedback and lack of standards. How can we improve this crucial process?
In this session we will cover:
- The Art of Effective Code Reviews
- Streamlining the Review Process
- Elevating Reviews with Automated Tools
By the end of this presentation, you'll have the knowledge on how to organize and improve your code review proces
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Globus
The Earth System Grid Federation (ESGF) is a global network of data servers that archives and distributes the planet’s largest collection of Earth system model output for thousands of climate and environmental scientists worldwide. Many of these petabyte-scale data archives are located in proximity to large high-performance computing (HPC) or cloud computing resources, but the primary workflow for data users consists of transferring data, and applying computations on a different system. As a part of the ESGF 2.0 US project (funded by the United States Department of Energy Office of Science), we developed pre-defined data workflows, which can be run on-demand, capable of applying many data reduction and data analysis to the large ESGF data archives, transferring only the resultant analysis (ex. visualizations, smaller data files). In this talk, we will showcase a few of these workflows, highlighting how Globus Flows can be used for petabyte-scale climate analysis.
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...Anthony Dahanne
Les Buildpacks existent depuis plus de 10 ans ! D’abord, ils étaient utilisés pour détecter et construire une application avant de la déployer sur certains PaaS. Ensuite, nous avons pu créer des images Docker (OCI) avec leur dernière génération, les Cloud Native Buildpacks (CNCF en incubation). Sont-ils une bonne alternative au Dockerfile ? Que sont les buildpacks Paketo ? Quelles communautés les soutiennent et comment ?
Venez le découvrir lors de cette session ignite
A Comprehensive Look at Generative AI in Retail App Testing.pdfkalichargn70th171
Traditional software testing methods are being challenged in retail, where customer expectations and technological advancements continually shape the landscape. Enter generative AI—a transformative subset of artificial intelligence technologies poised to revolutionize software testing.
Quarkus Hidden and Forbidden ExtensionsMax Andersen
Quarkus has a vast extension ecosystem and is known for its subsonic and subatomic feature set. Some of these features are not as well known, and some extensions are less talked about, but that does not make them less interesting - quite the opposite.
Come join this talk to see some tips and tricks for using Quarkus and some of the lesser known features, extensions and development techniques.
May Marketo Masterclass, London MUG May 22 2024.pdfAdele Miller
Can't make Adobe Summit in Vegas? No sweat because the EMEA Marketo Engage Champions are coming to London to share their Summit sessions, insights and more!
This is a MUG with a twist you don't want to miss.
SOCRadar Research Team: Latest Activities of IntelBrokerSOCRadar
The European Union Agency for Law Enforcement Cooperation (Europol) has suffered an alleged data breach after a notorious threat actor claimed to have exfiltrated data from its systems. Infamous data leaker IntelBroker posted on the even more infamous BreachForums hacking forum, saying that Europol suffered a data breach this month.
The alleged breach affected Europol agencies CCSE, EC3, Europol Platform for Experts, Law Enforcement Forum, and SIRIUS. Infiltration of these entities can disrupt ongoing investigations and compromise sensitive intelligence shared among international law enforcement agencies.
However, this is neither the first nor the last activity of IntekBroker. We have compiled for you what happened in the last few days. To track such hacker activities on dark web sources like hacker forums, private Telegram channels, and other hidden platforms where cyber threats often originate, you can check SOCRadar’s Dark Web News.
Stay Informed on Threat Actors’ Activity on the Dark Web with SOCRadar!
First Steps with Globus Compute Multi-User EndpointsGlobus
In this presentation we will share our experiences around getting started with the Globus Compute multi-user endpoint. Working with the Pharmacology group at the University of Auckland, we have previously written an application using Globus Compute that can offload computationally expensive steps in the researcher's workflows, which they wish to manage from their familiar Windows environments, onto the NeSI (New Zealand eScience Infrastructure) cluster. Some of the challenges we have encountered were that each researcher had to set up and manage their own single-user globus compute endpoint and that the workloads had varying resource requirements (CPUs, memory and wall time) between different runs. We hope that the multi-user endpoint will help to address these challenges and share an update on our progress here.
How Recreation Management Software Can Streamline Your Operations.pptxwottaspaceseo
Recreation management software streamlines operations by automating key tasks such as scheduling, registration, and payment processing, reducing manual workload and errors. It provides centralized management of facilities, classes, and events, ensuring efficient resource allocation and facility usage. The software offers user-friendly online portals for easy access to bookings and program information, enhancing customer experience. Real-time reporting and data analytics deliver insights into attendance and preferences, aiding in strategic decision-making. Additionally, effective communication tools keep participants and staff informed with timely updates. Overall, recreation management software enhances efficiency, improves service delivery, and boosts customer satisfaction.
Accelerate Enterprise Software Engineering with PlatformlessWSO2
Key takeaways:
Challenges of building platforms and the benefits of platformless.
Key principles of platformless, including API-first, cloud-native middleware, platform engineering, and developer experience.
How Choreo enables the platformless experience.
How key concepts like application architecture, domain-driven design, zero trust, and cell-based architecture are inherently a part of Choreo.
Demo of an end-to-end app built and deployed on Choreo.
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...Globus
Large Language Models (LLMs) are currently the center of attention in the tech world, particularly for their potential to advance research. In this presentation, we'll explore a straightforward and effective method for quickly initiating inference runs on supercomputers using the vLLM tool with Globus Compute, specifically on the Polaris system at ALCF. We'll begin by briefly discussing the popularity and applications of LLMs in various fields. Following this, we will introduce the vLLM tool, and explain how it integrates with Globus Compute to efficiently manage LLM operations on Polaris. Attendees will learn the practical aspects of setting up and remotely triggering LLMs from local machines, focusing on ease of use and efficiency. This talk is ideal for researchers and practitioners looking to leverage the power of LLMs in their work, offering a clear guide to harnessing supercomputing resources for quick and effective LLM inference.
1. Pedro V. Gómez Sánchez - pedro@karumi.com - @pedro_g_s - github.com/pedrovgs
Working with Android TV
Pedro Vicente Gómez Sánchez
Android Expert at Karumi
pedro@karumi.com
@pedro_g_s
github.com/pedrovgs
2. Pedro V. Gómez Sánchez - pedro@karumi.com - @pedro_g_s - github.com/pedrovgs
3. Pedro V. Gómez Sánchez - pedro@karumi.com - @pedro_g_s - github.com/pedrovgs
Are we going to develop always for
smartphones?
4. Pedro V. Gómez Sánchez - pedro@karumi.com - @pedro_g_s - github.com/pedrovgs
https://developer.android.com/tv/adt-1/index.html
Nexus Player
5. Pedro V. Gómez Sánchez - pedro@karumi.com - @pedro_g_s - github.com/pedrovgs
6. Pedro V. Gómez Sánchez - pedro@karumi.com - @pedro_g_s - github.com/pedrovgs
● Introduction.
● First steps.
● Thinking different.
● BrowseFragment.
● DetailsFragment.
● SearchFragment.
● Recommendations.
● Without Leanback library.
Agenda
7. Pedro V. Gómez Sánchez - pedro@karumi.com - @pedro_g_s - github.com/pedrovgs
● Nexus Player supports API level 21 or higher.
● Leanback library is really useful. Almost essential.
● Easy to work with if you don’t want to do something different.
● Forget about touch your TV.
Introduction
8. Pedro V. Gómez Sánchez - pedro@karumi.com - @pedro_g_s - github.com/pedrovgs
First steps
9. Pedro V. Gómez Sánchez - pedro@karumi.com - @pedro_g_s - github.com/pedrovgs
Add Leanback library to your project:
First steps
10. Pedro V. Gómez Sánchez - pedro@karumi.com - @pedro_g_s - github.com/pedrovgs
First steps
Configure an Activity to use “LEANBACK_LAUNCHER” intent filter:
11. Pedro V. Gómez Sánchez - pedro@karumi.com - @pedro_g_s - github.com/pedrovgs
Thinking different:
Try to use your smartphone without touch it!
12. Pedro V. Gómez Sánchez - pedro@karumi.com - @pedro_g_s - github.com/pedrovgs
Try to avoid the keyboard:
Thinking different
13. Pedro V. Gómez Sánchez - pedro@karumi.com - @pedro_g_s - github.com/pedrovgs
Thinking different
All the user experience is going to be related to the focus usage.
14. Pedro V. Gómez Sánchez - pedro@karumi.com - @pedro_g_s - github.com/pedrovgs
You have a microphone, use it.
Thinking different
15. Pedro V. Gómez Sánchez - pedro@karumi.com - @pedro_g_s - github.com/pedrovgs
Use the background, it’s a powerful tool.
Thinking different
16. Pedro V. Gómez Sánchez - pedro@karumi.com - @pedro_g_s - github.com/pedrovgs
Use content recommendations.
Thinking different
17. Pedro V. Gómez Sánchez - pedro@karumi.com - @pedro_g_s - github.com/pedrovgs
Leanback Library
18. Pedro V. Gómez Sánchez - pedro@karumi.com - @pedro_g_s - github.com/pedrovgs
BrowseFragment
19. Pedro V. Gómez Sánchez - pedro@karumi.com - @pedro_g_s - github.com/pedrovgs
DetailFragment
20. Pedro V. Gómez Sánchez - pedro@karumi.com - @pedro_g_s - github.com/pedrovgs
SearchFragment
21. Pedro V. Gómez Sánchez - pedro@karumi.com - @pedro_g_s - github.com/pedrovgs
How can I use these Fragments?
22. Pedro V. Gómez Sánchez - pedro@karumi.com - @pedro_g_s - github.com/pedrovgs
BrowseFragment
Create your own Fragment and extend from Leanback BrowseFragment:
23. Pedro V. Gómez Sánchez - pedro@karumi.com - @pedro_g_s - github.com/pedrovgs
BrowseFragment
Configure your user interface to apply your application colors and icons:
24. Pedro V. Gómez Sánchez - pedro@karumi.com - @pedro_g_s - github.com/pedrovgs
BrowseFragment
Once you have loaded all the content, configure one ArrayObjectAdapter with
your data:
25. Pedro V. Gómez Sánchez - pedro@karumi.com - @pedro_g_s - github.com/pedrovgs
BrowseFragment
Each row is going to be represented with one “ArrayObjectAdapter”, one
“HeaderItem” and one “Presenter”:
26. Pedro V. Gómez Sánchez - pedro@karumi.com - @pedro_g_s - github.com/pedrovgs
BrowseFragment
Configure your listeners to
change your user
interface when one
element is selected or
clicked.
27. Pedro V. Gómez Sánchez - pedro@karumi.com - @pedro_g_s - github.com/pedrovgs
28. Pedro V. Gómez Sánchez - pedro@karumi.com - @pedro_g_s - github.com/pedrovgs
DetailsFragment
Create your own Fragment and extend from Leanback DetailsFragment:
29. Pedro V. Gómez Sánchez - pedro@karumi.com - @pedro_g_s - github.com/pedrovgs
DetailsFragment
Configure DetailsFragment background to be updated when needed:
30. Pedro V. Gómez Sánchez - pedro@karumi.com - @pedro_g_s - github.com/pedrovgs
DetailsFragment
Show detailed information using the same approach we use with
BrowseFragment based on ArrayObjectAdapter:
31. Pedro V. Gómez Sánchez - pedro@karumi.com - @pedro_g_s - github.com/pedrovgs
DetailsFragment
Add actions if needed:
32. Pedro V. Gómez Sánchez - pedro@karumi.com - @pedro_g_s - github.com/pedrovgs
33. Pedro V. Gómez Sánchez - pedro@karumi.com - @pedro_g_s - github.com/pedrovgs
SearchFragment
Create your own Fragment and extend from Leanback SearchFragment:
34. Pedro V. Gómez Sánchez - pedro@karumi.com - @pedro_g_s - github.com/pedrovgs
SearchFragment
To be able to react to user clicks you have to configure a
OnItemViewClickedListener instance:
35. Pedro V. Gómez Sánchez - pedro@karumi.com - @pedro_g_s - github.com/pedrovgs
SearchFragment
Override some methods
to perform your search
and indicate the adapter
you are going to use to
show search information.
Your fragment has to
implement Leanback
SearchResultProvider
interface.
36. Pedro V. Gómez Sánchez - pedro@karumi.com - @pedro_g_s - github.com/pedrovgs
37. Pedro V. Gómez Sánchez - pedro@karumi.com - @pedro_g_s - github.com/pedrovgs
Android Presenters
Android Presenters are the base of how your data is shown inside Leanback Fragments.
You can use some widgets from Leanback library or create your own presenters.
38. Pedro V. Gómez Sánchez - pedro@karumi.com - @pedro_g_s - github.com/pedrovgs
39. Pedro V. Gómez Sánchez - pedro@karumi.com - @pedro_g_s - github.com/pedrovgs
Recommendations
Android gives you the
opportunity to show
content
recommendations to
your users. This
mechanism is based
on classic Android
notifications.
40. Pedro V. Gómez Sánchez - pedro@karumi.com - @pedro_g_s - github.com/pedrovgs
41. Pedro V. Gómez Sánchez - pedro@karumi.com - @pedro_g_s - github.com/pedrovgs
Without Leanback library
42. Pedro V. Gómez Sánchez - pedro@karumi.com - @pedro_g_s - github.com/pedrovgs
Without Leanback library
One of the problems related to the Leanback usage is that all your applications are going to be
really similar. If you want to do something different, you’ll have to use your imagination.
Some interesting ideas:
● Use the focus and selectors to give more information to the user.
● State list animator is going to be your new best friend.
● Some elements will have to be focusables and disable the focus on
runtime could be needed.
● Change your backgrounds with cool images to provide more context to
the user.
43. Pedro V. Gómez Sánchez - pedro@karumi.com - @pedro_g_s - github.com/pedrovgs
Without Leanback library:
Focus
NextFocusX configuration is
going to be really useful for
your UI.
RequestFocus xml label will
provide you more flexibility.
Remember to enable
focusable in some of your
views, default state is false in
some views.
44. Pedro V. Gómez Sánchez - pedro@karumi.com - @pedro_g_s - github.com/pedrovgs
45. Pedro V. Gómez Sánchez - pedro@karumi.com - @pedro_g_s - github.com/pedrovgs
Without Leanback library:
State List Animators
If you want to improve how
your users know what’s the
elemen it selected and you
are not using a Leanback
widget, you can use state list
animators to animate your
widgets when one get or lose
the focus.
46. Pedro V. Gómez Sánchez - pedro@karumi.com - @pedro_g_s - github.com/pedrovgs
47. Pedro V. Gómez Sánchez - pedro@karumi.com - @pedro_g_s - github.com/pedrovgs
Without Leanback library:
Use focus programmatically
Use “getCurrentFocus()”
method to know which is the
view with the focus and don’
t be afraid to change
“focusable” attribute of your
views to create a better user
experience.
48. Pedro V. Gómez Sánchez - pedro@karumi.com - @pedro_g_s - github.com/pedrovgs
49. Pedro V. Gómez Sánchez - pedro@karumi.com - @pedro_g_s - github.com/pedrovgs
Without Leanback library:
Backgrounds
To be able to provide more information to the user about the current context you can change the
Activity/Fragment background.
50. Pedro V. Gómez Sánchez - pedro@karumi.com - @pedro_g_s - github.com/pedrovgs
51. Pedro V. Gómez Sánchez - pedro@karumi.com - @pedro_g_s - github.com/pedrovgs
52. Pedro V. Gómez Sánchez - pedro@karumi.com - @pedro_g_s - github.com/pedrovgs
https://www.github.com/pedrovgs/TuentiTV
Show me the code!
53. Pedro V. Gómez Sánchez - pedro@karumi.com - @pedro_g_s - github.com/pedrovgs
Questions?