PlayEveryWare / eos_plugin_for_unity

Repository for PlayEveryWare's EOS Plugin for Unity, bringing the functionality of Epic Online Services to the Unity Game Engine.
https://eospluginforunity.playeveryware.com
283 stars 55 forks source link

s_localProductUserId can be in an invalid value. #43

Closed c3-hoge-fuga-piyo closed 2 years ago

c3-hoge-fuga-piyo commented 2 years ago

Since there is no way to change s_localProductUserId externally, could it become invalid when calling an API that could (presumably) destroy the existing ProductUserId , such as EOS_Connect_TransferDeviceIdAccount ?

https://dev.epicgames.com/docs/services/en-US/GameServices/Connect/index.html#linkingdeviceidbasedgameprogressionwithanexistinglinkedaccountskeychain

acolean-pew commented 2 years ago

Yes, that is correct. With the current version of the Unity plugin we expect the majority of EOS API methods to be called through the EOSManager wrapper class (especially any EOS API methods that could alter the local ProductUserId ). We recently added a wrapper method specifically for calling the EOS_Connect_TransferDeviceIdAccount function which is EOSManager.Instance.ConnectTransferDeviceIDAccount. This method correctly handles updating the s_localProductUserId upon completion.