Hello! We were struggled with this error in the past days and we found a workaround. Open the GKIdentityVerificationResponse.cs script and change the GKIdentityVerificationResponse function from internal to public and the error will be solved!
public GKIdentityVerificationResponse(ulong timestamp,
IntPtr publicKeyUrl, int publicKeyUrlLength,
IntPtr signature, int signatureLength,
IntPtr salt, int saltLength)
{
Timestamp = timestamp;
var publicKeyUrlBytes = new byte[publicKeyUrlLength];
Marshal.Copy(publicKeyUrl, publicKeyUrlBytes, 0, publicKeyUrlLength);
PublicKeyUrl = System.Text.Encoding.UTF8.GetString(publicKeyUrlBytes);
Signature = new byte[signatureLength];
Marshal.Copy(signature, Signature, 0, signatureLength);
Salt = new byte[saltLength];
Marshal.Copy(salt, Salt, 0, saltLength);
}
Hello guys! We were having a lot of problems in the past few days with this error in FetchItems and we finally made a build with success and here go some advices:
1 - The GitHub - muZZkat/unityplugins at muzzkat/fix-fetch-items branch fixes the FetchItems Bad Access error in IOS build.
2 - Make sure you are in muZZkatās branch, you have to enter the git and checkout to fix-fetch-items branch.
3 - To make sure if you are in muZZkatās branch, the functions GetSignature() and GetSalt() must be missing. You have to change those functions with .Signature and .Salt variables.
4 - If your Unity Editor logs an error saying that the script doesnāt have access/permission to the class, go to GKIdentityVerificationResponse.cs script and change the GKIdentityVerificationResponse() function from internal to public.
did anyone successfully use muzzkat/fix-fetch-items fix and verify on the server side something seems not vaild.
edit: found what i did wrong, it works, use Team Player ID not Game Player Id
Second fix causes to GetSalt and GetSignature methods change to Salt and Signature fields so you have to use those.
It seems to be working, on client and serverside too, tested on iOS devices, not tested on macOS or anything else.
I used recomended unity 2020.3.33 to build the plugins with command python3 build.py -m iOS. My xCode version is 14.2
@SebT_Unity Is there any news on the fixes? It has been over half a year. On the latest version of Unity 2023.2.0b5, both macOS and iOS cannot build while using the apple plugin.
Itās just awful to see. My current projects work this way. And I donāt know at all what to do so that users donāt lose their data. The worst part is that there is no replacement, and there doesnāt seem to be one.
There is a serious issue here, Unity Authentication and cloud saves is unusable if this is not fixed quickly. The normal way of implementing it cannot be by merging a PR of some dude with a commit from another dude.
Even with this fixes, the plugin does not provide necessary data to sign in with Unity.
Unfortunately I decided to leave unity services and started working on my own, simpler solution on mysql, as I donāt see any way out and canāt trust solutions from Unity if such simple things canāt be fixed for more than half a year. Itās absolutely frustrating
Hello everyone,
Apologies for the delayed response. We are still collaborating with Apple to provide an update on the Apple Unity plugin for a permanent solution. In the meantime, we wanted to share this document with you that offers a workaround.
Please let us know if you have any feedback on this document, and weāll make updates as necessary. Thank you!
Hi MousePods
I finally managed to install everything and build on Unity 2021.3.31.f1, thanks to the muzzkat fixes .
Did you manage to make Cloud save work? Unfortunately I cannot see these Gamekit Cloud save bindings in our Unity wrapper.
Going to try that solution though but Iām not confident itāll work as itās yet another merge from another unofficial branch.
Seriously how can the plugin still have such basic issues six to eight months after its been reported.
Also cross platform games that tries to compile for a different platform on Windows gives a error just for having the apple addon included.