ÿÿKotlin Multiplatform(KMP)アプリ内購入SDK | Adapty

Kotlin Multiplatformã®ã‚¢ãƒ—リ内購入を実装ã™ã‚‹

Adaptyã®Kotlin Multiplatform(KMP) SDKを使用ã—ã¦ã€iOSã¨Androidã§ã‚¤ãƒ³ã‚¢ãƒ—リ購入を統åˆã—ã¾ã™ã€‚å—領書を処ç†ã—ã€ã‚µãƒ–スクリプションã®çŠ¶æ…‹ã‚’è¿½è·¡ã—ã€ãƒãƒƒã‚¯ã‚¨ãƒ³ãƒ‰ã‚’構築ã™ã‚‹å¿…è¦ã‚’ãªãã—ã¾ã™ã€‚ã™ã¹ã¦ã®æ©Ÿèƒ½ãŒ1ã¤ã®çµ±åˆã«ã‚りã¾ã™ã€‚
Adapty.activate(AdaptyConfig.Builder("YOUR_PUBLIC_SDK_KEY").build())
 
// Make a purchase, Adapty handles the rest
Adapty.makePurchase(product)
    .onSuccess { purchaseResult ->
        if (purchaseResult is AdaptyPurchaseResult.Success)
        // successful purchase
    }
    .onError { error ->
        // handle the error
    }
    

Kotlin Multiplatformã®ã‚¢ãƒ—リ内購入ã«ãƒãƒƒã‚¯ã‚¨ãƒ³ãƒ‰ã¯ä¸è¦

デモを予約

ãªãœAdapty SDKã‚’é¸ã¶ã®ã‹ï¼Ÿ

プラットフォームを超ãˆã¦ã‚µãƒ–スクリプションを追跡

iOSã¨Androidã®ä¸¡æ–¹ã§ãƒ¦ãƒ¼ã‚¶ãƒ¼ã®è³¼èª­çŠ¶æ…‹ã‚’å¸¸ã«æŠŠæ¡å¯èƒ½ã€‚

ãƒãƒƒã‚¯ã‚¨ãƒ³ãƒ‰ã§ã®ãƒ¬ã‚·ãƒ¼ãƒˆæ¤œè¨¼

AdaptyãŒæ¤œè¨¼ã‚’自動ã§å‡¦ç†ã™ã‚‹ãŸã‚ã€è‡ªå‰ã®æ§‹ç¯‰ã¯ä¸è¦ã€‚

ã‚らゆるサブスクリプション状態を処ç†

無料トライアルã€ã‚¢ãƒƒãƒ—グレードã€ãƒ—ロモーションã€ãƒ•ã‚¡ãƒŸãƒªãƒ¼å…±æœ‰ã€æ›´æ–°ãªã©ã‚’網羅。

エンタープライズレベルã®åŸºç›¤ã§ã‚¹ã‚±ãƒ¼ãƒ«

é »ç¹ãªã‚¢ãƒƒãƒ—デートã€å®‰å®šã—ãŸSDKã€99.99%以上ã®SLAã§é‹ç”¨ã€‚
プラットフォーム設定
Adapty SDKã®ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«
await adapty.activate( 'PUBLIC_SDK_KEY', { customerUserId: 'YOUR_USER_ID', });
購入イベントã®å‡¦ç†

Kotlin Multiplatformå‘ã‘ã®ç°¡å˜çµ±åˆ

Kotlin Multiplatformã®IAPを処ç†ã™ã‚‹5ã¤ã®SDKメソッドを使用

import com.adapty.kmp.Adapty
import com.adapty.kmp.models.AdaptyPurchaseResult
 
Adapty.makePurchase(product = product).onSuccess { purchaseResult ->
    when (purchaseResult) {
        is AdaptyPurchaseResult.Success -> {
            val profile = purchaseResult.profile
            if (profile.accessLevels["YOUR_ACCESS_LEVEL"]?.isActive == true) {
                // Grant access to the paid features
            }
        }
        is AdaptyPurchaseResult.UserCanceled -> {
            // Handle the case where the user canceled the purchase
        }
        is AdaptyPurchaseResult.Pending -> {
            // Handle deferred purchases (e.g., the user will pay offline with cash)
        }
    }
}.onError { error ->
    // Handle the error
}
import com.adapty.kmp.Adapty
 
Adapty.restorePurchases().onSuccess { profile ->
    if (profile.accessLevels["YOUR_ACCESS_LEVEL"]?.isActive == true) {
        // successful access restore
    }
}.onError { error ->
    // handle the error
}
 
 
 
 
 
 
 
 
 
 
 
 
import com.adapty.kmp.Adapty
 
Adapty.identify("YOUR_USER_ID") // Unique for each user
    .onSuccess {
        // successful identify
    }
    .onError { error ->
        // handle the error
    }
 
 
 
 
 
 
 
 
 
 
 
 
import com.adapty.kmp.Adapty
import com.adapty.kmp.models.AdaptyProfile
import com.adapty.kmp.models.AdaptyProfileParameters
 
val builder = AdaptyProfileParameters.Builder()
    .withEmail("[email protected]")
    .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
    }
    
    
import com.adapty.kmp.models.AdaptyProfileParameters
 
val builder = AdaptyProfileParameters.Builder()
 
// You can set your own custom attributes:
builder.withCustomAttribute("key1", "value1")
 
// To remove existing key, use .withRemovedCustomAttribute() method:
builder.withRemovedCustomAttribute("key2")
 
 
 
 
 
 
 
 
 
 
 
 
ç„¡æ–™ã§å§‹ã‚ã‚‹

Adaptyã¯ã€ã‚¤ãƒ³ãƒ‡ã‚£ãƒ¼ã‹ã‚‰å¤§æ‰‹ãƒ‘ブリッシャーã¾ã§ã‚らゆるステージã®ã‚¢ãƒ—リを支ãˆã¾ã™

Cem Ortabas, Co-founder and CEO of HubX
RevenueCat ã‹ã‚‰ã®ç§»è¡Œã¯ç§ãŸã¡ã«ã¨ã£ã¦ç°¡å˜ãªæ±ºæ–­ã§ã¯ã‚りã¾ã›ã‚“ã§ã—ãŸã€‚æˆé•·ã™ã‚‹ä¸­ã§ã‚ˆã‚Šã‚ˆã„パートナーã§ã‚ã‚‹ã¨ä¿¡ã˜ã€Adapty ã‚’é¸ã³ã¾ã—ãŸã€‚振り返るã¨ã€ãã‚Œã¯æ­£ã—ã„é¸æŠžã§ã—ãŸã€‚ã„ãã¤ã‹ã®å•題ã¯ã‚ã£ãŸã‚‚ã®ã®ã€Adapty ã®ãƒãƒ¼ãƒ ã¯ç§»è¡Œä¸­ã‚„ãã®å¾Œã‚‚常ã«ç§ãŸã¡ã‚’助ã‘ã¦ãれã€ãã®ã‚µãƒãƒ¼ãƒˆã¯æœ€é«˜ã§ã™ã€‚Adapty ã‚’ä¿¡é ¼ã§ãるパートナーã¨ã—ã¦ãŠå‹§ã‚ã—ã¾ã™ã€‚
Cem Ortabas
å…±åŒå‰µè¨­è€…å…¼ CEO, HubX
HUBX
Arkadiy Yukhnevich
Almus ã¯å¤šæ•°ã® iOS アプリをé‹å–¶ã—ã¦ãŠã‚Šã€ãれãžã‚Œã«ç‹¬è‡ªã®ãƒ¦ãƒ¼ã‚¶ãƒ¼å±¤ã¨ãƒžãƒã‚¿ã‚¤ã‚ºä¸Šã®èª²é¡ŒãŒã‚りã¾ã™ã€‚決済分æžã®ã‚¨ãƒ©ãƒ¼ã¯è‡´å‘½çš„ã§ã‚ã‚‹ãŸã‚ã€ãƒ—ラットフォームã®é¸å®šã¯æ…Žé‡ã«è¡Œã„ã¾ã—ãŸã€‚ç§ãŸã¡ã¯ RevenueCat ã‹ã‚‰ Adapty ã«ç§»è¡Œã—ã¾ã—ãŸã€‚移行ã¯ç°¡å˜ã§ã¯ã‚りã¾ã›ã‚“ã§ã—ãŸãŒã€Adapty ãƒãƒ¼ãƒ ã¯æœ€åˆã‹ã‚‰æœ€å¾Œã¾ã§è‚©ã‚’並ã¹ã¦å…±ã«ä¹—り越ãˆã¦ãれã¾ã—ãŸã€‚ç§ãŸã¡ã¯åŒã˜è¨€èªžã‚’話ã—ã¦ã„ã¾ã™ã€‚彼らã®ãƒ­ãƒ¼ãƒ‰ãƒžãƒƒãƒ—ã¯ã€ç§ãŸã¡ãŒé‡è¦–ã™ã‚‹æŒ‡æ¨™â€”—LTV 㨠ROAS——を動ã‹ã—ã¦ãれã¾ã™ã€‚Adapty ã¯ç§ãŸã¡ã®æˆé•·ãƒ‘ートナーã§ã™ã€‚
Arkadiy Yukhnevich
Almusã®æœ€é«˜çµŒå–¶è²¬ä»»è€…
Almus
Roman Degtyarev
ç§ãŸã¡ã¯ 2022 å¹´ã‹ã‚‰ Adapty を使用ã—ã¦ãŠã‚Šã€ä»Šã§ã¯ã‚¢ãƒ—リビジãƒã‚¹ã‚’é‹å–¶ã™ã‚‹ä¸Šã§æ¬ ã‹ã›ãªã„存在ã«ãªã£ã¦ã„ã¾ã™ã€‚サブスクリプション管ç†ã€ã‚¢ãƒŠãƒªãƒ†ã‚£ã‚¯ã‚¹ã€A/B テスト——ãã®ã™ã¹ã¦ã‚’活用ã—ã¦ã„ã¾ã™ã€‚Adapty ã¯ã€ã‚¹ãƒ”ードをè½ã¨ã™ã“ã¨ãªãæˆé•·ã¨æ¤œè¨¼ã‚’ç¶šã‘ã‚‹ãŸã‚ã®ãƒ„ールをæä¾›ã—ã¦ãれã¾ã™ã€‚サãƒãƒ¼ãƒˆãƒãƒ¼ãƒ ã¨ã‚«ã‚¹ã‚¿ãƒžãƒ¼ã‚µã‚¯ã‚»ã‚¹ãƒãƒ¼ãƒ ã¯æœ¬å½“ã«ã“ã¡ã‚‰ã®å£°ã«è€³ã‚’傾ã‘ã¦ãれã¦ã€ãれã¯è£½å“ãã®ã‚‚ã®ã¨åŒã˜ãらã„é‡è¦ãªã“ã¨ã§ã™ã€‚å˜ãªã‚‹é¡§å®¢ã§ã¯ãªãパートナーã ã¨æ„Ÿã˜ã‚‰ã‚Œã‚‹é–¢ä¿‚ã¯ã€ã‚ã£ãŸã«ã‚ã‚‹ã‚‚ã®ã§ã¯ã‚りã¾ã›ã‚“。
Roman Degtyarev
å…±åŒå‰µè¨­è€…
Glam AI
Chris Bick, Founder and CEO of Bickster
2021 å¹´ã‹ã‚‰ Adapty ã¨ä¸€ç·’ã«åƒã„ã¦ã„ã¾ã™ãŒã€æœ¬å½“ã«æº€è¶³ã—ã¦ã„ã¾ã™ã€‚ä»–ã®ã‚µãƒ–スクリプション管ç†ãƒ—ラットフォームも試ã—ãŸã“ã¨ãŒã‚ã‚‹ã®ã§æ¯”較ã§ãã¾ã™ã€‚Adapty ã¯ä½•å¹´ã«ã‚‚ã‚ãŸã£ã¦å¤šãã®æ©Ÿèƒ½ã‚’å°Žå…¥ã—ã€ç§ãŸã¡ã®æˆé•·ã‚’å¸¸ã«æ”¯æ´ã—ã¦ãれã¾ã—ãŸã€‚彼らã¯å¸‚å ´ã§æœ€é«˜ã®åˆ†æžæ©Ÿèƒ½ã‚’æŒã¡ã€è€ƒãˆã†ã‚‹ã™ã¹ã¦ã®ã‚¤ãƒ³ãƒ†ã‚°ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ãŒã‚りã¾ã™ã€‚アプリã®åŽç›Šã‚’増やã—ãŸã„ãªã‚‰ã€Adapty ã‚’ãœã²ãŠå‹§ã‚ã—ã¾ã™ã€‚
Chris Bick
創設者兼 CEO, Bickster
Bickster
Kyle Smith, Head of data at Smitten Dating
Adapty ã®ãƒ—ラットフォームã¯ã€é–‹ç™ºè€…ã§ãªã„人々㌠A/B テストã€ãƒšã‚¤ã‚¦ã‚©ãƒ¼ãƒ«ã€è£½å“ミックスã€ä¾¡æ ¼æ§‹é€ ã‚’作æˆãŠã‚ˆã³ç®¡ç†ã™ã‚‹ã®ã‚’ç°¡å˜ã«ã—ã¾ã™ã€‚Amplitude ã‚„ Mixpanel ãªã©ã®ä»–ã®åˆ†æžãƒ„ールã«é–¢é€£ã‚¤ãƒ™ãƒ³ãƒˆã‚’ç°¡å˜ã«æ¸¡ã™ã“ã¨ãŒã§ãる素晴らã—ã„外部 API ãŒã‚りã¾ã™ã€‚
Kyle Smith
Smitten Dating ã®ãƒ‡ãƒ¼ã‚¿éƒ¨é–€è²¬ä»»è€…
Smitten
Roi Mulia, Founder & CEO of SocialKit
ç§ãŸã¡ã¯4ヶ月ã®é–“ã«300以上ã®ãƒšã‚¤ã‚¦ã‚©ãƒ¼ãƒ«ã‚’テストã—ã¾ã—ãŸã€‚Adapty ã¯åŸºæœ¬çš„ã«ãƒšã‚¤ã‚¦ã‚©ãƒ¼ãƒ«ã®ã‚らゆるè¦ç´ ã‚’テストã§ãã‚‹ãŸã‚ã€ãれを活用ã—ã¾ã—ãŸã€‚製å“ã€ã‚¿ã‚¤ãƒˆãƒ«ãƒ†ã‚­ã‚¹ãƒˆã€CTAボタンã€ç”»åƒã€å‹•ç”»ãªã©ã€ã™ã¹ã¦ã‚’テストã—ã¾ã—ãŸã€‚Adapty ã® A/B テストを使ã£ã¦ã€æœˆé–“åŽç›Šã‚’2å€ã«ã™ã‚‹ã“ã¨ãŒã§ãã¾ã—ãŸã€‚一ã¤ã®ãƒ„ールãŒãã‚“ãªã«å¤§ããªå½±éŸ¿ã‚’与ãˆã‚‹ã“ã¨ãŒã§ãã‚‹ã®ã‹ç–‘å•ã§ã—ãŸãŒã€è‡ªåˆ†ã®ç›®ã§ãれを見ã¾ã—ãŸã€‚
Roi Mulia
創設者兼 CEO, SocialKit
SocialKit

アプリをæˆé•·ã•ã›ã‚‹ãŸã‚ã«å¿…è¦ãªã™ã¹ã¦ãŒKotlin Multiplatform SDKã«å«ã¾ã‚Œã¦ã„ã¾ã™

Paywall A/B testing

アプリã®ãƒªãƒªãƒ¼ã‚¹ãªã—ã§ã‚µãƒ–スクリプションåŽç›Šã‚’増加

ペイウォールを管ç†ã€ã‚¿ãƒ¼ã‚²ãƒ†ã‚£ãƒ³ã‚°ã€ãƒ­ãƒ¼ã‚«ãƒ©ã‚¤ã‚ºã€ãƒ‘ーソナライズをブラウザ上ã§å®Ÿç¾ã€‚
アプリåŽç›Šã‚’増加

æ‰•ã„æˆ»ã—率を40%削減

æ‰•ã„æˆ»ã—ã«ã‚ˆã‚‹åŽç›Šæå¤±ã‚’防止 — Adaptyã¯Appleã«ãƒ¦ãƒ¼ã‚¶ãƒ¼è¡Œå‹•データを自動é€ä¿¡ã—ã€ãƒªã‚¯ã‚¨ã‚¹ãƒˆã‚’削減。
Refund Saverを設定
Refund Rate
App Monetization Strategies

ã„ã¤ã§ã‚‚購読データを把æ¡

トライアルã‹ã‚‰æ‰•ã„æˆ»ã—ã¾ã§ã€å³åˆ©ç”¨å¯èƒ½ãªãƒªã‚¢ãƒ«ã‚¿ã‚¤ãƒ è³¼èª­BIã§ã‚¢ãƒ—リ内経済をå¯è¦–化。
購読BIを見る

ノーコード ペイウォールビルダー

iOSã€Androidã€React Nativeã€Flutterã€FlutterFlowã€KMPã€Capacitor用ã®ç¾Žã—ã„ãƒã‚¤ãƒ†ã‚£ãƒ–ペイウォールを開発ãƒãƒ¼ãƒ ãªã—ã§ä½œæˆã€‚
数分ã§ãƒšã‚¤ã‚¦ã‚©ãƒ¼ãƒ«ã‚’作æˆ
No Code Paywall Builder

使ã„ã‚„ã™ã•ã¨ã‚«ã‚¹ã‚¿ãƒžãƒ¼ã‚µãƒ¼ãƒ“スã§ä¿¡é ¼ã•れã¦ã„ã¾ã™

500件以上ã®ãƒ¬ãƒ“ューã«åŸºã¥ã„ã¦ã„ã¾ã™
G2 Award: Leader (EMEA), winter 2025
G2 Award: Leader (EMEA), winter 2025
G2 Award: Leader (EMEA), winter 2025
G2 Award: Leader (EMEA), winter 2025
G2 Award: Leader (EMEA), winter 2025

Adaptyã¯Kotlin Multiplatformã ã‘ã§ãªãä»–ã®ãƒ—ラットフォームã«ã‚‚対応

ÿÿÿÿ