Earlier this month I heard a fascinating talk by Facebook’s Alan Cannistraro at iOSDevUK, in which he shared his thoughts around the next big developments in technology. One aspect of his talk has been bobbling around in my head ever since, and it’s this aspect that I’d like to explore further in this post.
Alan talked about the relevance of physical context when considering a given set of devices. Specifically, he noted that there will always be convergence towards a single device within a given physical context. Here’s the example he used to explain what this means in practice.
At my app agency Agant, we created a handy checklist of all the things you should test before releasing a new app (or app update) to the App Store. I thought this might be a useful thing to share with other developers. Here it is, as a Pages document and a PDF.
This document is by no means comprehensive, and is not a substitute for more thorough testing (including unit testing) of your code. Nor is it a replacement for usability testing of your interface and app flow. It is, however, a useful way to remember all of the things that can easily catch you out. Testing your app with a 24-hour clock, or in a different timezone to your own, can find easy-to-fix problems before they hit the Store. And getting someone else to use your app with Screen Curtain is a great way to test whether your VoiceOver support is truly useable in practice.
Please feel free to use and adapt this document as you see fit for your own testing, and do post any additional testing tips in the comments, or send them to @daveaddey on Twitter.
Update: 22 September 2013
Oisin Hurley has set up a GitHub repository for the App Release Checklist. Please do add your own checklist items and suggestions to the list on GitHub, and / or use it to create a branch of the list for your own needs.
iOS 7 introduced a new way to detect and monitor location, known as iBeacons. This article gives an overview of what iBeacons are, what they can do, and how you go about setting them up.
iBeacons are low-power, short-distance location monitoring beacons. Any iOS device that supports Bluetooth Low Energy can become an iBeacon, and can detect other iBeacons when they are nearby. Apps can be notified when iBeacons move in and out of range of the device, and can monitor the proximity of iBeacons as their proximity changes over time.
I recently made the decision to close the Agant offices, and to return to being a one-man band. This meant that Agant went through a redundancy process for all six employees, which ran until the end of July.
My immediate priority was to make sure everyone found a new job as soon as possible, and I’m very happy to report that everyone did so pretty quickly. I’m not surprised – they’re all ace, it’s why I employed them – but it was good news nonetheless.
Once I knew that everyone was set up, I realised I should probably work out what to do next myself. So, I’ve been investigating a few different options over the past month, and I’m delighted to say that one of these has led to a job offer, which I’ve accepted. And I have to say, it’s one that I’m really rather excited about.
I’m joining Apple as a Senior Writer in their Developer Publications team. I’ll be putting together programming guides and documentation for the latest and greatest Apple technologies, as well as looking at ways that the overall developer documentation (and its UI) can become even more effective. It’s the perfect role for me – effectively, a combination of everything I’ve done over the past 15 years – and I can’t wait to get started. (I’ll be based in the UK in the short term, and then moving out to Cupertino if my visa application is successful.)
In the meantime, all of Agant’s existing apps (including our client-published apps) have been tested for iOS 7 compatibility, and will remain on the Store. And a new iOS 7-native version of UK Train Times has been submitted to the Store for review.
I’ve always said that there’s only one big company I’d ever work for, and I’m very chuffed that Apple want me to join the team. Hopefully see you all at WWDC 2014!
A word of warning if you’re using Apple-hosted In-App Purchase downloads, as introduced in iOS 6. After downloading your Apple-hosted files, you’ll probably want to move them into the user’s Documents folder, so that they are available for persistent offline access (as seen in the WWDC 2012 sample project, IAPSample).
When you do so, be sure to mark your files as ‘exclude from backup’, especially if they are large. This is described in Technical Q&A QA1719, and is implemented using NSURLIsExcludedFromBackupKey.
I recently needed to set up some Apple-hosted In-App Purchases for a new iOS app. (These are special products, introduced in iOS 6, for which Apple hosts downloadable content on your behalf.)
Apple’s iTunes Connect Developer Guide gives detailed information on how to set up Apple hosting for a new In-App Purchase. However, I couldn’t see the ‘Hosting Content with Apple’ option within iTunes Connect for any of our apps. Thankfully I was able to work out why, with the kind help of Simon Maddox.
Over the past few months, I’ve been researching the kinds of apps that get featured on the iOS App Store home page for different countries around the world. I’ve posted my initial findings as an online report with dynamic graphs and analysis. (I’ve posted it separately to the main blog, as the report didn’t suit the blog’s template style.)
Read the report.
I run an app development studio in the UK. We make money – and some profit – by developing apps to sell on the iOS App Store for ourselves and our clients. We’ve launched some very successful paid apps, but we keep running into a fundamental problem – apps are just too cheap. In this article, I’ll look at how this problem has come to be, and how it could be fixed.
I received so many nice compliments about my app demo slides at Úll 2013 that I’ve decided to make my Keynote slide template available. I’ve also written up how I create the demos, including how I record demo videos of our apps over AirPlay. If you find yourself needing to demo iOS apps for meetings and presentations, you’re very welcome to use this template.
I’ve been doing some research into the kinds of apps that tend to get Apple promotion on the App Store. This research is still a work in progress, so I thought it might be useful to share an initial finding about the App Stores themselves.
It turns out that there are actually very few App Stores in the world. You can buy apps in 155 countries, but there are only 25 separate stores. Many countries share their App Store with several other countries, and show exactly the same curated selection of featured apps – with localised names and metadata where available – as those other countries. In practice, this is almost certainly necessary to keep the weekly task of content curation feasible for Apple.
When I’m designing an icon, I find it useful to preview how it will look in situ on an iPad’s home screen. To make this easier, I’ve created a couple of Photoshop templates to help me mock up how they’ll look on an actual device.
Every now and then I write a cryptic crossword. This is my latest effort. It’s posted here primarily for your idle amusement, but feedback is very much appreciated.
Over the past three years, I’ve been fortunate enough to be asked to speak at several tech conferences in the UK. I’ve definitely learnt a lot in the process. Here are my 21 tips for anyone looking to talk at their first conference in 2013.
When developing the original version of our UK Train Times iPhone app, I needed to retrieve nearby train stations from an SQL table of all UK stations, ordered by their distance from a certain latitude / longitude point. I came up with a fast and efficient way to do this, which is explained in detail below.
Whilst this approach is particularly suited to an iPhone (which has assisted GPS and support for SQLite, but a relatively slow processor), the same approach would apply to any SQL application needing to order by distance from a fixed point.
There’s a reason we talk about “losing yourself in a good book”. When the medium, the text and the reader operate as a single, smoothly-running unit, you can spend hours with your head deep in a book, oblivious to the outside world. Words flow through your eyes and convert seamlessly into ideas and images within your brain, in what feels like an effortless, almost magical process.
Our goal as publishers, then, is to optimise a reading system to remove any distractions and barriers to this flow. There’s only so much we can do about the reader – i.e. ourselves – but the medium and the text can certainly be optimised to make reading as smooth a process as possible.
One of the challenges when designing an iOS app is finding high-quality fonts to use in your app’s interface. iOS comes with some great built-in fonts (see iosfonts.com for a handy reference). Sometimes, however, these fonts may not be right for the style of your app’s design.
How much does the average app make on the iOS App Store? Can you, in fact, make a living from selling apps? As the founder of a profitable app development company, these are questions I’ve given a lot of consideration.
Here are my predictions for what will be announced at Apple’s Worldwide Developer Conference (WWDC) this week – with an Apple TV OS being my big punt for Monday’s keynote highlight.
Last April, I wrote about the UK Conservative Party’s election app. This app uses your iPhone’s address book to send personal details (and likely voting intentions) of your friends and contacts to the Conservative Party.
The subject of address book security has been in the news again recently. Two particular stories have caught my eye, both of which raise questions about how we value address book privacy in mobile apps and on the Internet.
As a regular tweeter, I’m always wondering how people view my tweets. Communicating in 140 characters is quite a thing, and I’m not sure I always get it right. Here are my top suggestions for things to avoid, based on how my approach has changed over time. (I’ve broken nearly all of them.)