What is the difference between Game Center and Apple Sign-in? - ios

Recently Apple released "Sign in with Apple" / Apple Sign-in. This will supported starting from firmware 13.
https://developer.apple.com/sign-in-with-apple/get-started/
As far as I remember, Apple also has "Game Center". The usage for this feature are includes saving game progress on cloud, Achievements, etc.
Android users might be familiar with Google Play Games. In Apple it was this "Game Center".
My question is, what is the difference between Apple Sign-in and Game Center? Is it only the firmware supported?

What is the difference between Game Center and Apple Sign-in?
Well, Game Center is for games. While Sign in with Apple is for your usual applications. You wouldn't take an effort to integrate Game Center in your Enterprise, Banking, Social Media Apps, would you?
Furthermore, Game Center is basically Apple's social gaming network. It uses a framework called Game Kit.
What does Game Kit do?
GameKit provides you with the ability to create apps that allow
players to interact with each other. Multiplayer apps allow your game
to create real-time network matches. Players can invite other players
to join their game. Most importantly, players can receive invitations
to join a match even when your game is not running. Your game is
running on each device and the instances of your game exchange match
and voice data with each other.
Lastly, Sign in with Apple is pretty much like your Sign in with Facebook or Google Sign in.
Sign in with Apple allows you to set up a user account in your system,
complete with name, verified email address, and unique stable
identifiers that allow the user to sign in to your app with their
Apple ID. It works on iOS, macOS, tvOS, and watchOS. You can also add
Sign in with Apple to your website or versions of your app running on
other platforms. Once a user sets up their account, they can sign in
anywhere you deploy your app.
docs:
Game Center: https://developer.apple.com/game-center/
Game Kit: https://developer.apple.com/documentation/gamekit/
Sign in with Apple: https://developer.apple.com/sign-in-with-apple/get-started/

Related

App rejection for User registration

I recently submitted a multiplayer trivia app to the app store. There are 2 versions of the app but they are essentially the same thing just for different trivia.
One app was accepted but the other rejected
Here is the rejected reason
17.2 Details
We noticed that your app requires users to register to access non account-based features. Apps cannot require user registration prior to allowing access to app content and features that are not associated specifically to the user.
My app has followed the process that is similar to other major apps like trivia crack and words with friends.
The user gets a screen to sign in with facebook or sign in with email. When they click on sign in with email it brings them to a screen where they enter their email. We then create an account for them in the app.
This is required so that we can keep track of the user in each of the games they are playing and who they are playing against we also keep stats for that user based on how many questions they get wrong and how many right, also how many wins. We are storing all of this on our webserver so that the user can also use his account on a different device so that they can play their games on their iphone, ipad, ipod and so on.
We ask for nothing other than email, and if we dont have them register then we cant maintain all this information for them, especially if moving from device to device. Again, this is how almost ALL other larger multiplayer apps in the store do it. I mimicked them exactly.
I dont get it. Plus, one reviewer accepted one of the apps and another rejected the other app.
Should I appeal?
Yes, you can appeal.
You can explain your position to reviewer, we had similar problem and after we've created appellation application was published.

iOS Game Center - designing game achievements for offline use

I am designing and developing iOS game with achievements and leaderboards. I understand the mechanic of creating achievements within iTunes Connect, and loading/unlocking them in iOS game.
But I am not aware of the best practice how to include the achievements for users that refuse using the Game Center. I want to offer these users the achievements too, so is the approach to keep a duplicate, offline list of achievements in the iOS binary and unlock these in local application?
I am not talking about "offline" in context of "network connection", but in context of "not using Game Center".
Or is this thought off-topic today, and should I hard-wire the achievements to only GC users? My intention is to offer Achievements to all users, even those who don't authorize game in GC.
Any advice in approach would be appreciated, thanks!

In-App Coins purchased through web browser

I am working to develop an iOS mobile app version of an online game that uses in-game coins to enhance game play. Ideally, I would like to sell these coins through both IAP and through the user's account on the web version of the game. I am having a difficult time parsing together whether or not this is allowed by Apple and am wondering if anyone has similar experience.
According to Apple's terms:
11.2: Apps utilizing a system other than the In App Purchase API (IAP) to purchase content,
functionality, or services in an app will be rejected
But also:
11.14 Apps can read or play approved content (specifically magazines, newspapers, books, audio, music, and video) that is subscribed to or purchased outside of the app, as long as there is no button or external link in the app to purchase the approved content. Apple will not receive any portion of the revenues for approved content that is subscribed to or purchased outside of the app. [This last is from an earlier version of the rules, but it still seems to be the case -- I can purchase a subscription to Pandora on the web or through IAP, right?]
I know I can't put a link to the web version in the App, and I can't advertise within the app that they can purchase coins online, but is it possible to sync the two accounts across platforms? Will Apple allow this, or do we need to re-evaluate?
Thanks!
The current top-grossing game, Candy Crush Saga, appears to do this, so that seems to be a good precedent. It can be synced with the Facebook version of the game where items can also be purchased.

Game Center achievement behavior for multiple account game

Let's say that you develop an iOS game that allows the user to login and log out of different accounts using in-house account system. For example, you could login using Facebook, or email/password combination.
What is the best way for this game to handle Game Center achievements? How should situations with logging in and out handled?
Regardless of your in-house account management system, the associated user will need to login to Game Center. Unfortunately you cannot force a Game Center logout via iOS; this is something the user will need to do on their own.
As far as tracking achievements goes, let Game Center handle all of that. Your real challenge is going to be getting the user to explicitly launch the Game Center standalone application to sign-on & sign back in, either within the GC app or via your app's GC [login] presentation.
In order to ensure proper achievement progress is reported across users' accounts, the user logged into your app with their in-house account must also be logged in with their Game Center account. One way to at least ensure you don't cross the streams regarding achievement tracking & reporting is to have the user enter their Game Center display name while logging in via the in-house system.
Once past the in-house authentication, let Game Center player authentication take place, retrieve the local player's playerName and compare. If they match, flag this and track / report achievement progress normally.
If they don't match, it's up to you whether to prompt the user again for this information to check again. At the very least you should communicate to them that the in-house account does not match the Game Center account, and to move forward they will need to launch the Game Center app to logout & login. Otherwise, flag the mismatch, and use this logic to bypass achievement reporting (and potentially other GC functionality).
There's a post here with some more ideas.
Good luck!

iOS multiplayer game - Game Center and Facebook Connect

I am planning to develop an iOS multiplayer game. I plan to use Game Center. How does this work if I want to also have facebook connect? Is it either/or? Is it simple to use them both concurrently?
It's not either-or. You can use as many 3rd-party social networks as you want in your game. Game Center provides a transport mechanism for sending game data to all the participants of your game, which Facebook Connect does not. Facebook Connect only gives you the ability to list your player's FB friends, not the ability to initiate games with them.

Resources