ÿÿ Observerモードã§ãƒ•ローを表示ã™ã‚‹ - Kotlin Multiplatform | Adapty ドキュメント

Observerモードã§ãƒ•ローを表示ã™ã‚‹ - Kotlin Multiplatform

ビルダーを使ã£ã¦ãƒ•ローやペイウォールをカスタマイズã—ãŸå ´åˆã€ãƒ¢ãƒã‚¤ãƒ«ã‚¢ãƒ—リã®ã‚³ãƒ¼ãƒ‰ã§ãƒ¬ãƒ³ãƒ€ãƒªãƒ³ã‚°ã—ã¦ãƒ¦ãƒ¼ã‚¶ãƒ¼ã«è¡¨ç¤ºã™ã‚‹æ–¹æ³•ã‚’æ°—ã«ã™ã‚‹å¿…è¦ã¯ã‚りã¾ã›ã‚“。ã“ã®ã‚ˆã†ãªãƒ•ローやペイウォールã«ã¯ã€è¡¨ç¤ºã™ã‚‹å†…容ã¨è¡¨ç¤ºæ–¹æ³•ã®ä¸¡æ–¹ãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚

ã“ã®ã‚»ã‚¯ã‚·ãƒ§ãƒ³ã¯ã‚ªãƒ–ザーãƒãƒ¼ãƒ¢ãƒ¼ãƒ‰ã®ã¿ã‚’対象ã¨ã—ã¦ã„ã¾ã™ã€‚オブザーãƒãƒ¼ãƒ¢ãƒ¼ãƒ‰ã§ä½œæ¥­ã—ã¦ã„ãªã„å ´åˆã¯ã€ãƒ•ローã¨ãƒšã‚¤ã‚¦ã‚©ãƒ¼ãƒ«ã®è¡¨ç¤ºã®ãƒˆãƒ”ックをå‚ç…§ã—ã¦ãã ã•ã„。

ã“ã®æ©Ÿèƒ½ã‚’使用ã™ã‚‹ã«ã¯ã€Adapty Kotlin Multiplatform SDK 4.0(ベータ版)以é™ãŒå¿…è¦ã§ã™ã€‚以å‰ã¯ãƒã‚¤ãƒ†ã‚£ãƒ–ã® iOS ãŠã‚ˆã³ Android SDK ã§ã®ã¿åˆ©ç”¨å¯èƒ½ã§ã—ãŸã€‚アップグレードã™ã‚‹ã«ã¯ç§»è¡Œã‚¬ã‚¤ãƒ‰ã‚’ã”å‚ç…§ãã ã•ã„。

フローã®è¡¨ç¤ºã‚’é–‹å§‹ã™ã‚‹å‰ã«ï¼ˆã‚¯ãƒªãƒƒã‚¯ã—ã¦å±•開)
  1. Adapty ã®åˆæœŸé€£æºã‚’設定ã—ã¾ã™ï¼ˆApp Store ã¨ã®é€£æºãŠã‚ˆã³ Google Play ã¨ã®é€£æºï¼‰ã€‚ 2. Adapty SDK をインストールã—ã¦è¨­å®šã—ã¾ã™ã€‚設定ビルダー㧠withObserverMode(true) を呼ã³å‡ºã—ã¦ãã ã•ã„。Kotlin Multiplatform SDK インストールガイドをå‚ç…§ã—ã¦ãã ã•ã„。 3. Adapty ダッシュボードã§ãƒ—ロダクトを作æˆã—ã¾ã™ã€‚ 4. ビルダーã§ãƒ•ローã¾ãŸã¯ãƒšã‚¤ã‚¦ã‚©ãƒ¼ãƒ«ã‚’設定ã—ã€ãƒ—ロダクトを割り当ã¦ã¾ã™ã€‚ 5. プレースメントを作æˆã—ã€ãƒ•ローã¾ãŸã¯ãƒšã‚¤ã‚¦ã‚©ãƒ¼ãƒ«ã‚’割り当ã¦ã¾ã™ã€‚ 6. モãƒã‚¤ãƒ«ã‚¢ãƒ—リã®ã‚³ãƒ¼ãƒ‰ã§ãƒ•ローã¨ãã®è¨­å®šã‚’å–å¾—ã—ã¾ã™ã€‚

オブザーãƒãƒ¼ãƒ¢ãƒ¼ãƒ‰ã§ã¯ã€SDKãŒä»£ã‚りã«è³¼å…¥å‡¦ç†ã‚’行ã†ã“ã¨ã¯ã‚りã¾ã›ã‚“。ユーザーãŒAdaptyã§ãƒ¬ãƒ³ãƒ€ãƒªãƒ³ã‚°ã•れãŸãƒ•ローã¾ãŸã¯ãƒšã‚¤ã‚¦ã‚©ãƒ¼ãƒ«ã®è³¼å…¥ãƒœã‚¿ãƒ³ã‚„復元ボタンをタップã™ã‚‹ã¨ã€SDKã¯ã‚ãªãŸã®AdaptyUIObserverModeResolverを呼ã³å‡ºã—ã¾ã™ã€‚ãã¡ã‚‰ã§ç‹¬è‡ªã®ã‚³ãƒ¼ãƒ‰ã‚’使ã£ã¦è³¼å…¥ã¾ãŸã¯å¾©å…ƒã‚’実行ã—ã¦ãã ã•ã„。

  1. AdaptyUIObserverModeResolverインターフェースを実装ã—ã¾ã™ï¼š

    import com.adapty.kmp.AdaptyUIObserverModeResolver
    import com.adapty.kmp.models.AdaptyPaywallProduct
    import com.adapty.kmp.models.AdaptyUIFlowView
    
    class MyObserverModeResolver : AdaptyUIObserverModeResolver {
        override fun observerModeDidInitiatePurchase(
            view: AdaptyUIFlowView,
            product: AdaptyPaywallProduct,
            onStartPurchase: () -> Unit,
            onFinishPurchase: () -> Unit
        ) {
            onStartPurchase() // the view shows its loading indicator
            // make the purchase with your own code,
            // then report the transaction to Adapty and call:
            onFinishPurchase() // the view hides the loading indicator
        }
    
        override fun observerModeDidInitiateRestore(
            view: AdaptyUIFlowView,
            onStartRestore: () -> Unit,
            onFinishRestore: () -> Unit
        ) {
            onStartRestore()
            // restore purchases with your own code, then:
            onFinishRestore()
        }
    }

observerModeDidInitiatePurchase メソッドã¯ãƒ¦ãƒ¼ã‚¶ãƒ¼ãŒè³¼å…¥ã‚’é–‹å§‹ã—ãŸã“ã¨ã‚’通知ã—ã€observerModeDidInitiateRestore ã¯ãƒ¦ãƒ¼ã‚¶ãƒ¼ãŒãƒªã‚¹ãƒˆã‚¢ã‚’é–‹å§‹ã—ãŸã“ã¨ã‚’通知ã—ã¾ã™ã€‚ã“れã«å¿œã˜ã¦ã€ã‚«ã‚¹ã‚¿ãƒ ã®è³¼å…¥ã¾ãŸã¯ãƒªã‚¹ãƒˆã‚¢ãƒ•ローをトリガーã—ã¦ãã ã•ã„。

ã¾ãŸã€è³¼å…¥ã¾ãŸã¯ãƒªã‚¹ãƒˆã‚¢ã®ãƒ—ロセスã«ã¤ã„㦠AdaptyUI ã«é€šçŸ¥ã™ã‚‹ãŸã‚ã€ä»¥ä¸‹ã®ã‚³ãƒ¼ãƒ«ãƒãƒƒã‚¯ã‚’呼ã³å‡ºã™ã“ã¨ã‚’忘れãªã„ã§ãã ã•ã„。ã“れã¯ã€ãƒ­ãƒ¼ãƒ€ãƒ¼ã®è¡¨ç¤ºãªã©ã€ãƒ•ãƒ­ãƒ¼ãŒæ­£ã—ã動作ã™ã‚‹ãŸã‚ã«å¿…è¦ã§ã™ã€‚

コールãƒãƒƒã‚¯èª¬æ˜Ž
onStartPurchase()購入ãŒé–‹å§‹ã•れãŸã“ã¨ã‚’ AdaptyUI ã«é€šçŸ¥ã™ã‚‹ãŸã‚ã«å‘¼ã³å‡ºã™ã‚³ãƒ¼ãƒ«ãƒãƒƒã‚¯ã§ã™ã€‚
onFinishPurchase()購入ãŒå®Œäº†ã—ãŸã“ã¨ã‚’ AdaptyUI ã«é€šçŸ¥ã™ã‚‹ãŸã‚ã«å‘¼ã³å‡ºã™ã‚³ãƒ¼ãƒ«ãƒãƒƒã‚¯ã§ã™ã€‚
onStartRestore()復元ãŒé–‹å§‹ã•れãŸã“ã¨ã‚’ AdaptyUI ã«é€šçŸ¥ã™ã‚‹ãŸã‚ã«å‘¼ã³å‡ºã™ã‚³ãƒ¼ãƒ«ãƒãƒƒã‚¯ã§ã™ã€‚
onFinishRestore()復元ãŒå®Œäº†ã—ãŸã“ã¨ã‚’ AdaptyUI ã«é€šçŸ¥ã™ã‚‹ãŸã‚ã«å‘¼ã³å‡ºã™ã‚³ãƒ¼ãƒ«ãƒãƒƒã‚¯ã§ã™ã€‚

フローã¯ã€ã‚³ãƒ¼ãƒ‰å®Ÿè¡Œä¸­ã¯é–‹ã„ãŸã¾ã¾ç¶­æŒã•れã¾ã™ã€‚購入ã¾ãŸã¯ãƒªã‚¹ãƒˆã‚¢ãŒæˆåŠŸã—ãŸã‚‰ã€è‡ªåˆ†ã§ãƒ•ローを閉ã˜ã¦ãã ã•ã„。

  1. ç”»é¢ã‚’表示ã™ã‚‹å‰ã«ãƒªã‚¾ãƒ«ãƒãƒ¼ã‚’登録ã—ã¾ã™:

    import com.adapty.kmp.AdaptyUI
    
    AdaptyUI.setObserverModeResolver(MyObserverModeResolver())

    リゾルãƒãƒ¼ã‚’登録ã—ãªã„ã¨ã€ãƒ•ロービューã¯è³¼å…¥ã‚’コードã«å¼•ãæ¸¡ã™æ‰‹æ®µãŒãªãã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ãŒè³¼å…¥ãƒœã‚¿ãƒ³ã‚’タップã—ã¦ã‚‚何も起ã“りã¾ã›ã‚“。

  2. フローã®ãƒ“ューを通常通り作æˆã—ã¦è¡¨ç¤ºã—ã¾ã™: フローをå–å¾—ã—ã¦ãƒ“ューを作æˆã—ã€è¡¨ç¤ºã—ã¾ã™ã€‚追加ã®ãƒ‘ラメーターã¯ä¸è¦ã§ã™ã€‚リゾルãƒãƒ¼ã‚’登録ã™ã‚‹ã¨ã€Adapty ãŒãƒ¬ãƒ³ãƒ€ãƒªãƒ³ã‚°ã™ã‚‹ã™ã¹ã¦ã®ãƒ•ローやペイウォールã®è³¼å…¥ã¨ãƒªã‚¹ãƒˆã‚¢ãŒãã“を通ã˜ã¦ãƒ«ãƒ¼ãƒ†ã‚£ãƒ³ã‚°ã•れã¾ã™ã€‚

トランザクションを報告ã—ã¦ãƒšã‚¤ã‚¦ã‚©ãƒ¼ãƒ«ã«é–¢é€£ä»˜ã‘ã‚‹ã“ã¨ã‚’忘れãªã„ã§ãã ã•ã„。ã“れを行ã‚ãªã„ã¨ã€Adapty ãŒãƒˆãƒ©ãƒ³ã‚¶ã‚¯ã‚·ãƒ§ãƒ³ã‚’èªè­˜ã§ããšã€è³¼å…¥å…ƒã®ãƒšã‚¤ã‚¦ã‚©ãƒ¼ãƒ«ã‚’特定ã§ãã¾ã›ã‚“。

ÿÿÿÿ