Eylemler
Interactions paneli, flow öğelerinin olaylar karşısında nasıl tepki vereceğini tanımlamanızı sağlar — dokunuşlar, öğe görünümleri ve form gönderimleri gibi. Her olay için bir veya daha fazla eylem atarsınız: ekranlar arasında gezinme, öğeleri gösterme ya da gizleme, URL açma, değişken ayarlama ve daha fazlası. Kullanıcı verilerine göre flow’u özelleştirmek için koşullar kullanabilirsiniz.
Her etkileşim, üç parçalı bir zinciri takip eder:
- Element (Öğe): Etkileşimi başlatan ekran bileşeni — bir düğme, quiz cevabı, giriş alanı veya başka herhangi bir şey.
- Trigger (Tetikleyici): Mantığı etkinleştiren olay; örneğin bir dokunma, bir öğenin görünmesi veya bir formun gönderilmesi.
- Action (Eylem): Flow’un buna yanıt olarak gerçekleştirdiği görev. Tek bir tetikleyici, birden fazla eylemi sırayla çalıştırabilir.
Etkileşimleri ayarlama
Bir etkileşim ayarlamak için:
- Ekranda veya Layers panelinde bir öğe seçin.
- Sağ tarafta Interactions paneline geçin ve Add trigger düğmesine tıklayın.
- Button triggers bölümünde tetikleyici türünü seçin.
- Add action düğmesine tıklayın, eylem adına tıklayın ve Edit action penceresindeki açılır menüden bir eylem türü seçin.
- Seçtiğiniz aksiyon türüne göre aksiyon özelliklerini yapılandırın.
- Gerekirse aynı tetikleyici için daha fazla aksiyon eklemek üzere Add action düğmesine tıklayın.
Tetikleyici türleri
Tetikleyiciler, kullanıcı davranışına, öğe durum değişikliklerine veya ekranın yüklenmesine yanıt olarak çalışır. On screen appear evrenseldir; diğerleri ise öğeye özgüdür.
| Tetikleyici | Ne zaman çalışır… | Desteklenen öğeler |
|---|---|---|
| On screen appear | Ekran yüklendiğinde | Tüm öğeler |
| On tap | Kullanıcı öğeye dokunduğunda | Düğmeler, quiz seçenekleri, geçiş düğmeleri, geri sayımlar, videolar |
| On changed | Kullanıcı girişin değerini değiştirdiğinde (yazma, tarih veya saat seçme) | Tüm giriş öğeleri |
| On submit | Kullanıcı klavyede Enter veya Done tuşuna basarak metin girişini gönderdiğinde | Metin tabanlı girişler |
| On timer end | Bir Geri Sayım öğesi sıfıra ulaştığında | Geri Sayım |
| On playback finished | Bir Video sona erdiğinde | Video |
| Yerleşik etkileşimleri olmayan öğeler (örneğin Loader) için yalnızca On screen appear tetikleyicisi kullanılabilir. |
Eylem türleri
Herhangi bir gezinme eylemi, kullanıcıyı farklı bir ekrana taşıyorsa her zaman listedeki son eylem olmalıdır. Uygulama zaten ekranı değiştirdiği için, bu eylemden sonra eklenen eylemler (“Değişken Ayarla” gibi) çalışmayabilir.
Ekrana git
Bu, kullanıcıları ekranlar arasında taşımak için kullanılan temel eylemdir. Kullanıcıyı belirtilen hedef ekrana yönlendirir.
Bu eylem için yalnızca hedef ekranı belirlemeniz yeterlidir. Dinamik gezinmeyi etkinleştirmek istiyorsanız Gezinme ve dallanma veya Koşullu eylemler bölümüne bakın.
Sonraki ekrana git
Kullanıcıyı flow içindeki ekran sırasında bir sonraki ekrana ilerletir. Bunu, editördeki ekran sırasının kullanıcılara göstermek istediğiniz sırayla örtüştüğü doğrusal flow’lar için kullanın.
Geri Git
Kullanıcıyı dizideki önceki ekran yerine, navigasyon geçmişindeki önceki ekrana gönderir.
URL Aç
Akan metne bağlantı eklemek için satır içi bağlantılar kullanın.
Belirli bir web adresini açar. Kullanıcıları uygulamanızın yerel ekranları dışındaki web sayfalarına, makalelere veya sosyal medya profillerine yönlendirmek için kullanın. Bu eylem için iki ayar yapılandırabilirsiniz:
- URL adresi: Bir URL adresi belirleyin. Buna ek olarak, URL’yi dinamik hale getirebilirsiniz — örneğin, kullanıcıları quiz yanıtlarına veya gönderdikleri verilere göre farklı sayfalara yönlendirmek için. Bunu yapmak için
simgesine tıklayın ve kullanmak istediğiniz değişkeni seçin. - Harici tarayıcıda aç: Harici bağlantıların nerede açılacağını belirleyin. Varsayılan olarak, kullanıcıları uygulama içinde tutmak amacıyla uygulama içi tarayıcıda açılırlar. Bağlantıların harici bir tarayıcıda açılmasını istiyorsanız Open in external browser onay kutusunu seçin.
Flow’u kapat
Mevcut flow’u kapatır.
Öğeleri göster/gizle
Ekrandaki belirli bir öğeyi gösterir veya gizler.
Bu eylem, Design panelindeki Visibility bölümünde belirlenen başlangıç durumunu geçersiz kılar. Visibility değeri Hide olarak ayarlanmışsa, Show eylemi öğeyi görünür hale getirir.
Hedef öğesi seçilmemiş bir Show veya Hide eylemi, önizleme ve yayınlamayı engeller. Bir hedef seçin ya da eylemi kaldırın.
Uyarı göster
Yerel bir sistem açılır penceresi görüntüler. Kullanıcıların devam edebilmesi için Ok düğmesine tapması gerekir.
Uyarılar için Title ve Message alanlarını ayarlamanız gerekir. Her iki alanda da içeriği dinamik hale getirmek için değişkenler kullanabilirsiniz. Bunun için
simgesine tıklayın ve kullanmak istediğiniz değişkeni seçin.
Boş veya eksik yapılandırmaya sahip bir Show alert eylemi önizleme ve yayımlamayı engeller. Her iki alanı da doldurun veya eylemi kaldırın.
Değişken ayarla
Bir flow’daki değişkenin değerini günceller. Bu işlemi eklemeden önce, soldaki Variables panelinde değişkenler oluşturun (bkz. Değişkenler).
Add variable düğmesine tıklayın ve ihtiyaç duyduğunuz kadar değişken ile değer ekleyin.
Atama içermeyen bir Set variable işlemi önizleme ve yayınlamayı engeller. En az bir atama yapın ya da işlemi kaldırın.
Satın Alma
Onboarding içindeki bir butona veya etkileşime doğrudan satın alma akışını bağlar. Kullanıcıların flow’dan çıkmadan abone olmasını veya ürün satın almasını sağlamak için kullanın. Bu eylem için iki farklı davranış yapılandırabilirsiniz:
- Uygulama içi mağaza: Yerel bir satın alma başlatır. Product alanını belirli bir ürüne ya da ekrandaki kullanıcı seçimi için
products.selectedProductdeğerine ayarlayın. - Web payment: Yerel bir satın alma tetiklemek yerine kullanıcıyı bir web paywall’a yönlendirir. İşlemi uygulama dışında gerçekleştirmek istediğinizde, örneğin web tabanlı abonelik teklifleri için kullanın.
Hedef Product veya Web Paywall URL içermeyen bir Purchase eylemi, önizleme ve yayınlamayı engeller. Bir hedef atayın ya da eylemi kaldırın.
Satın alımları geri yükle
Cihazda satın alımları geri yükleme akışını başlatır. Kullanıcılar, daha önce başka bir cihazda abonelik satın aldıklarında veya uygulamayı yeniden yükledikten sonra erişimlerini kurtarmak istediklerinde buna dokunur.
Bu eylem için yapılandırılacak herhangi bir şey yoktur — Adapty, geri yükleme işlemini yerel mağaza akışı üzerinden gerçekleştirir.
Restore purchases eylemi, Links düğme ön ayarındaki Restore bağlantısında da önceden yapılandırılmış olarak gelir (bkz. Satın alımları ayarlama).
Özel eylemler
Bir özel eylem, kendi uygulama kodunuzun işlediği adlandırılmış bir Action ID tetikler. Yerleşik eylem türleri ihtiyacınızı karşılamadığında bunu kullanın.
Adapty tetikleyiciyi sağlar; uygulamanız davranışı uygular:
- Builder’da, bir öğenin etkileşimine bir Action ID atarsınız.
- Kullanıcı etkileşimi tetiklediğinde, flow ID’yi uygulamanıza iletir.
- Uygulamanız ID’yi eşleştirir ve kodunuzu çalıştırır.
Özel bir eylem ayarlama
- Edit action penceresinde bir Action ID atayın — uygulamanızın tanıyacağı bir dize (örneğin,
show_discount). - Uygulama kodunuzda bu Action ID için bir işleyici oluşturun. Uygulama ayrıntıları ve kod örnekleri için Paywall eylemlerini yönetme konusuna bakın.
Action ID atanmamış bir Custom eylem, önizleme ve yayınlamayı engeller. Bir Action ID atayın veya eylemi kaldırın.
Özel eylemlerle neler yapabilirsiniz
Özel bir eylemin kendi başına hiçbir işlevi yoktur. Builder’da statik bir Eylem Kimliği (Action ID) ayarlarsınız ve uygulamanızın kodu bu kimliği aldığında ne olacağını belirler. Aşağıdaki her kullanım senaryosu aynı kalıbı izler: flow’da bir kimlik atayın, ardından kodunuzda bunu işleyin.
- Uygulama içi bir etkinlik tetikleme:
viewed_special_offergibi bir ID gönderin, ardından uygulamanız bunu aldığında analitik sistemine kaydedin. - Sistem izni isteme:
request_locationgibi bir ID gönderin, ardından OS izin ekranını uygulamanızdan çağırın. İzin ekranını Adapty değil, uygulamanız gösterir. - Yerel kimlik doğrulamayı başlatma:
login_googlegibi bir ID gönderin, ardından kendi giriş ekranınızı gösterin. Flow kullanıcıyı kendisi giriş yaptıramaz. - İş mantığı uygulama:
apply_discountgibi bir ID gönderin, ardından içeriğin kilidini açın ya da uygulama durumunu kendi tarafınızda değiştirin. - Quiz yanıtını uygulamanıza aktarma: Her seçeneğe farklı bir Action ID atayın (örneğin
goal_weight_lossvegoal_muscle), ardından bu ID’yi kodunuzda okuyun. ID’yi, daha sonra segment oluşturmak için kullanabileceğiniz bir özel kullanıcı özelliği belirlemek amacıyla kullanın. Aksiyon yalnızca sabit bir ID taşıdığından, seçimi raporlamanın tek yolu budur — flow seçilen değeri iletемez.
Kullanıcı bir seçenek belirlediği anda özel bir aksiyon tetiklenir. Kullanıcı cevabını değiştirirse, flow yeni Action ID’yi de tetikler. Uygulamanız her ikisini de sırasıyla alır — örneğin önce goal_weight_loss, ardından goal_muscle. Handler’ınızı idempotent yapın, böylece en son sinyal geçerli olsun.
Özel eylemler neler yapamaz
Özel eylemler statiktir. Eylem Kimliği, flow’u oluştururken sabitlenir; değişkenleri veya kullanıcı girdilerini okuyamaz. Eylem tetiklendiğinde uygulamanız yalnızca o kimliği alır; kullanıcının girdiği e-posta, telefon numarası veya diğer bilgileri almaz. Giriş alanları, dallanma ve kişiselleştirme için flow içinde değişken olarak kalır. Bu değerleri uygulamanızda kullanmak istiyorsanız kendi arayüzünüz veya API’niz aracılığıyla toplamanız gerekir.
Koşullu aksiyonlar
Kullanıcı verilerine göre flow’u farklı yönlere ayırmak için koşullu aksiyonları kullanın.
Yaygın kullanım senaryolarından bazıları şunlardır:
- Ekranda bir sınav var ve kullanıcıları yanıtlarına göre farklı ekranlara yönlendirmek istiyorsunuz. Bu durumda bir butona koşullu aksiyon ekleyin.
- Farklı kullanıcı gruplarına farklı ürünler ve teklifler sunmak istiyorsunuz. Bunları farklı ekranlara yerleştirin ve bir navigasyon butonu için koşullar ayarlayın.
- Önceki bir uygulama oturumunda zaten bir öğreticiyi tamamlamış kullanıcılar için belirli adımları atlamak istiyorsunuz. Koşullu eylemler bir if / else-if / else zinciri gibi çalışır. Uygulama kuralları yukarıdan aşağıya okur ve ilk eşleşmede durur:
- IF: Flow birincil koşulu kontrol eder.
- Doğruysa: Flow, THEN eylemlerini hemen çalıştırır ve durur.
- Yanlışsa: Flow bir sonraki bölüme geçer.
- ELSE IF: Buraya ek kontroller ekleyebilirsiniz (örneğin, “Premium değilse, kullanıcı Trial’da mı?”).
- ELSE (Yedek): Yukarıdaki kuralların hiçbiri eşleşmediyse, flow bu son bölümdeki eylemleri çalıştırır.
- Bir kural eklenip herhangi bir eylem atanmazsa, koşul eşleşse bile hiçbir şey yapılmaz.
- Eksik bir kural (operatör veya değer girilmemişse) önizleme ve yayımlamayı engeller.
Her kural için değerlendirilecek bir değişken ve çalıştırılacak bir eylem seçin. Kural başına birden fazla eylem ekleyebilirsiniz.
Flow yalnızca bir kural çalıştırır — eşleşen ilk kural. IF ve ELSE IF eylemlerinin ikisini de aynı anda çalıştırmanız gerekiyorsa her iki eylemi de IF kuralına ekleyin.
Öğeleri nasıl seçilebilir hale getireceğinizi ve koşullarda kullanmak üzere gruplar halinde nasıl düzenleyeceğinizi öğrenmek için bkz. Seçilebilir öğeler ve gruplar.
Sorun Giderme
Zorunlu alanları eksik olan işlemler önizleme ve yayınlamayı engeller. Tam liste için Flow’ları kaydet ve yayınla bölümüne bakın.