---
title: "Kotlin Multiplatform SDK'da kullanıcı özelliklerini ayarlama"
description: "Adapty'de daha iyi kitle segmentasyonu için kullanıcı özelliklerini nasıl ayarlayacağınızı öğrenin."
---

Uygulamanızın kullanıcısına e-posta, telefon numarası gibi isteğe bağlı özellikler ekleyebilirsiniz. Bu özellikleri kullanıcı [segmentleri](segments) oluşturmak veya CRM'de görüntülemek için kullanabilirsiniz.

### Kullanıcı özelliklerini ayarlama \{#setting-user-attributes\}

Kullanıcı özelliklerini ayarlamak için `.updateProfile()` metodunu çağırın:

```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` metoduyla daha önce ayarladığınız özelliklerin sıfırlanmayacağını unutmayın.

:::tip

Adapty SDK'nın bir mobil uygulamaya nasıl entegre edildiğini gerçek bir örnekle görmek ister misiniz? Tam kurulumu, paywall'ların gösterimini, satın alma işlemlerini ve diğer temel işlevleri içeren [örnek uygulamalarımıza](sample-apps) göz atın.

:::

### İzin verilen anahtarlar listesi \{#the-allowed-keys-list\}

`AdaptyProfileParameters.Builder` için izin verilen anahtarlar `<Key>` ve değerler `<Value>` aşağıda listelenmiştir:

| Anahtar | Değer |
|---|-----|
| <p>email</p><p>phoneNumber</p><p>firstName</p><p>lastName</p> | String |
| gender | Enum; izin verilen değerler: `AdaptyProfile.Gender.FEMALE`, `AdaptyProfile.Gender.MALE`, `AdaptyProfile.Gender.OTHER` |
| birthday | Date |

### Özel kullanıcı özellikleri \{#custom-user-attributes\}

Kendi özel özelliklerinizi tanımlayabilirsiniz. Bunlar genellikle uygulamanızın kullanımıyla ilgilidir. Örneğin, fitness uygulamalarında haftalık egzersiz sayısı, dil öğrenme uygulamalarında kullanıcının bilgi düzeyi gibi. Bu özellikleri segmentlerde kullanarak hedefli paywall'lar ve teklifler oluşturabilir, analitik aracılığıyla hangi ürün metriklerinin gelire en çok etki ettiğini de keşfedebilirsiniz.

```kotlin showLineNumbers

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

Mevcut bir anahtarı silmek için `.withRemovedCustomAttribute()` metodunu kullanın:

```kotlin showLineNumbers

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

Bazen daha önce hangi özel özelliklerin eklendiğini öğrenmeniz gerekebilir. Bunun için `AdaptyProfile` nesnesinin `customAttributes` alanını kullanın.

:::warning
`customAttributes` değerinin güncel olmayabileceğini unutmayın. Kullanıcı özellikleri farklı cihazlardan herhangi bir zamanda gönderilebileceğinden, sunucudaki özellikler son senkronizasyondan bu yana değişmiş olabilir.
:::

### Sınırlar \{#limits\}

- Kullanıcı başına en fazla 30 özel özellik
- Anahtar adları en fazla 30 karakter olabilir. Anahtar adında alfanümerik karakterler ve şu simgeler kullanılabilir: `_`  `-` `.`
- Değer, en fazla 50 karakterlik bir string veya float olabilir.