iOS SDKでオンボーディングを表示する
SDK v4(ベータ版)以降、オンボーディングのより強力な代替手段としてフローを構築できます。オンボーディングはWebView内で動作しますが、フローはデバイス上でネイティブにレンダリングされるため、スムーズなアニメーション、iOSらしい一貫した外観、高速な読み込み、WebViewランタイムへの依存がなくなります。始めるにはフロー & ペイウォールの取得とフロー & ペイウォールの表示をご覧ください。
ビルダーを使ってオンボーディングをカスタマイズした場合、モバイルアプリのコードでレンダリング処理を実装する必要はありません。オンボーディングには、表示内容と表示方法がすべて含まれています。
開始する前に、以下を確認してください:
- Adapty iOS SDK 3.8.0 以降をインストール済みであること。
- オンボーディングを作成済みであること。
- オンボーディングをプレースメントに追加済みであること。
SwiftでオンボーディングををPresent
デバイス画面にビジュアルオンボーディングを表示するには、以下の手順を実行します:
-
.getOnboardingConfigurationメソッドを使ってオンボーディングのビュー設定を取得します。 -
.onboardingControllerメソッドを使って表示したいビジュアルオンボーディングを初期化します:リクエストパラメータ:
パラメータ 必須/任意 説明 onboarding configuration 必須 オンボーディングのすべてのプロパティを含む AdaptyUI.OnboardingConfigurationオブジェクト。AdaptyUI.getOnboardingConfigurationメソッドで取得します。delegate 必須 オンボーディングのイベントを受け取るための AdaptyOnboardingControllerDelegate。戻り値:
オブジェクト 説明 AdaptyOnboardingController リクエストされたオンボーディング画面を表すオブジェクト -
オブジェクトの作成に成功したら、デバイスの画面に表示できます:
import Adapty import AdaptyUI // 0. Get an onboarding if you haven't done it yet let onboarding = try await Adapty.getOnboarding(placementId: "YOUR_PLACEMENT_ID") // 1. Obtain the onboarding view configuration: let configuration = try AdaptyUI.getOnboardingConfiguration(forOnboarding: onboarding) // 2. Create Onboarding View Controller let onboardingController = try AdaptyUI.onboardingController( with: configuration, delegate: <AdaptyOnboardingControllerDelegate> ) // 3. Present it to the user present(onboardingController, animated: true)
SwiftUIでオンボーディングをPresent
SwiftUIでデバイス画面にビジュアルオンボーディングを表示するには:
// 1. Obtain the onboarding view configuration:
let configuration = try AdaptyUI.getOnboardingConfiguration(forOnboarding: onboarding)
// 2. Display the Onboarding View within your view hierarchy
AdaptyOnboardingView(
configuration: configuration,
placeholder: { Text("Your Placeholder View") },
onCloseAction: { action in
// hide the onboarding view
},
onError: { error in
// handle the error
}
)
スプラッシュ画面とオンボーディング間のトランジションをスムーズにする
デフォルトでは、スプラッシュ画面とオンボーディングの間、オンボーディングが完全に読み込まれるまでローディング画面が表示されます。よりスムーズなトランジションにしたい場合は、スプラッシュ画面を延長したり、別のコンテンツを表示するようにカスタマイズできます。
そのためには、プレースホルダー(オンボーディングの読み込み中に表示するもの)を定義してください。プレースホルダーを定義すると、オンボーディングはバックグラウンドで読み込まれ、準備ができ次第自動的に表示されます。
オンボーディング内のリンクの開き方をカスタマイズする
オンボーディング内のリンクの開き方のカスタマイズは、Adapty SDK v3.15.1 以降でサポートされています。
デフォルトでは、オンボーディング内のリンクはアプリ内ブラウザで開きます。これにより、アプリを切り替えることなくウェブページをアプリ内で表示でき、シームレスなユーザー体験を提供します。
外部ブラウザでリンクを開きたい場合は、externalUrlsPresentation パラメータを .externalBrowser に設定することでこの動作をカスタマイズできます:
let configuration = try AdaptyUI.getOnboardingConfiguration(
forOnboarding: onboarding,
externalUrlsPresentation: .externalBrowser // default – .inAppBrowser
)