在 Unity SDK 中实现观察者模式

如果你已有自己的购买基础设施,暂时不打算完全切换到 Adapty,可以了解一下观察者模式。在基础形态下,观察者模式提供了高级分析功能,并可与归因和分析系统无缝集成。

如果这能满足您的需求,只需:

  1. 在配置 Adapty SDK 时,将 observerMode 参数设置为 true 以启用该功能。请按照 Unity 的安装说明进行操作。
  2. 将现有购买基础设施中的交易上报给 Adapty

在 SDK v4 中,你也可以在 Observer 模式下展示 Adapty 渲染的流程和付费墙:当用户点击购买或恢复按钮时,SDK 会将该操作交回给你的代码,由你自行执行购买或恢复逻辑。详见 在 Observer 模式下展示流程

观察者模式设置

如果您自行处理购买和订阅状态,并使用 Adapty 发送订阅事件和分析数据,请开启观察者模式。

在观察者模式下运行时,Adapty SDK 不会关闭任何交易,请确保您自行处理。

在 SDK 4.0 中,监听器接口遵循 C# I 前缀约定:请实现 IAdaptyEventListener 而非 AdaptyEventListener。方法保持不变。请参阅迁移指南

using UnityEngine;
using AdaptySDK;

public class AdaptyListener : MonoBehaviour, AdaptyEventListener {
    void Start() {
        DontDestroyOnLoad(this.gameObject);
        Adapty.SetEventListener(this);

        var builder = new AdaptyConfiguration.Builder("YOUR_PUBLIC_SDK_KEY")
            .SetObserverMode(true); // Enable observer mode

        Adapty.Activate(builder.Build(), (error) => {
            if (error != null) {
                // handle the error
                return;
            }
        });
    }

    public void OnLoadLatestProfile(AdaptyProfile profile) { }
    public void OnInstallationDetailsSuccess(AdaptyInstallationDetails details) { }
    public void OnInstallationDetailsFail(AdaptyError error) { }
}
参数描述
observerMode布尔值,用于控制观察者模式。默认值为 false

在观察者模式下使用 Adapty 付费墙

如果您还想使用 Adapty 的付费墙和 A/B 测试功能,也是可以的——但在观察者模式下需要一些额外的设置。除了上述步骤之外,您还需要:

  1. 按照远程配置付费墙的常规方式展示付费墙。
  2. 将付费墙与购买交易进行关联