版本:Unity 6 (6000.0)
语言:English
准备应用内购买
构建和交付 iOS 应用

社交 API

注意:社交 API 已弃用,将在未来版本中移除。

社交 API 是 Unity 访问社交功能的入口点,例如

  • 用户资料
  • 好友列表
  • 成就
  • 统计数据/排行榜

它提供了一个统一的接口来访问不同的社交后端,例如 GameCenter,主要供游戏项目的程序员使用。

社交 API 主要是一个异步 API,使用它的典型方式是调用一个函数并注册一个回调函数,以便在该函数完成后执行。异步函数可能会有副作用,例如填充 API 中的某些状态变量,回调函数可能包含来自服务器的数据以供处理。

Social 类位于 UnityEngine 命名空间中,因此始终可用,但其他 Social API 类则保留在其自己的命名空间 UnityEngine.SocialPlatforms 中。此外,Social API 的实现位于子命名空间中,例如 SocialPlatforms.GameCenter。

以下是如何使用 Social API 的示例

using UnityEngine;
using UnityEngine.SocialPlatforms;

public class SocialExample : MonoBehaviour {

    void Start () {
        // Authenticate and register a ProcessAuthentication callback
        // This call needs to be made before we can proceed to other calls in the Social API
        Social.localUser.Authenticate (ProcessAuthentication);
    }

    // This function gets called when Authenticate completes
    // Note that if the operation is successful, Social.localUser will contain data from the server.
    void ProcessAuthentication (bool success) {
        if (success) {
            Debug.Log ("Authenticated, checking achievements");

            // Request loaded achievements, and register a callback for processing them
            Social.LoadAchievements (ProcessLoadedAchievements);
        }
        else
            Debug.Log ("Failed to authenticate");
    }

    // This function gets called when the LoadAchievement call completes
    void ProcessLoadedAchievements (IAchievement[] achievements) {
        if (achievements.Length == 0)
            Debug.Log ("Error: no achievements found");
        else
            Debug.Log ("Got " + achievements.Length + " achievements");

        // You can also call into the functions like this
        Social.ReportProgress ("Achievement01", 100.0, result => {
            if (result)
                Debug.Log ("Successfully reported achievement progress");
            else
                Debug.Log ("Failed to report achievement");
        });
    }
}

有关 Social API 的更多信息,请参阅 Social API 脚本参考

准备应用内购买
构建和交付 iOS 应用