账户注册及认证
使用 Facebook 账户进行注册和认证。支持 iOS、Android 通用。
URL 确认
此 API 使用 service-account.playnanoo.com 域名。
API 信息
- URL:
https://service-account.playnanoo.com/api/v20240101/social/signin - Method:
PUT - 需要认证: 否
请求参数
| 参数 | 类型 | 必需 | 说明 |
|---|---|---|---|
| account_token | string | 必需 | 社交登录令牌(Facebook Access Token) |
| account_type | string | 必需 | 账户类型(PN_ACCOUNT_FACEBOOK = "FACEBOOK") |
DeviceInfo 继承
此 API 的 Req 类继承自 DeviceInfo。DeviceInfo 的所有属性将自动包含。
响应数据
Res 类
| 字段 | 类型 | 说明 |
|---|---|---|
| Token | SerializeTokenData | 令牌信息 |
| Player | SerializePlayerData | 玩家信息 |
SerializeTokenData 结构
| 字段 | 类型 | 说明 |
|---|---|---|
| AccessToken | string | 访问令牌 |
| RefreshToken | string | 刷新令牌 |
SerializePlayerData 结构
| 字段 | 类型 | 说明 |
|---|---|---|
| UserUniqueID | string | 用户唯一 ID |
| OpenID | string | 开放 ID |
| Nickname | string | 昵称 |
| LinkedID | string | 关联 ID |
| LinkedType | string | 关联类型 |
| PurchaseCount | int | 购买次数 |
| PurchaseCurrencyCode | string | 购买货币代码 |
| PurchaseTotalPrice | double | 购买总金额 |
| PurchaseVoidedCount | int | 退款次数 |
| PurchaseVoidedCurrencyCode | string | 退款货币代码 |
| PurchaseVoidedTotalPrice | double | 退款总金额 |
| Country | string | 国家 |
| Timezone | string | 时区 |
| Offset | int | 时间偏移量 |
| JoinPeriod | int | 注册时长 |
Unity C# 实现
using UnityEngine;
using Facebook.Unity;
using System.Collections.Generic;
public class FacebookSignInExample : MonoBehaviour
{
void Start()
{
if (!FB.IsInitialized)
{
FB.Init(OnFBInitComplete, OnFBHideUnity);
}
else
{
FB.ActivateApp();
}
}
void OnFBInitComplete()
{
if (FB.IsInitialized)
{
FB.ActivateApp();
}
else
{
Debug.Log("Failed to Initialize the Facebook SDK");
}
}
void OnFBHideUnity(bool isShow)
{
Time.timeScale = isShow ? 1 : 0;
}
public void FacebookSignIn()
{
var para = new List<string>() { "public_profile", "email" };
FB.LogInWithReadPermissions(para, FacebookAuthCallback);
}
void FacebookAuthCallback(ILoginResult result)
{
if (FB.IsLoggedIn)
{
// SocialSignin API 호출
SocialSignin(result.AccessToken.TokenString);
}
else
{
Debug.Log("Login Cancel");
}
}
private void SocialSignin(string token)
{
//SocialSignIn(token, PN_ACCOUNT_FACEBOOK);
}
}
使用方法
1. 开始 Facebook 登录
FacebookSignIn();
显示 Facebook 登录窗口,用户使用 Facebook 账户进行认证。
2. 使用令牌进行账户关联
认证完成后,使用 SocialSignin 方法中获取的 token 调用 PlayNANOO API:
新登录(SocialSignIn)
public void SocialSignIn(string token, string accountType)
{
// Facebook 账户首次登录
//accountType : PN_ACCOUNT_FACEBOOK
}
参考
- 账户类型值:
PN_ACCOUNT_FACEBOOK = "FACEBOOK"- 详细信息请参考 其他 > 账户类型信息 - 会员转换:请参考 游客关联 > 会员转换 文档