Log in to unlock functionality?

According to section 3.1.4 of the following document, assuming I'm reading it correctly, license keys and other similar mechanisms are not allowed to be used in iOS apps:


https://developer.apple.com/app-store/review/guidelines/#payments


However, a lot of programs don't have any (or full) functionality unless you log in to an account that is paid for outside the App Store. I'm guessing that this falls under section 3.1.3 ("reader" apps) in most cases, although Microsoft Word for iOS differs a bit in that you have to sign in to your Office account in order to save created documents.


Does anyone here know what the limitations are on this? We don't want to violate any rules, but at the same time we'd like to be able to allow people to purchase as part of a multi-platform bundle from our website, rather than singling out the iOS app as the only one that can't be purchased that way. This would require the user to log in to their account in our system to activate the "Premium" functionality within the apps on all platforms, including iOS. Is that going to be possible, or is that prohibited except in the specific use cases mentioned in section 3.1.3?

Accepted Reply

I managed to get hold of someone from Apple, who has indicated that this is indeed possible within certain constraints. Anyone else with a similar question should contact Apple directly to find out if your use case is one that can be achieved.

Replies

>Does anyone here know what the limitations are on this?

>a lot of programs don't have any (or full) functionality unless you log in to an account


The "any" is a violation in that all apps are supposed to function in some way without requiring log in.

The "(or full)" is, in itself, not a violation. If the user is purchasing something that becomes enabled when they log into their account, and the purchase is done using a system other than IAP, and what they purchase 'unlocks code or functionality' within the app then that is a violation. If the user is just purchasing content that is displayed in the app then that might be ok under 3.1.3

I was able to find an app already in the iOS store that behaves this way - Norton Mobile Security


https://itunes.apple.com/us/app/norton-mobile-security/id520284590?mt=8


This app really does nothing at all if you don't sign in to an existing account. In order to use the anti-theft or backup features, you have to purchase a Norton subscription, then sign in using that account.


This doesn't seem like a legit thing, based on what has been said or what I'm reading in the guidelines... and yet, it's in the store.


I guess we'll have to talk to Apple about this and see whether this is allowed or if Norton is doing something they shouldn't be doing.

>if Norton


I'd argue that Symantec is a player, perhaps with velvet rope access to the process, and not a good example for the average dev in this case.

If your goal is to get Norton's app rejected, that's a good approach - but why would that be your goal?

If your goal is to get your app approved without adding some pre-log in functionality then using the argument "Norton did it why can't I" is an approach that will most likely not work. Why waste your time?

Why not just add some functionality before the log in?

I managed to get hold of someone from Apple, who has indicated that this is indeed possible within certain constraints. Anyone else with a similar question should contact Apple directly to find out if your use case is one that can be achieved.