如何在Voice中选择中国区域
地区
可用区域
Photon Cloud光子云在多个地区都有服务器,分布在全球多个托管中心。
每个Photon Cloud光子云区域由“区域标记”标识。
可用区域和令牌清单:
地区 | 托管在 | 令牌 |
---|---|---|
亚洲 | 新加坡 | asia |
澳大利亚 | 墨尔本 | au |
加拿大,东部 | 蒙特利尔 | cae |
中国大陆( 请见本文末) | 上海BGP | cn |
欧洲 | 阿姆斯特丹 | eu |
印度 | 钦奈 | in |
日本 | 东京 | jp |
南美洲 | 圣保罗 | sa |
韩国 | 汉城 | kr |
美国,东部 | 华盛顿 | us |
美国,西部 | 圣荷西 | usw |
仪表板区域过滤
您可以直接从仪表板过滤每个应用程序的可用Photon Cloud光子云区域列表。
转到仪表板,然后单击所选应用程序的“管理”,然后单击“编辑”。 您将找到一个输入字段,您可以在其中输入列入白名单的区域,如下所示:
- 允许的列表应该是用分号分隔的区域标记字符串。 例如“eu; us”。
- 区域令牌不区分大小写,并在此定义。
- 未定义或无法识别的区域令牌将从列表中忽略。
- 空(“”)或格式不正确的字符串(例如“;;”)表示空列表。
- 空列表表示允许所有可用区域。
确认并保存后, GetRegions操作将只返回过滤的区域列表。 因此,客户端应该从该列表中选择任何可用的区域,但请考虑到仪表盘的更新可能需要10分钟左右的时间(根据网络情况而定)。
使用中国大陆地区
为了稳定和可靠的链接,光子NameServer架设在本地,否则连接很可能无法稳定。 中国的NameServer是“ns.photonengine.cn”。
与来自中国大陆以外的客户端通讯很可能不会产生好的结果。 此外,从光子服务器连接到中国大陆以外的服务器(例如,自定义身份验证,WebHooks,WebRPC)可能并不可靠。
重要提示 :在目前阶段,您通过信息中心对应用进行的更改不会自动反映在中国的应用缓存中。 如果您有更新请求,请通过电子邮件通知我们。
同样出于法律原因,您需要为中国单独构建AppId,我们建议使用单独的AppId。 例如,使用条件编译(您选择的)来根据根据条件更改AppId和Photon NameServer。
按照这些说明为中国市场打造特别版本:
光子语音 Photon Voice
1. 将AppId设置为已解锁中国区域的应用程序。 如果你想使用相同的项目,并有不同的Build,可以这样设置:
void Awake() { // TODO: replace compile condition with your own #if CHINA PhotonNetwork.PhotonServerSettings.VoiceAppID = "ChinaVoiceAppId"; // TODO: replace with your own AppId #else PhotonNetwork.PhotonServerSettings.VoiceAppID = "nonChinaVoiceAppId"; // TODO: replace with your own AppId #endif }
2. 打开 “LoadBalancingClient.cs “文件,设置NameServerHost为 “ns.photonengine.cn”。
// TODO: replace compile condition with your own #if CHINA public const string NameServerHost = "ns.photonengine.cn"; #else public const string NameServerHost = "ns.exitgames.com"; #endif
由于光子语音中包含光子PUN,因此我们还需要遵循PUN所需的步骤。 光子语音将自动连接到相同的服务器。
PUN
1. 将AppId设置为已解锁中国区域的应用程序。 如果你想使用相同的项目,并有不同的Build,可以这样设置:
void Awake() { // TODO: replace compile condition with your own #if CHINA PhotonNetwork.PhotonServerSettings.AppID = "ChinaPUNAppId"; // TODO: replace with your own AppId #else PhotonNetwork.PhotonServerSettings.AppID = "nonChinaPUNAppId"; // TODO: replace with your own AppId #endif }
2. 打开“NetworkingPeer.cs”文件并将NameServerHost
设置为“ns.photonengine.cn”:
// TODO: replace compile condition with your own #if CHINA public const string NameServerHost = "ns.photonengine.cn"; #else public const string NameServerHost = "ns.exitgames.com"; #endif
3. 更新CloudRegionCode
和CloudRegionFlag
枚举以添加新的“CN”(或“cn”)区域标记,如下所示:
public enum CloudRegionCode
{
// ...
// TODO: replace compile condition with your own
#if CHINA
///<summary>Chinese Mainland, Guang Dong area, cn</summary>
cn = 11,
#endif
};
[Flags]
public enum CloudRegionFlag
{
// ...
// TODO: replace compile condition with your own
#if CHINA
cn = 1 << 10,
#endif
};
4. 使用PhotonNetwork.ConnectToRegion(CloudRegionCode.cn, gameVersion)
连接到中国大陆地区。
// TODO: replace compile condition with your own
#if CHINA
PhotonNetwork.ConnectToRegion(CloudRegionCode.cn, gameVersion);
#else
// TODO: connect to any other region
#endif