Create apps that allow players to interact with each other using GameKit.

GameKit Documentation

Posts under GameKit tag

83 Posts
Sort by:
Post not yet marked as solved
0 Replies
30 Views
[UE] Assertion failed: Binding.index < ML_MaxTextures [File:./Runtime/Apple/MetalRHI/Private/MetalPipeline.cpp] [Line: 563] Metal texture index exceeded! How can I solve it?
Posted
by jaycecai.
Last updated
.
Post not yet marked as solved
0 Replies
174 Views
My MacBook Pro is M3 max, running macOS 14.4.1 (23E224), with Xcode 15.3 and Command_Line_Tools_for_Xcode_15.3 installed. When I tried to execute "brew -v install apple/apple/game-porting-toolkit", it reported the following error. Error: apple/apple/game-porting-toolkit 1.1 did not build Logs: /Users/yuanmouren/Library/Logs/Homebrew/game-porting-toolkit/00.options.out /Users/yuanmouren/Library/Logs/Homebrew/game-porting-toolkit/01.configure /Users/yuanmouren/Library/Logs/Homebrew/game-porting-toolkit/01.configure.cc /Users/yuanmouren/Library/Logs/Homebrew/game-porting-toolkit/02.make /Users/yuanmouren/Library/Logs/Homebrew/game-porting-toolkit/wine64-build If reporting this issue please do so to (not Homebrew/brew or Homebrew/homebrew-core): apple/apple I found the following error reasons in the console. /private/tmp/game-porting-toolkit-20240414-2133-st99bv/wine/dlls/crypt32/unixlib.c:629:11: error: unknown type name 'SecTrustSettingsDomain' const SecTrustSettingsDomain domains[] = { ^ /private/tmp/game-porting-toolkit-20240414-2133-st99bv/wine/dlls/crypt32/unixlib.c:630:9: error: use of undeclared identifier 'kSecTrustSettingsDomainSystem' kSecTrustSettingsDomainSystem, ^ /private/tmp/game-porting-toolkit-20240414-2133-st99bv/wine/dlls/crypt32/unixlib.c:631:9: error: use of undeclared identifier 'kSecTrustSettingsDomainAdmin' kSecTrustSettingsDomainAdmin, ^ /private/tmp/game-porting-toolkit-20240414-2133-st99bv/wine/dlls/crypt32/unixlib.c:632:9: error: use of undeclared identifier 'kSecTrustSettingsDomainUser' kSecTrustSettingsDomainUser ^ /private/tmp/game-porting-toolkit-20240414-2133-st99bv/wine/dlls/crypt32/unixlib.c:640:18: warning: this function declaration is not a prototype [-Wstrict-prototypes] status = SecTrustSettingsCopyCertificates(domains[domain], &certs); ^ /private/tmp/game-porting-toolkit-20240414-2133-st99bv/wine/dlls/crypt32/unixlib.c:641:23: error: use of undeclared identifier 'noErr' if (status == noErr) ^ /private/tmp/game-porting-toolkit-20240414-2133-st99bv/wine/dlls/crypt32/unixlib.c:647:31: warning: this function declaration is not a prototype [-Wstrict-prototypes] if ((status = SecItemExport(cert, kSecFormatX509Cert, 0, NULL, &certData)) == noErr) ^ /private/tmp/game-porting-toolkit-20240414-2133-st99bv/wine/dlls/crypt32/unixlib.c:647:51: error: use of undeclared identifier 'kSecFormatX509Cert' if ((status = SecItemExport(cert, kSecFormatX509Cert, 0, NULL, &certData)) == noErr) ^ /private/tmp/game-porting-toolkit-20240414-2133-st99bv/wine/dlls/crypt32/unixlib.c:647:95: error: use of undeclared identifier 'noErr' if ((status = SecItemExport(cert, kSecFormatX509Cert, 0, NULL, &certData)) == noErr) ^ 2 warnings and 7 errors generated. make: *** [dlls/crypt32/unixlib.o] Error 1 make: *** Waiting for unfinished jobs.... How should I resolve this issue?
Posted Last updated
.
Post not yet marked as solved
0 Replies
106 Views
Hello, As stated in the title, we implemented the GameKit unity package. We did a lot of testing and never encountered any issue related to the authentication until now, andwe identified that the device with the issue was Intel. The configurations and provisioning profile used are correctly set. I was wondering if any of you encountered this issue or had an idea how to debug this? Thanks!
Posted
by qu_ack.
Last updated
.
Post not yet marked as solved
2 Replies
323 Views
Hi! I have a new game and I have setup the leaderboards and achievements in App Store Connect but all of them are "not live" and in console I see this warning: "No AchievementDescription could be found for Achievement with ID: {my_ID}" I did not do a fresh Game Center setup for a long time, but is there any way to test if achievements and leaderboards are working for nonreleased game? Thank you!
Posted
by darescore.
Last updated
.
Post not yet marked as solved
0 Replies
89 Views
I have a two-level view-based NSOutlineView, employing a data-source and delegate. It is not populated by binding. My code is all ObjC, and my problem persist since MacOS 10.11 to the current MacOS 14.4.x Because of some specific visual issue, I use a very simple subclass of NSTableRowView, which has only this: @implementation MYRowView - (void)drawRect:(NSRect)dirtyRect { self.emphasized = NO; // this affects the complicated color scheme for selection - will not use the "alternateColor" for drawing, but rather the "secondary color" - who knows what it is. This way our texts and icons and progress do NOT disappear on selected rows. [super drawRect:dirtyRect]; } @end And then later, in my NSOutlineView delegate: -(NSTableRowView *)outlineView:(NSOutlineView *)outlineView rowViewForItem:(id)item { return [OITRowView new]; } There are, other more complicated @interface OITOutlineCellView : NSTableCellView That I makeViewWithIdentifier:owner: and populate in response to NSOutlineView - (NSView *)outlineView:(NSOutlineView *)outlineView viewForTableColumn:(NSTableColumn *)tableColumn item:(id)item { Now I noticed that after adding several items (top level) with some thousands sub-level items to my outline-view, and then REMOVING them and reloading all data - my app's memory is ever increasing When I used the memory graph feature in Xcode debugger - I found a huge number (actually identical to the maximum number of rows) - all of the class MYRowView. Interestingly enough - none of my cell-views remained in memory. Now I verified - my data source reported zero items, the UI looks empty, and all functions as expected - except for this "leak" of MYRowView objects. As you can see in the code (copied exactly from my app) I only create them - and return them to the OS - I never hold any reference to these objects. So.... What Am I doing wrong, and what can I do to alleviate the issue?? The methods [NSOutlineView reloadItem:reloadChildren:] and [NSTableView reloadData] are documented to "release all related views" -- but obviously they DONT. my app gets to ~300 MB (started at 20MB) with about 7500 rows Idea anyone? What to check? what to try?
Posted
by suMac.
Last updated
.
Post not yet marked as solved
1 Replies
123 Views
I started adding GameCenter support for my visionOS game and I noticed an issue. After authenticating the player the access point shows in the location I specified but my window content gets an overlay and game cannot be used. Anybody has experience with GameCenter on visionOS and how to properly set it up and use the GKAccessPoint? Thank you! Adding a screenshot:
Posted
by darescore.
Last updated
.
Post marked as solved
2 Replies
797 Views
Hi All! I'm being asked to migrate an app which utilizes iCloud KVS (Key Value Storage). This ability is a new-ish feature, and the documentation about this is sparse [1]. Honestly, the entire documentation about the new iCloud transfer functionality seems to be missing. Same with Game Center / GameKit. While the docs say that it should work, I'd like to understand the process in more detail. Has anyone migrated an iCloud KVS app? What happens after the transfer goes through, but before the first release? Do I need to do anything special? I see that the Entitlements file has the TeamID in the Key Value store - is that fine? <key>com.apple.developer.ubiquity-kvstore-identifier</key> <string>$(TeamIdentifierPrefix)$(CFBundleIdentifier)</string> Can someone please share their experience? Thank you! [1] https://developer.apple.com/help/app-store-connect/transfer-an-app/overview-of-app-transfer
Posted Last updated
.
Post not yet marked as solved
0 Replies
183 Views
Recently (I'm not sure exactly when), the "Sign in to Game Center" banner started appearing at the top of my app when the app sets the GC authentication handler and there is no Game Center player currently signed in on the device: So far so good. But if the banner is tapped, a full "Sign In to Game Center" modal view automatically appears and covers the app without notification: This is not the sign-in view controller that the GC authentication handler normally passes when a player is not signed in, which previously gave my app control over when to present it. My app is unaware that it is covered by this new sign-in screen. Is there any way for my app to know when the user taps the "Sign In" banner and causes this new automatic sign-in screen to appear? I need to pause my game while it is covered up. In general, is there a way for my view controller to be notified when it has been covered by a modal view controller that's outside my app's control?
Posted
by ajpro.
Last updated
.
Post marked as solved
1 Replies
841 Views
I need clarification on the GKLocalPlayer.local.isMultiplayerGamingRestricted behavior which check's user's device capability (whether it is set up to allow or disallow multiplayer) I am referring to this from Apple documentation at : https://developer.apple.com/documentation/gamekit/authenticating_a_player if GKLocalPlayer.local.isMultiplayerGamingRestricted { // Disable multiplayer game features. } The issue is that this is a boolean (true/false value ) However I have noticed that iOS ( latest version and preceding versions) allow people to have the following options: ( you can set these under screen time -> content restrictions -> Multiplayer games ) Disallow all multiplayer games - presumably your API returns a false for this. Allow multiplayer with friends only -???? what does GKLocalPlayer.local.isMultiplayerGamingRestricted return here?? if True, how is the Friends only restriction handled? Are we supposed to do something to force it? Note: So far I am relying on Apple's Game Center native experience and have not added wrappers to do additional filtering etc. I hope that I shall be able to keep doing so. Allow all multiplayer games - presumably your API returns a false for this. You can see how there are three choices but this is modeled as a boolean. Choice number 2. is not addressed. Has anyone come across this? Note: This is very different from checking for underage users. No matter what I do, in my post above, it won't set the correct numbers for numbered bullet -points. I call them 1, 2, 3 it posts 1,1,2 or 1.,2,1 etc. ( side nit ) Apologies if this isn't as readable as it should be.
Posted Last updated
.
Post not yet marked as solved
0 Replies
171 Views
I've installed the GPTK before, but it pops up with some problems so I want to reinstall it again. So I deleted home brew and redownload all the materials I needed. But when it comes to install the game-porting-toolkit formula, I can't download it, did anyone have the same problem with me? jimmy@Jimmymbp14 ~ % brew -v install apple/apple/game-porting-toolkit Error: Formulae found in multiple taps: * apple/apple/game-porting-toolkit-compiler * gcenx/apple/game-porting-toolkit-compiler Please use the fully-qualified name (e.g. apple/apple/game-porting-toolkit-compiler) to refer to a specific formula. jimmy@Jimmymbp14 ~ %
Posted Last updated
.
Post not yet marked as solved
6 Replies
3k Views
Hello! Bare with me here, as there is a lot to explain! I am working on implementing a Game Center high score leaderboard into my game. I have looked around for examples of how to properly implement this code, but have come up short on finding much material. Therefore, I have tried implementing it myself based off information I found on apples documentation. Long story short, I am getting success printed when I update my score, but no scores are actually being posted (or at-least no scores are showing up on the Game Center leaderboard when opened). Before I show the code, one thing I have questioned is the fact that this game is still in development. In AppStoreConnect, the status of the leaderboard is "Not Live". Does this affect scores being posted? Onto the code. I have created a GameCenter class which handles getting the leaderboards and posting scores to a specific leaderboard. I will post the code in whole, and will discuss below what is happening. PLEASE VIEW ATTACHED TEXT TO SEE THE GAMECENTER CLASS! GameCenter class - https://developer.apple.com/forums/content/attachment/0dd6dca8-8131-44c8-b928-77b3578bd970 In a different GameScene, once the game is over, I request to post a new high score to Game Center with this line of code: GameCenter.shared.submitScore(id: GameCenterLeaderboards.HighScore.rawValue) Now onto the logic of my code. For the longest time I struggled to figure out how to submit a score. I figured out that in Xcode 12, they deprecated a lot of functions that previously worked for me. Not is seems that we have to load all leaderboards (or the ones we want). That is the purpose behind the leaderboards private variable in the Game Center class. On the start up of the app, I call authenticate player. Once this callback is reached, I call loadLeaderboards which will load the leaderboards for each string id in an enum that I have elsewhere. Each of these leaderboards will be created as a Leaderboard object, and saved in the private leaderboard array. This is so I have access to these leaderboards later when I want to submit a score. Once the game is over, I am calling submitScore with the leaderboard id I want to post to. Right now, I only have a high score, but in the future I may add a parameter to this with the value so it works for other leaderboards as well. Therefore, no value is passed in since I am pulling from local storage which holds the high score. submitScore will get the leaderboard from the private leaderboard array that has the same id as the one passed in. Once I get the correct leaderboard, I submit a score to that leaderboard. Once the callback is hit, I receive the output "Successfully submitted score to leaderboard". This looks promising, except for the fact that no score is actually posted. At startup, I am calling updatePlayerHighScore, which is not complete - but for the purpose of my point, retrieves the high score of the player from the leaderboard and is printing it out to the console. It is printing out (0), meaning that no score was posted. The last thing I have questions about is the context when submitting a score. According to the documentation, this seems to just be metadata that GameCenter does not care about, but rather something the developer can use. Therefore, I think I can cross this off as causing the problem. I believe I implemented this correctly, but for some reason, nothing is posting to the leaderboard. This was ALOT, but I wanted to make sure I got all my thoughts down. Any help on why this is NOT posting would be awesome! Thanks so much! Mark
Posted
by MDietrich.
Last updated
.
Post not yet marked as solved
2 Replies
264 Views
I am currently developing an USB HID Device, specifically a type of Joystick. However it seems that any attempt of getting a joystick to work on Mac do not work. My prototype works perfectly on Windows, being recognised as such and receiving all data. On MacOS, the Joystick is not recognised as a Joystick though, and the OS does not seem to receiver any Input from it whatsoever. I have translated my code to use both Mouse and Keyboard, both work perfectly. I have also tried to have the Joystick identify as a Gamepad, but again, it works on Windows and is not recognised on Mac (is not recognised as a Gamepad). Are there any specific restrictions to HID devices on MacOS? Apple developer only seems to describe specifics from a software standpoint, not from the standpoint of someone developing hardware. And even then it only seems to describe very specific HID devices, such as mouse, keyboard or a stylus. Please also keep in mind that I don't have much experience developing MacOS applications.
Posted Last updated
.
Post marked as solved
1 Replies
272 Views
I have a custom Objective-C ObjectCache class that utilized NSMutableDictionary to store named objects (specifically large NSImage objects). The class has a maxItems property and clear method, which worked fine. - (void)clear { @synchronized(_cache) { [_cache removeAllObjects]; } } But yesterday I received a customer feedback complaining one of my app consumes up to 24GB memory. I verified that on my M1 Mac mini, and it's true. Even after calling clear method, memory usage shown in both Xcode debugger panel and Activity Monitor remains the same. It did work before. Once I close a picture gallery window by calling clear method, memory usage dropped immediately as shown in Activity Monitor. I suspect that this is a bug in ARM architecture. Does anyone else have same problem?
Posted
by imneo.
Last updated
.
Post marked as solved
2 Replies
285 Views
Hello, I am building an app that requires players joined to an online game session and to have a video chat with both of their front cameras turned on. I currently know that GameKit supports the voice chat option but could not find any source for video chat. Is it possible set up a video chat on an online game session?. What libraries can I use that have support in implementing the video chat (AVFoundation) ? Your assistance is greatly appreciated.
Posted Last updated
.
Post not yet marked as solved
0 Replies
524 Views
We are noticing below iOS crash majorly happening from iOS 17 version. Can someone please check and let me know what might be causing this crash and how to solve this? Attached full crash report from app store. Last Exception Backtrace: 0 CoreFoundation 0x1b5cce69c __exceptionPreprocess + 164 (NSException.m:249) 1 libobjc.A.dylib 0x1adf67c80 objc_exception_throw + 60 (objc-exception.mm:356) 2 UIKitCore 0x1b8592ab4 -[UIViewController _presentViewController:withAnimationController:completion:] + 4236 (UIViewController.m:0) 3 UIKitCore 0x1b859312c __63-[UIViewController _presentViewController:animated:completion:]_block_invoke + 92 (UIViewController.m:9730) 4 UIKitCore 0x1b7f36fac -[_UIViewControllerTransitionCoordinator _applyBlocks:releaseBlocks:] + 128 (UIViewControllerTransitioning.m:1205) 5 UIKitCore 0x1b7f36ab4 -[_UIViewControllerTransitionContext _runAlongsideCompletions] + 140 (UIViewControllerTransitioning.m:393) 6 UIKitCore 0x1b7f36144 -[_UIViewControllerTransitionContext completeTransition:] + 128 (UIViewControllerTransitioning.m:307) 7 UIKitCore 0x1b80a9460 -[UITransitionView notifyDidCompleteTransition:] + 180 (UITransitionView.m:280) 8 UIKitCore 0x1b80a9118 -[UITransitionView _didCompleteTransition:] + 832 (UITransitionView.m:249) 9 UIKitCore 0x1b7e91d78 UIVIEW_IS_EXECUTING_ANIMATION_COMPLETION_BLOCK + 36 (UIView.m:16376) 10 UIKitCore 0x1b7e91510 -[UIViewAnimationBlockDelegate _didEndBlockAnimation:finished:context:] + 624 (UIView.m:16409) 11 UIKitCore 0x1b7e90b88 -[UIViewAnimationState sendDelegateAnimationDidStop:finished:] + 436 (UIView.m:0) 12 UIKitCore 0x1b7e72d84 -[UIViewAnimationState animationDidStop:finished:] + 196 (UIView.m:2407) 13 UIKitCore 0x1b7e72e98 -[UIViewAnimationState animationDidStop:finished:] + 472 (UIView.m:2426) 14 QuartzCore 0x1b725f980 run_animation_callbacks(void*) + 132 (CALayer.mm:7713) 15 libdispatch.dylib 0x1bdbd9300 _dispatch_client_callout + 20 (object.m:561) 16 libdispatch.dylib 0x1bdbe7998 _dispatch_main_queue_drain + 984 (queue.c:7813) 17 libdispatch.dylib 0x1bdbe75b0 _dispatch_main_queue_callback_4CF + 44 (queue.c:7973) 18 CoreFoundation 0x1b5c1901c CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE + 16 (CFRunLoop.c:1780) 19 CoreFoundation 0x1b5c15d28 __CFRunLoopRun + 1996 (CFRunLoop.c:3149) 20 CoreFoundation 0x1b5c15478 CFRunLoopRunSpecific + 608 (CFRunLoop.c:3420) 21 GraphicsServices 0x1f91964f8 GSEventRunModal + 164 (GSEvent.c:2196) 22 UIKitCore 0x1b803962c -[UIApplication _run] + 888 (UIApplication.m:3685) 23 UIKitCore 0x1b8038c68 UIApplicationMain + 340 (UIApplication.m:5270) 24 UnityFramework 0x11151c310 -[UnityFramework runUIApplicationMainWithArgc:argv:] + 92 (main.mm:124) 25 myapp 0x10497c17c main + 60 (main.mm:26) 26 dyld 0x1d894edcc start + 2240 (dyldMain.cpp:1269) Kernel Triage: VM - (arg = 0x3) mach_vm_allocate_kernel failed within call to vm_map_enter VM - (arg = 0x3) mach_vm_allocate_kernel failed within call to vm_map_enter VM - (arg = 0x3) mach_vm_allocate_kernel failed within call to vm_map_enter VM - (arg = 0x3) mach_vm_allocate_kernel failed within call to vm_map_enter VM - (arg = 0x3) mach_vm_allocate_kernel failed within call to vm_map_enter Thread 0 name: Thread 0 Crashed: 0 libsystem_kernel.dylib 0x00000001fd349fbc __pthread_kill + 8 (:-1) 1 libsystem_pthread.dylib 0x000000021fc0b680 pthread_kill + 268 (pthread.c:1681) 2 libsystem_c.dylib 0x00000001bdc91c24 __abort + 136 (abort.c:159) 3 libsystem_c.dylib 0x00000001bdc91b9c abort + 192 (abort.c:126) 4 libc++abi.dylib 0x000000021fb35ff8 abort_message + 132 (abort_message.cpp:78) 5 libc++abi.dylib 0x000000021fb25f90 demangling_terminate_handler() + 348 (cxa_default_handlers.cpp:77) 6 libobjc.A.dylib 0x00000001adf6ada4 _objc_terminate() + 144 (objc-exception.mm:496) 7 UnityFramework 0x000000011358d254 CPPExceptionTerminate() + 332 (BSG_KSCrashSentry_CPPException.mm:137) 8 libc++abi.dylib 0x000000021fb353bc std::__terminate(void (*)()) + 16 (cxa_handlers.cpp:59) 9 libc++abi.dylib 0x000000021fb35360 std::terminate() + 108 (cxa_handlers.cpp:88) 10 libdispatch.dylib 0x00000001bdbd9314 _dispatch_client_callout + 40 (object.m:564) 11 libdispatch.dylib 0x00000001bdbe7998 _dispatch_main_queue_drain + 984 (queue.c:7813) 12 libdispatch.dylib 0x00000001bdbe75b0 _dispatch_main_queue_callback_4CF + 44 (queue.c:7973) 13 CoreFoundation 0x00000001b5c1901c CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE + 16 (CFRunLoop.c:1780) 14 CoreFoundation 0x00000001b5c15d28 __CFRunLoopRun + 1996 (CFRunLoop.c:3149) 15 CoreFoundation 0x00000001b5c15478 CFRunLoopRunSpecific + 608 (CFRunLoop.c:3420) 16 GraphicsServices 0x00000001f91964f8 GSEventRunModal + 164 (GSEvent.c:2196) 17 UIKitCore 0x00000001b803962c -[UIApplication _run] + 888 (UIApplication.m:3685) 18 UIKitCore 0x00000001b8038c68 UIApplicationMain + 340 (UIApplication.m:5270) 19 UnityFramework 0x000000011151c310 -[UnityFramework runUIApplicationMainWithArgc:argv:] + 92 (main.mm:124) 20 myapp 0x000000010497c17c main + 60 (main.mm:26) 21 dyld 0x00000001d894edcc start + 2240 (dyldMain.cpp:1269) NSInvalidArgumentException.txt
Posted
by EshwarZy.
Last updated
.
Post not yet marked as solved
0 Replies
316 Views
We noticing below crash mainly happening in iOS 17. Can someone check and confirm what is the root cause for this and how to fix the crash. GKAppLevelSignInVisibility fetchAppLevelVisibilityConstraintsWithHandler Thread 36 Crashed: 0 CoreFoundation 0x00000001904a9d6c -[__NSDictionaryM setObject:forKeyedSubscript:] + 452 (NSDictionaryM.m:202) 1 GameCenterUICore 0x000000020fe6d508 __76+[GKAppLevelSignInVisibility fetchAppLevelVisibilityConstraintsWithHandler:]_block_invoke_3 + 84 (GKAppLevelSignInVisibility.m:82) 2 GameCenterFoundation 0x00000001c8b8971c @objc closure #1 in LimitedPresentationManager.presentationDisabled(config:context:) + 268 3 GameCenterFoundation 0x00000001c8b8b111 partial apply for @objc closure #1 in LimitedPresentationManager.presentationDisabled(config:context:) + 1 4 GameCenterFoundation 0x00000001c8b8b101 thunk for @escaping @callee_guaranteed @Sendable @async () -> () + 1 5 GameCenterFoundation 0x00000001c8b8b105 partial apply for thunk for @escaping @callee_guaranteed @Sendable @async () -> () + 1 6 GameCenterFoundation 0x00000001c8b8aa0d specialized thunk for @escaping @callee_guaranteed @Sendable @async () -> (@out A) + 1 (:0) 7 GameCenterFoundation 0x00000001c8b8ab6d partial apply for specialized thunk for @escaping @callee_guaranteed @Sendable @async () -> (@out A) + 1 (:0) 8 libswift_Concurrency.dylib 0x000000019b78da41 completeTaskWithClosure(swift::AsyncContext*, swift::SwiftError*) + 1 (Task.cpp:463) Full iOS crash log
Posted
by EshwarZy.
Last updated
.
Post not yet marked as solved
0 Replies
221 Views
GKLocalPlayer.local.authenticateHandler = {viewController, error in When authenticating a player using authenticateHandler, the completion handler is only called if the player is already logged in. If the player is not logged in, the authentication window will appear but the completion handler is never called. If I have content in a volumetric window that obscures the login window (which appears at a slight Z increase from the parent window), what can I do? If the completion handler was being called then I could make adjustments to my view, but it never gets called if the user is not already logged in. https://developer.apple.com/documentation/gamekit/authenticating_a_player Thanks.
Posted
by Appyou234.
Last updated
.