Developers have a tough job and there are ways that Google could make it easier.
We just got our first very early peek at Android 12 and like every version that came before it, there will be new features. Some will be big features while some will be small, but as always, there will be one or two that each of us would really like to see added to our favorite app.
But for most of us, even on the best Android phones, it will become a waiting game. Some independent developers will be able to include support for Google’s new stuff rather quickly and that’s a testament to hard work combined with a bit of luck that made it a little easier to implement. But know that most developers that still maintain the best Android apps will be working hard to make the new stuff work without breaking all the existing stuff. That’s what developer previews and beta testing are for.
But it’s hard for a lot of apps to find ways to do this. There are some really good reasons and the biggest is that until Samsung delivers the update, the latest Android features really don’t matter because Samsung, for all intents and purposes, is Android when it comes to consumer sales. If the vast majority of your users can’t use a feature, there’s no real rush to get it working. Even then, there are a couple of things Google could do to make the whole process easier.
The way to find out what a developer needs is to ask a developer.
I’m not an Android developer, so I rounded up the team and we reached out to people who are Android developers and asked them what Google could do to help everything be ready to go once a new version of Android arrives. For the most part, the same two answers came back over and over: better documentation with examples of how to get things working and better ways to test or even do some of the work directly from an Android device.
If a big tech company like Facebook is building an Android app, they can get access directly to Google to get questions answered and might even be part of the process during feature development. This sounds really unfair to smaller development houses and independent developers, but the big guy gets more attention than the little guy because Android wouldn’t be as attractive without the big apps.
Google does have a Developer Relations team to help anyone who wants to write an Android app, but it’s not the same as traveling to Google’s HQ and working with the team. That’s why documentation is so important. The team at Smart Launcher told us how important documentation is.
I think case-specific documentation would drastically improve the time requested to implement new features. Google generally provides clear documentation when it comes to how to implement a feature in an app, but sometimes a feature is composed of more than one part, and not all the parts are equally documented.
Also, Google should probably require manufacturers to properly support new features or to publish some documentation if they apply any changes. The implementation of a new feature is much harder if we have to test the same features on every device.
This sentiment, especially the part about requiring a phone maker to document how it implements any new feature was echoed by several other smaller development teams and even some larger names like the team at Todoist who said that “nobody has time to test every feature on every single phone model.” With thousands of different models, they’re right.
Another thing Google could do surrounding documentation is to keep it updated. APIs change and evolve over time and the documentation needs to evolve with it. Google can sometimes be forgetful.
The screenshot above is the online console for a registered Google Cloud developer. Everything needed to build an application based in Google’s Cloud is there except the imagination part. You can browse and use Google APIs through a browser window, look for a pre-built solution for an existing function or feature, even set up storage access all from a Chrome tab.
Google’s Cloud Developer Console is a great online tool.
There’s plenty of documentation to get you started and you can even pay for a virtual machine to run your app in the cloud if it needs access to something like the Cloud Compute Engine. It’s a full-featured integrated development solution to get most everything you need up and running quickly.
Compare that to the Play Store Developer Console. Keep in mind that most Android apps are run locally and not in the cloud, but still, there is a serious lack of features when compared to the cloud dev console. That’s because Google also makes what’s called Android Studio, which is a local IDE (integrated development environment) used to build Android apps. But the biggest difference is that one can be accessed from a mobile device and the other can’t.
That’s a pretty big deal to Nayelle (see her apps here) who develops home screen customization tools like live wallpapers and widgets. Nayelle would love to see a better dashboard and a way to store app templates in it so more work could be done from a phone.
The developers at Miniclip would also love to see better online tools that could bridge the gap between the Android developer’s site and the Google Play Developer Console.
Android has a unique set of standard APIs for both native and hybrid apps and you’ll also find specific APIs used through Google Play Services. Seeing a searchable database of documentation for it all in one place would save development time.
There’s that documentation word again, but this time it’s not the lack of it but the way it’s exposed. It would seem to me that the Play Store dev console would be a perfect place to search through the relevant documentation, especially since you’ll need to tell Google how you’re using APIs before you publish an app in some instances.
The Android emulator isn’t as good as the phone in your hands.
Finally, I can say this from experience during my brief foray as an Android app developer, a quick way to make minor changes to code and have Google refactor and rebuild an app in the cloud that you could download and test would mean you can better troubleshoot and hunt bugs. Android Studio is turning out to be a really nice IDE, but the emulator just isn’t able to find bugs the same way you can on your own physical phone.
When Android 12 comes to your phone, most apps will still work just fine. But the devil is in the details and to keep supporting an app, a developer has to keep it updated for newer versions, which takes a good bit of work. Keep that in mind the next time you visit the Play Store!