10 tips from 10 years of android development experience

Discover 10 expert tips from 10 years of Android development experience to enhance your app-building skills.
Mar 17 2022 · 4 min read

Introduction 

Developing an android app is not easy as there are thousands of different possible combinations of OEM, hardware, and Android versions.

I have developed apps that are used by a few users to millions of users.

10 tips from the 10 years of android development experience.

We are what we repeatedly do. Excellence, then, is not an act, but a habit. Try out Justly and start building your habits today!

Let's Get Started!

1. Get a good machine if possible

Contrary to web development, android development requires lots of machine resources.

If you don’t have a good machine, you will end up waiting for 1–5 minutes on each app run depending on your app size and where you make the change.

Getting a good machine will save you 1 day per week and that’s like having an extra week in a month. I would recommend a configuration with at least 16GB of RAM!

2. Choose the way that suits your skillset and meets your need

Native android apps can be developed with currently 3 trending approaches

  1. Android native framework — Kotlin/Java and Jetpack compose/Views — Use this if you are good at Kotlin/Java and you don’t care about iOS app.
  2. Flutter — If you are coming from the web and have used a declarative framework, and you want android and iOS and other platforms ready at the same time, use this approach.
  3. KMM — Use KMM to develop data part of the app that can be shared between multiple platforms and write UI with android default framework.

3. Develop with the smallest device in mind

Android devices come with every possible combination of screen resolution, density, and size and there are over 15,000+ devices available.

While optimizing for all devices is not possible, designing your app with the smallest device in mind will make sure it works on most of the devices.

Create an emulator with the smallest resolution and make sure you test your app on it. If possible, use it as the default device.

4. Care for device resources

Unlike web where most of the machines are connected to the power grid, android devices will have limited battery and resources.

Make sure you are not doing any resource hungry operation in background without user’s permission as they may need it for an emergency.

Having battery dead when they most need it will make them remove your app. Or worse, they can spread the words in their circle as well, ultimately damaging the branding.

5. Make sure you verify your app manually on a few Chinese manufacturers and Samsung devices

In an ideal world, if something works on stock android versions, it should work on every other device.

However, that’s far from reality. Most OEMs modify the firmware as per their need and often in a way that breaks android CTA.
That means even if you doing something in a right way, it will break on a few devices and you will have to handle it with a workaround.

Checking apps occasionally or shipping major changes can be helpful. You will avoid bad reviews and user experience.

6. Make sure you test your app on the lowest, middle, and the highest android version supported

Android behavior can be surprising on some OS versions. Make sure you verify it on at least 3 versions.

7. Make use of some good open-source libraries

There are a few libraries on android that will be useful for every android app. Make sure you search for it and include it in your project.

There’s a recent blog written by Canopas team that can be useful too!

8. Make sure your app plays nicely with password managers

Most users don’t like to type credentials. They will use google or external credential manager to autofill login whenever possible. Making sure your app works with password manager will leave a good impression.

If possible, avoid your login entirely and use google/facebook/twitter logins to authenticate users.

9. Automate your deployments all the way

Well, this is not just about building the app and storing as artifacts. No, go all the way.

Configure your master/main branch to be deployed on Playstore internal channel on every commit and make sure right people are invited. This will help everyone with having latest build.

Once a build is good enough, just promote it on to production from internal channel on PlayStore.

10. Follow community for new learnings

Android development advances at a rapid pace. Following a good weekly or some blogs can be really helpful to stay up to date on the new developments.

There are many good resources out there, I can recommend android weekly https://androidweekly.net/ and fragmented podcast https://fragmentedpodcast.com/ to get started.

Conclusion 

Drawing from a decade of experience, I offer ten essential tips to navigate the complexities of Android app development, enhancing your process, creating robust apps, and delivering a superior user experience.


Code, Build, Repeat.
Stay updated with the latest trends and tutorials in Android, iOS, and web development.
jimmy image
Jimmy Sanghani
Jimmy Sanghani is a tech nomad and cofounder at Canopas helping businesses use new age leverage - Code and Media - to grow their revenue exponentially. With over a decade of experience in both web and mobile app development, he has helped 100+ clients transform their visions into impactful digital solutions. With his team, he's helping clients navigate the digital landscape and achieve their objectives, one successful project at a time.
jimmy image
Jimmy Sanghani
Jimmy Sanghani is a tech nomad and cofounder at Canopas helping businesses use new age leverage - Code and Media - to grow their revenue exponentially. With over a decade of experience in both web and mobile app development, he has helped 100+ clients transform their visions into impactful digital solutions. With his team, he's helping clients navigate the digital landscape and achieve their objectives, one successful project at a time.
Recommended for you
Jimmy Sanghani
Jimmy Sanghani
How to Design Animated Emojis in Jetpack Compose
Master the techniques for designing animated emojis in Jetpack Compose.
7 min read | Published on May 30
Jimmy Sanghani
Jimmy Sanghani
How to Develop a Todo App in Android with TDD: Part 3 Guide
Discover how to build a robust Todo app using Android integration testing and the Test-Driven Development (TDD) approach.
6 min read | Published on Jan 3
Jimmy Sanghani
Jimmy Sanghani
How to Create Custom Animations in Jetpack Compose
Master custom animations in Jetpack Compose with our step-by-step guide.
4 min read | Published on Jul 12

Recommended for you
Jimmy Sanghani
Jimmy Sanghani
How to Design Animated Emojis in Jetpack Compose
Master the techniques for designing animated emojis in Jetpack Compose.
7 min read | Published on May 30
Jimmy Sanghani
Jimmy Sanghani
How to Develop a Todo App in Android with TDD: Part 3 Guide
Discover how to build a robust Todo app using Android integration testing and the Test-Driven Development (TDD) approach.
6 min read | Published on Jan 3
Jimmy Sanghani
Jimmy Sanghani
How to Create Custom Animations in Jetpack Compose
Master custom animations in Jetpack Compose with our step-by-step guide.
4 min read | Published on Jul 12

Whether you need...

  • *
    High-performing mobile apps
  • *
    Bulletproof cloud solutions
  • *
    Custom solutions for your business.
Bring us your toughest challenge and we'll show you the path to a sleek solution.
Talk To Our Experts
footer
Follow us on
2024 Canopas Software LLP. All rights reserved.