Droidcon 2024 in London - a conference review

6. November 2024 - from Yannick Pulver

Droidcon took place in London from 31 October to 1 November 2024, and the Apps with love Android team was there in full force for the first time (yay!). Over the two days, more than 1,500 Android developers gathered at the Business Design Centre in London. Meeting like-minded people at a conference is probably one of the most exciting things we can do as developers. It's also a lot of fun.

Travelling to the Droidcon 2024 in London

The journey started in Bern, where we took the train to Basel. Unfortunately, we didn't get to say hello at the Basel office, but we did get a breakfast pizza at the railway station. Yummy!

Pizza for Breakfast

Our culinary journey continued to Paris by TGV. Once we arrived in Paris, Miggi took us to a bakery where they say they have the best croissants. It was definitely delicious.

With the pastries in our bellies, we travelled on to London on the Eurostar. While we were travelling underwater, Yannick ordered a coffee in the on-board restaurant. Who can claim to have had a coffee under water? Apart from that, the journey was relatively unspectacular in thick fog. But the anticipation and finalising the last sprint tickets kept us busy.

Best Croissant in Paris
The Android team at Gare du Nord

Talks

Over the two days we were able to listen to a wide variety of talks. It was not always easy to choose, as there were always six tracks of talks going on at the same time. Fortunately, they were all recorded and can be watched afterwards. Below we have all written down which talks we liked best.

Optimizing Kotlin Code in Practice

By: Romain Guy, Android Toolkit Team

Favourite talk from Yannick

Talk by Romain Guy, Droidcon 2024 London

Romain's talk was about how the Jetpack Compose team works to improve performance through optimisations. He mentioned various concepts of how to optimise at a high level, but also at a memory level, using the example of processors and how data is processed.

Romain used live demos to show how a code can look optimised, but the associated bytecode does not necessarily have to be optimised. With a few optimisations, he was often able to reduce the size of the generated byte code many times over.

Fortunately, we haven't had to deal with such byte-level optimisations yet, but now we definitely know what to look out for. But Romain also gave valuable tips for us as Android developers. Firstly, activating Google's "R8 Code Shrinking", which often improves app performance quite a bit and can usually be activated relatively easily. Fortunately, we are already doing this. Secondly, "Baseline & Startup Profiles" can be used to improve the startup time of apps, which is certainly something we will be taking a look at next time. 

And an important anecdote from Romain: If features are tested for performance (benchmark), it's best to have a fridge nearby. Because if the phones get hot during performance testing, this can influence the results.

Securing Android: Tackling Advanced Threats and Enhancing App Security

By: Mohammed Kerroumi, Zimperium - Solutions Architect

Favourite talk from Miggi

Mohammed's Talk has shown how Android apps can be attacked and how to protect them from this.

Talk by Mohammed Kerroumi, Droidcon 2024

First, he showed us how easy it is to decompile unprotected APKs and extract important information such as API keys. He used tools like Ghidra and Jadx, which are available to everyone. Obfuscation with R8 or Proguard did not provide much protection either, as they only rewrite variables and classes. However, the keys are still completely readable. He showed us how the malware has evolved over the years and can now operate even when the device is locked.

To make apps even more secure, he showed us a whole host of "protection techniques" - from integrity checks to control flow obfuscation - and gave us best practices along the way. When developing apps, you should always be aware that you are developing in an insecure environment. Android phones can easily be rooted. This means that app folders are no longer secure.

Challenges and Best Bractices
Advanced Protection Techniques

My takeaways:

  • When developing Android apps, you should always remember that your app is running on an insecure system.

  • Cream cut technique: save the app in as many layers as possible.

Tap it! Shake it! Fling it! Sheep it! - The Gesture Animations Dance!

By: Nicole Terc, HubSpot - Android Tech Lead

Favourite talk from Dinah


With her talk, Nicole wanted to show the potential of animations in KMP and CMP. She animated a picture of a sheep in various ways and demonstrated how developers can animate UI elements.

To animate something, she asks herself the following questions: What? When? and How? In the following animation the questions are answered as follows:

  • What? Scaling

  • When? When tapping the sheep

  • How? Switch between 1.0 and 1.2

Sheep is animated on mouse click

Things got particularly exciting when Nicole discussed smartphone sensors. This is because users can of course not only trigger interactions with their finger, but also by shaking or turning the smartphone, for example. However, a smartphone has many more sensors. Conveniently, these can also be triggered for testing in the Android emulator.

Nicole implemented all the examples in KMP (Kotlin Multiplatform) and CMP (Compose Multiplatform), which allowed her to show the animations on an iPhone emulator in no time at all. However, how the sensors can be used in the code can differ between Android and iOS. For example, the coordinate system in Android for the orientation sensors under the Z axis (when the smartphone is rotated from portrait to landscape format) understands a rotation of 0° to 360°, whereas iOS understands a rotation of -180° to 180°. This must be taken into account when programming.

The Git repo with all examples can be found in Nicole's GitHub.

Wireless protocols for the next generation IoT devices

By: Erik Hellman, Freelance software engineer

Favourite talk from Ossi

In his talk, Erik Hellman presented various technologies for communicating with IoT devices. He showed the advantages and disadvantages of the respective protocols, what the areas of application are and how they can be implemented in the development of Android apps.

Talk by Eric Hellman, Droidcon 2024 London

WiFi impresses with its high data rate and widespread use. It is ideal for applications that require a fast connection, such as smart household appliances or cameras. However, WiFi is energy-intensive and therefore unsuitable for battery-powered devices. WiFi Easy Connect (DPP) simplifies the installation of IoT devices by enabling secure, password-free setup.


Bluetooth is used in two variants: Bluetooth Classic and Bluetooth Low Energy (BLE). While Classic delivers higher data rates and is suitable for continuous connections, BLE is particularly energy-efficient and ideal for battery-operated devices. Bluetooth is widely used, but is limited in range and bandwidth. It is often used in wearables, health monitoring and smart household appliances.


LoRa and LoRaWAN score points with their enormous range and minimal energy consumption, which makes them ideal for connecting sensors in remote locations. However, as LoRa has a low data rate, it is unsuitable for data-intensive tasks.


Thread is an energy-efficient mesh network protocol specially developed for IoT devices in the smart home sector. Matter compatibility enables a standardised connection of devices from different manufacturers and platforms.


Ultra Wide Band (UWB) offers high precision in determining location and is therefore suitable for special applications such as access control or indoor tracking. Unfortunately, there are not many Android smartphones that support UWB, especially cheaper models do not have an antenna for it.


Conclusion
Each of these protocols has specific strengths and weaknesses that make them suitable for different use cases. WiFi is suitable for data-intensive applications, Bluetooth for mobile use, LoRa for large-scale, energy-saving applications and Thread for the smart home. UWB is a powerful technology that enables both data exchange and positioning. Choosing the right protocol is crucial for integrating IoT devices efficiently and reliably into different networks.

Our general impressions of Droidcon

At the well-attended Google stand, there were a number of faces to be seen, some of whom we had already had the chance to watch the blog and the video. So of course we couldn't pass up this opportunity and spoke to the team ourselves and put forward our wishes and feedback. Apparently the Google team liked what we were doing and gave us a Google Fold (!) so that we could develop and test our apps better on larger or foldable screens. Thank you Google! 😍 (and especially Alex Vanyo & Rebecca Gutteridge)

Google Pixel Fold, a gift from Google to our Android team

Thanks to the many sponsors of Droidcon, there was an almost endless amount of merchandise that we were able to get our hands on. There are never enough stickers on a laptop and Android figures on our desks. 🎉

Merch from Droidcon 2024

Kotlin Multiplatform

The topic of Kotlin Multiplatform (KMP) was also more present than ever at Droidcon London. Taking part in a conversation with "KMP pioneers" such as Kevin Galligan & John O'Reilly and the Jetbrains team Sebastian Aigner & Márton Braun was inspiring - it was also good to see once again that they themselves are "only human". Since this year, we have also been using KMP as a tool in our tech stack and are very excited about its further development. KMP is very promising and could definitely catch on as a cross-platform technology. 

Our conclusion of the Droidcon in London

We've been to a Droidcon from time to time in recent years, but the Droidcon in London was definitely a highlight. Much bigger than the events we've been to so far. At this conference we had time to connect with others and were able to take part in exciting talks. We now have a lot of new material to process, research and evaluate, which definitely makes the conference a win for us. Especially in the area of adaptive layout (supporting phones, foldables and tablets) and Kotlin Multiplatform, we were able to pick up valuable tips and will be looking into this a lot in the near future.

The Apps with love Android Team in front of the Business Design Center
See you another time! Android team over and out! 🎤
We just noticed that you surf with Internet Explorer. Unfortunately, our website does not look so nice with it.

You want to know why that is?
We have written about it.

Blog

You need help with the changeover?
Get in touch. We are happy to help

Contact

Install a new browser?
There's lots of choice.

Browser