DevCommunity Summit 2021 DevCommunity Summit 2021

Android

Friday, October 1, 2021

- EDT
How Android Began
Chet Haase
Chet Haase
Google

The book "Androids: the Team That Built the Android Operating System" tries to answer the question: Why did Android succeed? Along the way, it explores the stories of the people that created the OS.

This session will do likewise, sharing some of the stories of that early team and culture and trying to give some sense of how, against all odds, Android managed to survive to where it is now available on over 3 billion devices today.

- EDT
Automating Android Workflows with Github Actions
Ubiratan Soares
Ubiratan Soares
N26, Sr Software Engineer

When talking about CI/CD products, Github Actions is the new kid on block. It has been attracting a lot of attention from Engineers given its seamless integration with Github and is not surprising that it has been quickly adopted both at open-source projects and private-source projects, with Android being no exception on that!

In this talk we'll review the fundamentals of Github Actions as a CI/CD platform and learn how to make the most of it when designing and implementing automations for Android projects. We'll learn about particularities and limitations we can find when moving a big Android project over Github Actions and review some of the common solutions we have around for Android-specific use cases.

Dev Community Slack: Discussion and Q&A

- EDT
“From 0 to 98: Speed up your Testing with DaggerMock and Live Kaspresso”
Nick DiPatri
Nick DiPatri
Comcast, Principal Engineer

Untested code gets you on the road, but it will eventually slow you down. The prototype-to-production pipeline doesn’t always have the luxury of test-driven development. As a result, some production code has very low unit test coverage.

In this talk, you’ll learn how to use the new Espresso/UI-Automator based Kaspresso in unique ways to quickly stand up live, automated integration tests and keep production code reliably moving forward while your pit crew slowly builds up unit test coverage to 98 percent. You’ll learn how to use DaggerMock to migrate most of these live tests over time to more reliable mock integration tests. This talk will include a live demonstration, so fasten your seatbelts!

- EDT
Demystify and Optimize Your Android Gradle Builds
Nate Ebel
Nate Ebel
Google Developer Expert

Gradle, and the Android Gradle Plugin, are the backbone of most Android projects today. They are also the source of much frustration for dev teams wishing their builds were faster or easier to work with.

This talk aims to demystify your Android build by helping you understand how Gradle works, what happens when you build your project, and how to start optimizing your build for increased developer productivity.

During this talk, we’ll focus on a few key areas including

  • The difference between Gradle and Android Gradle Plugin
  • What happens when you run a Gradle task
  • How to investigate your project’s build performance
  • Performance optimizations

By the end of the talk, you should better understand what happens when you build your Android app, and be equipped to start optimizing your builds for faster builds and happier developers.

- EDT
Practical tips for CI/CD success for Android
Zan Markan
Zan Markan
CircleCI

Android teams often have to build and maintain their own CI/CD pipelines. This at first seems straightforward to implement and maintain. Yet it can often quickly become a tedious time sink and a source of universal frustration on many teams. From flaky builds, to long running builds, to flaky long running builds, the sources of frustration are endless. With the goal to ship more and faster as well as to compete in an ever changing industry, we can (and must) do better.

This talk will cover best practices for performance, stability, security, and maintainability of CI/CD pipelines with a focus on developing for Android, each supported with practical examples and counterexamples.

- EDT
Android Study Jam: Build Your First Android App

New to mobile development? Learn how to build Android apps during this Android Study Jam event!

Equipment Needed:

  • Computer (ideally with Android Studio already installed)
  • (optional) Android device & USB cable


Dev Community Slack: Discussion and Q&A

- EDT
ConstraintLayout for Compose and Beyond
JH
John Hoford
Google, Developer
Nicolas Roard
Nicolas Roard
Rivian, Director of Engineering

CL for compose 1.0 introduces new concepts such as the json declaration of your UI and live edit. We intend to build upon this a cross platform UI component with similar capabilities, from layout to motion. 

This talk will cover ConstraintLayout Compose 1.0 featuring MotionLayout & ConstraintLayout, and the new json syntax that will be available on Compose, Compose Desktop, Swing and Android Views. We will also cover our new remote editing app "Link" and how you can use it to create and edit rich interactive user interfaces.

- EDT
How we built a production-ready Chat SDK using Jetpack Compose
Filip Babić
Filip Babić
Stream, Lead Android Developer for Jetpack Compose
Márton Braun
Márton Braun
Stream, Android Developer Advocate

In this session, we'll talk about how we built the world's first Jetpack Compose Chat SDK, what challenges we met along the way and why put so much trust into a technology that only recently became stable.

We'll talk about the API design and what decisions we've made to allow for both default behavior and UI and a rich set of customization options.

Dev Community Slack: Discussion and Q&A

- EDT
Creating an API with Strapi hosted on Heroku with Firebase Auth using Jetpack Compose and SwiftUI
Craig Clayton
Craig Clayton
Ed Farm, Senior iOS Engineer
Sierra OBryan
Sierra OBryan
Atomic Robot, Senior Consultant

In this talk, we will show you how you can create a self hosted API using Strapi deployed on to Heroku. We will first cover how you create Strapi locally. Then we will show you how you can deploy to heroku. Once the API is deployed we will show you how you can bring the API into a Jetpack Compose and SwiftUI project.

- EDT
Migrating a large-scale banking app to Compose
Fatih Giris
Fatih Giris
DNB Bank, Android Lead

The Android community adopts Jetpack Compose more and more each day. But what about our existing apps? Adopting existing apps to Jetpack Compose might be an overwhelming task when the migration is not planned well.

In this talk, we will see the Compose migration strategy used in DNB. We will briefly talk about the interoperability APIs and how they are used in this migration process. We will also talk about how we are adopting our internal design system to Jetpack Compose. Finally, we will discuss the challenges we faced during this migration.

- EDT
Overview of UI testing in Compose

Jetpack Compose has no views, so how do we test it? Come learn about the basics of UI testing in Jetpack Compose.

Dev Community Slack: Discussion and Q&A

- EDT
A page out of server driven UI
Adit Lal
Adit Lal
Adit Lal, Individual Consultant

This talk emphasises how and why building Android apps using a concept called Server Driven Architecture for our UI layer is so important and current hot-topic. We take a look at multiple offerings such as JetPack Compose or Epoxy (Airbnb's library) and we then take a look at some tips and tricks to navigate the code from start to finish.

- EDT
The new jetpack register for activity result API
Madona Wambua
Madona Wambua
Streem, Andriod Engineer

Android docs now recommend using this new registerForActivityResult API in favor of the old one, onActivityResult, we can dive deep into how this new API has made part of development seamless. Also, one can define a custom contract so that the consuming app can get results as a sealed class rather than as an intent.