Coming up with a good idea is difficult. Coming up with an idea no one’s ever come up before is extremely difficult. Many people make the mistake of being so impatient that they just jump right into development without looking into details. Then, they end up with a half baked application, which doesn’t really solve any problems.
Creating another classic Tic Tac Toe game may not be a good idea; there are plenty of similar games on Google Play. However, when you combine it with the AR technology, it may turn out to be a massive success because it brings a breath of fresh air.
You don’t actually always need a unique idea; you just need to do something better than the others. Take a look at the competition apps and try to think of the things you could do better or find the gaps. Maybe the competition is costly, or their application only targets high-end devices, or it’s not available in your country.
Ask yourself, ‘What problems will my application solve?’
Technology to create applications
You may be tempted at first to use cross-platform technologies to ‘write once, deploy everywhere,’ to save money. Solutions like React Native or Flutter sound good and could indeed work for simple applications. Using them for more complicated projects may lead to you having to hire 2 additional developers, 1 for each operating system (Android, iOS) to work on platform-specific cases, so there goes saving money.
Personally, I stick to this rule ‘Use React Native or Flutter for quick prototyping, use native approach when building the final product.’
When you finally decide which software development kit (SDK) you will use, it’s time to think about the app architecture. Tech blogs are always full of articles about ‘the ultimate approach,’ ‘the ultimate software library’ that you should use all the time. Don’t fall into that trap. Choose a proven architecture and stick to well-known software libraries.
Some software architectures require more work than the others, but they all serve a purpose. They make development easier and lower the cost of maintenance. Suffice to say it’s wise to spend some time at the beginning of work to incorporate the correct architecture. It will certainly pay off in the long run.
And remember, don’t rewrite the entire application every couple of months, just because you learned a new framework. You should be working on new features instead!
The list of Android devices is very long! Take a look at this list of Android smartphones. Ideally, you would like your app to work the same way on every device, to behave in the same manner, to have graphics crisp on every screen. It is not impossible, but it sure is hard to do. You will end up creating different layouts for particular devices so the app can look good despite the device’s limited screen size.
That’s why it’s so important to test thoroughly. You want to find possible bugs before you learn about them from 1-star reviews. Run your app on a bunch of low-end as well as high-end devices with different Android versions.
Configure your app’s availability by choosing which countries you want to target.
If your application helps cyclists in Amsterdam find the best cycle route, you don’t need to make it available in e.g., Poland.
With games, you want to have a broad audience. So be sure to select every country possible, because honestly who doesn’t like games?
If your app has content that’s inappropriate for children, don’t risk getting the app removed from Google Play and exclude them from your audience.
Decide on a monetization model:
Subscriptions work best when you provide a service or offer access to content.
In-app purchases are used to sell items or additional features.
Advertising — you get paid for showing Google AdMod ads.
Paid apps — you set a price for your app.
You are not done yet
Publishing an app to Google Play store is just the beginning of a journey. Use social media to let people know about your new product. Try to answer as many questions as possible and write down every feature request you receive from users. If you see that many people request the same thing, you know it’s a way to go. Users will appreciate that you are listening to them and deliver what they ask for. Don’t get defensive if you get negative reviews. Reach out to those users and ask them what they think should be improved.
Consider starting an advertising campaign to increase the reach of your app. This can be a bit pricey, but it will surely pay off when done correctly.
Building a successful app is not all about coding. Many little elements add to your application success, like:
having a great idea,
choosing the right technology,
choosing the right monetization model,
having communication channels with the app users,
providing ongoing support and regular updates based on user feedback,
promoting an app through social media.
You don’t have to know how to do all of this. Remember that innovation is the key, so come up with a great idea and let Amsterdam Standard help you to create a successful Android app ;)