IOS7 and Game Center Achievements- no banners displayed

Hoping someone can confirm or refute the fact that it appears that achievements don’t show when they are achieved. When run on an IOS6 the achievement shows up but when run on the iOS 7 it doesn’t show up.
When Game Center is opened I can confirm that I don’t have the achievement on both devices.
Next I preform the action to receive the achievement.
Open Game Center again and confirm that I have received the achievement.
IOS6 shows the banner.
ios7 no banner is shown.

Verified that notifications are banner.

I am building under xcode5 and unity 4.2

Anything else?

Just came in here searching for an answer to this myself :slight_smile:

I no longer have an iOS 6 device handy to test with (cause I’m a dumbass), but I’m seeing the issue on iOS7. Achievements work perfectly, but there’s just no banner being displayed.

For the record, this is what I’m doing upon successful authentication:

private void ProcessGameCenterAuthentication(bool success)
{
    if (success)
    {
        UnityEngine.SocialPlatforms.GameCenter.GameCenterPlatform.ShowDefaultAchievementCompletionBanner(true);
    }
}

This has worked previously. I’m assuming it’s still relevant and correct, and all that’s required to get those banners showing?

Yeah same here that looks almost exactly like me code and it displays the banners on iOS5/6

Okay, then I guess it doesn’t work anymore :slight_smile:

Unless there’s something different that needs to happen under iOS7, but I’m not aware of any changes.

I think Game Centre is totally borked now.

My code was working perfectly (using prime31’s gc plugin), now I have all sorts of issues:

  1. Can’t do part achievements e.g. 10% completion 20% so forth on collection achievements
  2. Achievement banners when completed are still showing again after completion (i.e. not recognising that it’s already completed).

Was all working perfectly before and so far noone can give me answers - getting hot potatoes between apple and prime ><

Edit: Can also confirm that banners show on ios6 (on my ipod 4 and ipad1) but NOT on ios7 (my iphone 4s)

You’re actually seeing achievement banners on iOS7 though?

No, not at all. Only seeing them on iOS6 (i haven’t updated all devices).

I’ve been searching all over the net for other people reporting this and my other %completion issue AND the reporting of achievements complete even when they’ve been completed before, and so far this is it - like it’s potentially only a unity or prime31 issue.

Found this on Apple website:

Wonder if Unity and Prime31 have looked into these? Could be an issue in there.

Hopefully some fixes are coming along soon. It’s the only thing holding me up on release now :frowning:

Same. We’ve just started final beta testing and this could potentially hold us back from the date we want :frowning:

I just tried it out with our GameKit for iOS7.0 module using the low level APIs and same results. The apple dev forums are also reporting the same thing for iOS 7.0 devices. It’s likely an iOS7.0 bug.

@u3dxt is your system working correctly for achievements with progressive updates? (e.g. 10% complete) etc?

@OceanBlue Sure. Below is a simple demo our plugin’s iOS 7.0 GameKit.

// reporting achievements, args: id, percentage
GameKitXT.ReportAchievement("FLOOR2_COMPLETED", 10);

Does that mean that an update to the OS will fix bug, and not require modifications to existing code?

Also, has anyone tested live game’s achievements instead of in sandbox?

Wanted to bump this. Are there any reports of whether the achievement banner displays in the live environment?

I’m getting the same behaviour described here - using the Unity Social API - achievement works fine in the sandbox, but the banner does not display. This is on a device with iOS 7.0.3

Anyone got any updates or more info?

Cheers
ecc83

I can confirm that the live area works. Banners display properly.

Thanks! :slight_smile:

Yup - same here. Works fine in the live app.

OceanBlue, I’m not using Prime31 but Unity indeed has a bug when doing cumulative progress reporting.

I’m using this:

				Social.ReportProgress(achievementID, progressCompleted, success =>
				{
					...
				});

The banner shows up ( < ios7.0) when the achievement progress is reported 100% straight away. But will not show if it’s cumulative like you mentioned.

I already coded everything in Unity until I saw this issue. I didn’t want to discard that work so what I did was, if the achievement progress reaches 100%, I will report it again on the xcode side just to show the damn banner. I know it’s redundant but it’s just a work around and I’m still hoping Unity will fix it one day.

In the iOS plugin I wrote something like:

			achievement.showsCompletionBanner = YES;
			achievement.percentComplete = 100.0;
			[achievement reportAchievementWithCompletionHandler:^(NSError *error)
			 {
				 if (error != nil)
				 {
					 NSLog(@"%@", error.localizedFailureReason);
				 }
			 }];

That did the trick.

But yeah, completion banners does not show all the time in iOS7.0+