---
title: "Kotlin Multiplatform SDKでユーザー属性を設定する"
description: "Adaptyでユーザー属性を設定して、オーディエンスのセグメンテーションを改善する方法を学びます。"
---

メールアドレスや電話番号など、アプリのユーザーにオプションの属性を設定できます。設定した属性は、ユーザー[セグメント](segments)の作成やCRMでの確認に活用できます。

### ユーザー属性の設定 \{#setting-user-attributes\}

ユーザー属性を設定するには、`.updateProfile()` メソッドを呼び出します。

```kotlin showLineNumbers

val builder = AdaptyProfileParameters.Builder()
    .withEmail("email@email.com")
    .withPhoneNumber("+18888888888")
    .withFirstName("John")
    .withLastName("Appleseed")
    .withGender(AdaptyProfile.Gender.FEMALE)
    .withBirthday(AdaptyProfile.Date(1970, 1, 3))
  
Adapty.updateProfile(builder.build())
    .onSuccess {
        // profile updated successfully
    }
    .onError { error ->
        // handle the error
    }
```

`updateProfile` メソッドで以前に設定した属性はリセットされません。

:::tip

Adapty SDK がモバイルアプリにどのように統合されているか、実際の例を見てみませんか？ペイウォールの表示、購入処理、その他の基本機能を含む完全なセットアップを実演している[サンプルアプリ](sample-apps)をご覧ください。

:::

### 使用可能なキーの一覧 \{#the-allowed-keys-list\}

`AdaptyProfileParameters.Builder` で使用できるキー `<Key>` と値 `<Value>` は以下のとおりです。

| キー | 値 |
|---|-----|
| <p>email</p><p>phoneNumber</p><p>firstName</p><p>lastName</p> | String |
| gender | Enum（使用可能な値: `AdaptyProfile.Gender.FEMALE`、`AdaptyProfile.Gender.MALE`、`AdaptyProfile.Gender.OTHER`） |
| birthday | Date |

### カスタムユーザー属性 \{#custom-user-attributes\}

独自のカスタム属性を設定できます。これらは通常、アプリの使用状況に関連するものです。たとえば、フィットネスアプリであれば週あたりのエクササイズ回数、語学学習アプリであればユーザーの習熟度レベルなどが考えられます。セグメントで使用してターゲットを絞ったペイウォールやオファーを作成したり、アナリティクスでどのプロダクト指標が収益に最も影響するかを分析したりするのに役立ちます。

```kotlin showLineNumbers

val builder = AdaptyProfileParameters.Builder()
builder.withCustomAttribute("key1", "value1")
```

既存のキーを削除するには、`.withRemovedCustomAttribute()` メソッドを使用します。

```kotlin showLineNumbers

val builder = AdaptyProfileParameters.Builder()
builder.withRemovedCustomAttribute("key2")
```

設定済みのカスタム属性を事前に確認したい場合は、`AdaptyProfile` オブジェクトの `customAttributes` フィールドを使用してください。

:::warning
`customAttributes` の値は最新の状態でない場合があります。ユーザー属性は複数のデバイスからいつでも送信される可能性があるため、最後の同期以降にサーバー上の属性が変更されている場合があります。
:::

### 制限事項 \{#limits\}

- ユーザーあたり最大30件のカスタム属性
- キー名は最大30文字。キー名には英数字および以下の記号が使用できます: `_`  `-` `.`
- 値は文字列または小数で、50文字以内。