Hey now - lessons from the App Store’s latest controversy
This week, Apple finally allowed the new opinionated email service Hey to release via the App Store. Previously blocked following a bugfix update for what they classed as violations to their Terms of Service, Hey refused to back down - accusing Apple of acting like “gangsters” and shining a light on issues that are well known to app developers.
While we’re happy to see Apple relaxing their grip in some areas, we wanted to take this opportunity to shed some light on common App Store requirements and violations and how you ensure you’re prepared to face them.
Login options
If you want to give users the ability to create their own profiles in your app, you have two options:
- Only allow them to use their email address for signup and/or register via your website before using the app
- Allow authentication with third party services like Facebook and Twitter. If you follow this route, however, you must also allow users to register with their Apple ID. This is a recent addition and, while small, it can be significant if you have an existing app in need of an update
There is one exception to this - if your app uses a login service that is specific to your company or as part of an education/enterprise/business/government system then you don’t have to also support Sign in with Apple.
Payment systems
Paying for a feature or subscription via in-app payments is great for users. It’s efficient, simple, and leans on Apple’s existing infrastructure for everything from transaction security to refunds. However, all of that comes at a price.
For the first year of use, regardless of how much money your app takes in, Apple will keep a 30% cut for themselves as a usage fee. Not only that but funds will also be held by Apple and released to you on a monthly basis. After the first year, this goes down to 15% but that’s the only reduction you’ll see. It’s a hefty price to pay but many apps sign on as it’s the only way to provide additional paid content within your app.
Subscriptions are a little different. You can ask users to sign up outside of the app but only if you’re already providing a service elsewhere; via a web-app for example. If you’re considered to be directly targeting iOS users and asking them to sign up in a way that could be seen as skirting around App Store policy, you’ll be flagged for review.
Is your app “functional”?
This definition of a word that, to many, should be obvious sits at the heart of Apple and Hey’s falling out. App Store review requires that your app should be able to work as advertised from the moment a user installs it. This means that you either need to make it possible for them to sign up there and then or use at least some part of it without having to register. If all that’s presented is a login screen, then you’re likely to get rejected.
What about Google?
While this article is mainly focused on the Apple’s App Store, it’s worth remembering that Google has a similar review process and requirements on apps published in the Play Store as well as an identical policy and fee model for in-app purchases.
Some good news!
A common criticism of Apple is that, with their walled-garden approach to apps, the walls are a little too high and grow higher a little too often. The review process has also come under fire for being a frustrating experience for app makers. Reviews are a human process that take place behind closed doors. The only feedback a developer gets is details of what rule they have violated and what actions are recommended to fix the problem.
Previously, there was no appeals process (unless you were big enough to take it to the media). That has all changed as of Apple’s WorldWide Developer Conference 2020, where they opened up a channel for formal appeals against perceived violations.
Even more promising, bug fixes are now protected. If you’re still working on implementing a required feature, such as adding Sign in with Apple, but have bugs elsewhere, you won’t be blocked from pushing those updates to your users.
How we develop with compliance in mind
Whether it’s as part of our discovery phases or during native app development, we take care to raise any potential challenges around App Store policies ahead of time. It can be tricky to make sure everything conforms to Apple and Google’s requirements but they hold the power in the end and getting ahead of it ensures we can deal with things sooner rather than later.
We also have the power of React Native on our side. Via the Expo client, we’re able to push small changes directly over the air, without additional review. This is great for bug fixes and small tweaks. Major features and functionality still always needs to be compliant but it gives us an additional level of flexibility and can drastically shorten the time between a bug being spotted and the fix rolling out.
If you would like to chat about your project or learn more about the Gravitywell process, get in touch.