Releasing mobile apps is hard

Thursday, June 23, 2016 by David Conlisk

Releasing mobile apps takes time. Lots of time. Getting the app to work on the devices you are targetting is only the beginning. Take for example the Limb Activator app that I just released as a side project. It's a very simple app: if the device doesn't sense movement for a specified period of time, it buzzes or beeps. That's it. The prototype took less than 3 hours to create on iOS, on a train journey from London to Glasgow. In the end it took just shy of 100 hours of my time to complete, and that's not including some time from a designer friend to do some image manipulation and icon design (which I paid for, of course).

So what did I spend the other 97 hours doing? Here's a list of some of the things:

- The UI for the app. I used the excellent Grialkit Xamarin Forms UI kit which basically gives you a set of layouts that you can use out of the box. Just tweak the colours and away you go.

- Images. Lots and lots of images. Take an image, and make hundreds of versions of it, to satisfy iOS, Android, Google Play and the App Store. Oh, and don't forget the website...

- A responsive website. Go get yourself a cheap skin, then you realise when you add extra text the layout is screwed. Spend hours tweaking css. And don't forget to include screenshots of the app on the site. I didn't create a responsive website for the Bristol Stool Chart app, I just updated the app images, screenshots, and logo for the old site - and believe me, that was enough.

- Marketing. Set up a Twitter account. Create a Facebook page. Find ways to get the word out. If you build it, they will NOT come, at least not unless you market it properly. I used the TweetLiker tool to find twitter accounts to like and follow as a way of getting the word out. It's a very nice tool, but I'm not sure how effective that strategy is - yet. It is a definite improvement on having to Google for relevant sites for the original Bristol Stool Scale app in 2011 that's for sure!

- Testing. This can take a lot of time. Thankfully you can use simulators to test your layouts on different screen sizes, but nothing beats testing on a real device (I haven't used Xamarin Test Cloud). Also the technology moves very quickly, so if you get side-tracked (by paid work, for example) when you come back to your project you may find that there are software updates to be installed, and who knows what effect they might have? Also, when using plugins you never know how buggy they might be, or how quickly your pull requests will be accepted into the project.

- The App Stores. Getting your app accepted can be tricky, especially with Apple, and can be time-consuming. In the past I've waited over a week for the Apple review process for an app update to complete. Thankfully, that is more like a day just now. Remember that just because you can build and run your app in Release mode on your device, doesn't mean that your app will satisfy all criteria for either of the app stores.

So I suppose what I'm saying here is, if you're going to build a mobile app in your spare time or as a side project or even as a business venture, make sure you believe in it. Because when the exciting part (the working app) is over, you're not even close to being finished yet.

But what about the technology?

My experience with Xamarin in the past was using the excellent MVVMCross framework so getting to use Xamarin.Forms was part of my motivation. I wanted to see if it was any good. And it was great! I was especially impressed with the number of plugins already available to use with Xamarin.Forms:

https://github.com/xamarin/XamarinComponents

https://github.com/jamesmontemagno/Xamarin.Plugins

https://blog.xamarin.com/amazing-community-built-plugins-for-xamarin/

I also used Grialkit, because my design skills are non-existent. It really helped me a lot, reducing my design costs substantially, and allowing me to quickly create good looking UIs. Nothing will replace a top-notch designer, but for my purposes Grialkit was excellent. Also, I can't praise their support highly enough. The only thing to note here is that you need to use their kit as a starting point, rather than integrating it with your existing code - something to bear in mind.

In summary

If you're going to build an app, be prepared for all of the "other stuff" that needs to be done alongside getting your app to work. Use Xamarin Forms, use Grialkit, use Tweetliker, they are all great tools. Just don't forget to market your app!

 

If you found this article useful, please click the +1 button!

 

0 comment(s) for “Releasing mobile apps is hard”

Please leave a comment: