[URGENT]MAC App review team rejected because GameKit framework linked!

We do not use any Game Center functionality, is possible to unlink the GameKit?


2.3
The app links against the GameKit framework but has no apparent Game Center functionality. If we've missed functionality within your app that uses Game Center, please use the Resolution Center to describe where we can find this functionality.

If you do not intend to use Game Center functionality, please unlink the GameKit framework, otherwise, if you intend to use Game Center functionality, please add the "com.apple.developer.game-center" entitlement and submit an updated binary.

Apple

Hello,
Game Canter is not active in the app identifier so Users are not advertised about Game Center functionality.
We do not any GameKit framework API call.
If you think that this version of the game is not good enough simply tell us and we will delete
Thank you.

Reasons

  • 2.3: Apps that do not perform as advertised by the developer will be rejected

Thank you for your response.

We advise that you unlink the GameKit framework.

We look forward to reviewing your revised binary.

What version of Unity are you using? What 3rd party assets / plugins are you using?

MAC version No Plugins No 3rd party asset

Are you using anything from the Social API?

Hey BBRome, I am in the same boat as you! Never had a problem before and got this error out of the blue with my latest submission. No plugins and few third party assets here too. Let me know if you find a solution and I'll do the same!

No social…

Unity last version 4.5.2.f1

ok

Not sure what hte issues is - but In Xcode, when you build the ipa, remove GameKit from the linked libraries

any news from Unity guys?
we are stuck...

Did you try adding the entitlement Apple suggested and resubmitting? Since Unity added a few social features in 4.x.x, it may be a requirement now whether you use them or not.

No if you do that, they want Game Center functionality(if you read carefully), I have my own ranking system

Hi, I'm having the same problem. I can't turn off Game Center in capabilities without it having linking errors. (Unity 4.2 Xcode 5.1.1)

But then again, if I put game-center in my App ID and don't use the Game Center will my app get rejected?

How can we unlink the Game Center library if Unity links to it?

I would like to hear from someone who made an iPhone app WITHOUT game centre. What settings did you use?

Did you try turning OFF the capability of Game Center in Xcode and the manually adding GameKit library? I hear some people said that works.

This is a horrible bug. :face_with_spiral_eyes: Unity must be linking to the game kit even if its not needed. Maybe Apple has changed it's submission policy recently due to game centre abuse!

This is entirely possible, and it always causes hassle when they do.

The way I see it, if you’re sat waiting for someone to post how to fix the problem, you may as well have added the game-center tag to the entitlements and re-submitted anyway. Worst case they reject it again. Best case it fixes the problem. If someone posts back with more info about a fix you can simple cancel the submission and re-upload again.

I really don’t see a downside to trying it.

any news from Unity guys?

all on vacation?

Here they are I believe we can not do anything other than using the game center

Social API is Unity’s point of access to social features, such as:

  • User profiles
  • Friends lists
  • Achievements
  • Statistics / Leaderboards

It provides a unified interface to different social back-ends, such as XBox Live or GameCenter, and is meant to be used primarily by programmers on the game project.

The Social API is mainly an asynchronous API, and the typical way to use it is by making a function call and registering for a callback to when that function completes. The asynchronous function may have side effects, such as populating certain state variables in the API, and the callback could contain data from the server to be processed.

The Social class resides in the UnityEngine namespace and so is always available but the other Social API classes are kept in their own namespace, UnityEngine.SocialPlatforms. Furthermore, implementations of the Social API are in a sub-namespace, like SocialPlatforms.GameCenter.

This sounds like Apple has changed their interpretation of their submission rules.

Unity does indeed always link the GameCenter framework, as we actually don’t link the player executable on the machine running Unity, but only when we make a build of Unity. Ie, all Unity games shipped with a specific version of Unity ship the same player executable, and only differ in the data files used. So we don’t know if GameCenter will be used at player link time, so we always link it.

We will try to find out with Apple if this rule change is intentional, and if it is, we will need to find some workaround (like dynamically loading symbols from GameCenter at runtime, instead of linking against the framework). I’ll keep you updated once I know more.

2 Likes

Thank you Jonas,

Waiting for update, I tried using the Social API, but the first approach has been tough(MAC release), can't
Autenticate the player (Social.localUser.Authenticate(callBack)).

Short update: we got in touch with Apple and they are asking for rejected app's ID or name. Everybody who got affected by this issue please share these details.
Thanks!

here's mine:

Bundle ID : com.blab.showJumpingFREEMAC

Apple ID : 901739141

TypeMac OS X App

Thanks!