User account without In-App Purchase?

Hi everyone,

a few months ago I posted for review an app that let users register (only username and password, email optional only for password restore purpose) just in order to let them post content, messages, etc.

In a first moment user had to log for anything, then my app had been rejected and changed with login only for posting content. The app was rejected again: they required In-App Purchase for users registration.

Had a look to In-App Purchase but could not find a solution to make users register without paying for a membership (it was a 100% free app).

Solved letting user log only with Facebook or Twitter account.


Now I need something similar for another app, but this time to store users settings on server so that they can access using any device.

The device could be Apple or not, of course.

By now I don't think users will have access to a website too, it's almost useless for what the app does, I don't know if this makes any difference.


I see that almost any app give the chance to login using social networks, but also creating an account.


Since when the problem occurred with the other app I had no reply for how to make user register with In-App purchase for free, has anyone of you experienced and solved the same problem?


Thank you!

I am unable to fully understand your problem as you described it. Are you saying you need some way to have a user create an account on your server that only they can access? If so, one way to do that is through iCloud - every user has access to a key-value file on the iCloud Account and all of their devices can access it. You could store a token in that file and use that token to create and unlock their account on your server - all in the background.


But if that does not address your problem, perhaps you can try to explain what you need to do more clearly.

This could work, but it's not what I need. If an user has an iphone, and an android tablet they will not find the same settings when they open the app. That's why I'd like to let them create an account with just username and password stored on my server.. But it seems that it's not allowed since they rejected my app.

Trying to explain my problem better you could chek these posts: it's exactly the same problem. https://forums.developer.apple.com/message/45596#45596https://forums.developer.apple.com/message/21773#21773 If, in ordet to access the app, the user MUST signup and login, the app is rejected. But then you get rejected also if you change the app requiring login only for account specific features. And, just to talk, what if an app has ONLY account specific features? In my previous app I limited the login only to post on a board and locate other users on map and it was rejected anyway. So how does Apple want to let users identify on multiple devices?

Well first, it is appropriate to have each app do something, however minimal, without requiring purchasing IAPs or logging in and if you require logging in it should only be for those functions that require the logged-in server access.


And second, why not handle the Android/Apple stuff on your server. Simply log into your server from all iOS devices using an automatically generated username/password stored on the iCloud Account key-value file. Once on your server ask the user if they have a pre-existing (aka Android) account they wish to merge into this iOS account.

Ok this solution could do what I need.

I must say that it requires just a lot of more work for something that could be performed very easy and fast by the user.


By now I'm developing just for iOS, Android is coming next, so I don't know exactly how it works but let's say I have to do the same on their platform.

If the keys (username and password, a token, whatever) that I generate are stored just in the cloud, users don't know it and they can't merge their accounts.

If I let them know these credentials isn't it exactly the same if they created them? The only difference is that if users create their own username and password they will remember them and maybe recover them by mail. If I generate credentials for them they will never remember, so just big headache for users.


It looks like the only way to make an user friendly app is to start anything on a website and once users have already created an account, Apple just can't refuse to let them authenticate with their credentials or let them create a new account straight from the app.

But it just makes no sense...


Anyway, this way could be performed 99% of all authentications made on mobile devices... So I don't understand why almost any app I download requires an account creation and Apple let them do it.


It would be very useful to have an official answer by app review, but when I asked they didn't reply... just copied and pasted the previous message that said I had to do it with In-App Purchase, but still don't know how and why and it looks like nobody knows.

User account without In-App Purchase?
 
 
Q