Sign In Register

How can we help you today?

Start a new topic
Answered

Link Facebook as in Hay Day

Hi. I've been given a task by my customer to implement Facebook linking as in Hay Day game. Here's an exact scenario I'm interested in: 1. Player starts the game and login is made automatically via device id. 2. He links Facebook. 3. He starts the game on another device. Different account is created automatically by device id. 4. He links Facebook. The data for the account linked to Facebook is loaded. Switch happens. 5. Player unlinks Facebook. 6. He exits the game and starts it again. Result: old account linked to device id is loaded. Expected result: account transferred to this device via Facebook should load. Is it possible to achieve expected result with GameSparks? Thanks.

Best Answer

Hi Anatolii,


1) No, what you'll have is a Facebook account associated with a particular account. That Facebook Id is then used as the path back into that account from any device that user logs in with later. So if a user uses a DeviceAuthentication on Device A followed by a FacebookConnectRequest, he same flow on Device B (or C,D,E etc...). With switchIfPossible set to true (when sending the FacebookConnectRequest) it will ensure that any device that the player authenticates with will be switched back to the account that is associated with this Facebook Id. A Device


2) No, it's not possible to do this. The deviceId is stored in the userName of the player but you're not going to know the deviceId of the new device ahead of time so there will be no way to access the old account from the new device. That's why we don't allow a user to un link a social account with no password set.


DeviceIds are prone to change from time to time. Application updates and re installs can lead to this id changing in Unity. Relying on them as a reliable means of authentication isn't a great idea. Having a password set or a social account linked would be the way to go here. If the player un links the Facebook account they will need a password set if its the only linked social account. They have no path back to the original account without one. Does that make sense ?


Regards,

Liam

 


1 person has this question

Hi Anatolli,


We've picked this up in your ticket so will continue the discussion with you there.


Regards,

Liam

Answer

Hi Anatolii,


1) No, what you'll have is a Facebook account associated with a particular account. That Facebook Id is then used as the path back into that account from any device that user logs in with later. So if a user uses a DeviceAuthentication on Device A followed by a FacebookConnectRequest, he same flow on Device B (or C,D,E etc...). With switchIfPossible set to true (when sending the FacebookConnectRequest) it will ensure that any device that the player authenticates with will be switched back to the account that is associated with this Facebook Id. A Device


2) No, it's not possible to do this. The deviceId is stored in the userName of the player but you're not going to know the deviceId of the new device ahead of time so there will be no way to access the old account from the new device. That's why we don't allow a user to un link a social account with no password set.


DeviceIds are prone to change from time to time. Application updates and re installs can lead to this id changing in Unity. Relying on them as a reliable means of authentication isn't a great idea. Having a password set or a social account linked would be the way to go here. If the player un links the Facebook account they will need a password set if its the only linked social account. They have no path back to the original account without one. Does that make sense ?


Regards,

Liam

 

Login to post a comment