# 快速入门

> 在 Flutter 中设置 Tapjoy，包括导入插件、添加 SDK 密钥并在应用中初始化，以便您可以快速开始请求广告位。

## 最低要求##minimum-requirements

* Flutter：3.3.0
* Dart：3.0.0
* iOS：13.0
* Android：5.0 (API 21)

## SDK 集成##sdk-integration

为了与应用集成，第一步是安装 Tapjoy Flutter 插件。

### Pub.dev##pub.dev

```zsh
flutter pub add tapjoy_offerwall
```

#### 添加 Offerwall Maven 代码仓库 (Android)##add-the-offerwall-maven-repository-(android)

将 Offerwall Maven 代码仓库和 Offerwall SDK 依赖项添加到您的 android/app/build.gradle 文件中。

```java
repositories {
    maven {
        name "Tapjoy's maven repo"
        url "https://sdk.tapjoy.com/"
    }
}

dependencies {
    implementation 'com.tapjoy:tapjoy-android-sdk:14.4.0'
}
```

然后，可以将 Tapjoy 导入您的应用程序以使用该插件：

```dart
import 'package:tapjoy_offerwall/tapjoy_offerwall.dart';
```

## 连接到 Tapjoy##connect-to-tapjoy

我们初始化 Offerwall SDK 的方法是使用 connect 调用。在应用启动后尽快执行此调用。

```dart
final Map<String, dynamic> optionFlags = {};

Tapjoy.connect(
    sdkKey:
        'SDK_KEY',
    options: optionFlags,
    onConnectSuccess: () async {

    },
    onConnectFailure: (int code, String? error) async {

    },
    onConnectWarning: (int code, String? warning) async {

    });
```

完成 Tapjoy 的配置后，即可构建和运行您的应用程序。

### Logging##logging

可使用以下方法来获取和设置日志记录级别。

```dart
// Set logging level
Tapjoy.setLoggingLevel(TJLoggingLevel.debug)

// Get logging level
var loggingLevel = await Tapjoy.getLoggingLevel();
```

### 最大用户等级##max-user-level

您可以告诉 Tapjoy 您的游戏中有多少关卡。此值可以在调用 connect 之前或之后设置。

```dart
Tapjoy.setMaxLevel(10); 
```

### 用户细分段##user-segment

您可以通过调用 `setUserSegment` 将用户标识为某个细分段的一部分。此设置可以在调用 connect 之前或之后进行。

```dart
Tapjoy.setUserSegment(TJSegment.nonPayer);
Tapjoy.setUserSegment(TJSegment.payer);
Tapjoy.setUserSegment(TJSegment.vip);
Tapjoy.setUserSegment(TJSegment.unknown);
```

## 请求应用追踪透明度授权##request-app-tracking-transparency-authorization

如果应用程序需要使用[应用追踪透明度](https://developer.apple.com/documentation/apptrackingtransparency)框架，为了显示 IDFA 访问权限请求对话框，请更新 Info.plist，在其中包含 NSUserTrackingUsageDescription 键以及自定义消息（描述在应用程序中需要此权限才能使用 IDFA）。

接下来安装 `app_tracking_transparency` [包](https://pub.dev/packages/app_tracking_transparency)：

```zsh
flutter pub add app_tracking_transparency
```

导入库，然后显示权限对话框：

```dart
import 'package:app_tracking_transparency/app_tracking_transparency.dart';

...

final status = await AppTrackingTransparency.requestTrackingAuthorization();
```
