---
title: "在 Android SDK 中实现观察者模式"
description: "在 Adapty 中实现观察者模式，以在 Android SDK 中追踪用户订阅事件。"
---

如果您已经拥有自己的购买基础设施，并且还未准备好完全切换到 Adapty，您可以探索[观察者模式](observer-vs-full-mode)。在其基本形式下，观察者模式提供高级分析功能，并可与归因和分析系统无缝集成。

如果这满足您的需求，您只需要：
1. 在配置 Adapty SDK 时通过将 `observerMode` 参数设置为 `true` 来开启该模式。请按照 [Android](sdk-installation-android#activate-adapty-module-of-adapty-sdk) 的设置说明进行操作。
2. 将您现有购买基础设施中的[交易上报](report-transactions-observer-mode-android)给 Adapty。

## 观察者模式设置 \{#observer-mode-setup\}

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

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

<Tabs groupId="current-os" queryString>
<TabItem value="kotlin" label="Kotlin" default>

```kotlin showLineNumbers
class MyApplication : Application() {
override fun onCreate() {
    super.onCreate()
    Adapty.activate(
      applicationContext,
      AdaptyConfig.Builder("PUBLIC_SDK_KEY")
          .withObserverMode(true) //default false
          .build()
    )  
}
```

</TabItem>
<TabItem value="java" label="Java" default>

```java showLineNumbers
public class MyApplication extends Application {
@Override
public void onCreate() {
    super.onCreate();
    Adapty.activate(
      applicationContext,
      new AdaptyConfig.Builder("PUBLIC_SDK_KEY")
          .withObserverMode(true) //default false
          .build()
    );
}
```

</TabItem>
</Tabs>

参数：

| 参数                        | 描述                                                         |
| --------------------------- | ------------------------------------------------------------ |
| observerMode                | 一个布尔值，用于控制[观察者模式](observer-vs-full-mode)。默认值为 `false`。 |

## 在观察者模式中使用 Adapty 付费墙 \{#using-adapty-paywalls-in-observer-mode\}

如果您还希望使用 Adapty 的付费墙和 A/B 测试功能，您可以这样做——但在观察者模式下需要一些额外的设置。除上述步骤外，您还需要执行以下操作：

1. 按照常规方式展示[远程配置付费墙](present-remote-config-paywalls-android)。对于付费墙编辑工具付费墙，请参阅 [Android](android-present-paywall-builder-paywalls-in-observer-mode) 的专项设置指南。
3. 将付费墙与购买交易[关联](report-transactions-observer-mode-android)。