PageSense React Native — SDK のカスタマイズ

PageSense React Native — SDK のカスタマイズ

お知らせ:当社は、お客様により充実したサポート情報を迅速に提供するため、本ページのコンテンツは機械翻訳を用いて日本語に翻訳しています。正確かつ最新のサポート情報をご覧いただくには、本内容の英語版を参照してください。

概要  

PageSense SDKでは、初期化時に設定できるオプションを使用して、ログの出力方法や、SDKが更新済みのプロジェクトの設定を取得する頻度を制御できます。これらのオプションはネイティブモジュールで設定し、AndroidとiOSの両方に適用されます。

ポーリング間隔  

ポーリング間隔では、SDKがPageSenseサーバーから更新済みのプロジェクトの設定を取得する頻度を制御します。これにより、アプリケーションを再起動せずに、テストや目標の設定変更が反映されるまでの時間が決まります。

初期設定の動作

ポーリング間隔を設定しない場合、SDKの組み込みの初期値が使用されます。間隔を個別指定すると、この初期値が上書きされます。

設定

SDKを初期化する前に、PageSenseSDKOptionsオブジェクトでポーリング間隔を分単位で設定します。

Android(Kotlin)

kotlin
valpageSenseSDKOptions = PageSenseSDKOptions()
pageSenseSDKOptions.pollingInterval = 5 // 更新済みの設定を5分ごとに取得
iOS(Swift)
swift
letpageSenseSDKOptions = PageSenseSDKOptions()
pageSenseSDKOptions.pollingInterval = 5 // 更新済みの設定を5分ごとに取得

注意事項

  • ポーリング間隔の値は分単位です。
  • 間隔を短くすると、SDKが更新を取得する頻度が高くなり、テストの設定をより最新の状態に保てますが、ネットワーク活動が増加します。
  • 間隔を長くするとネットワーク活動は減少しますが、設定変更がアプリケーションに反映されるまでの時間が長くなります。

ログレベル  

ログレベルでは、PageSense SDKのログの詳細度を制御します。適切なログレベルを設定すると、開発中のデバッグに役立ち、本番環境で不要なログを削減できます。

利用可能なログレベル

ログレベル
説明
TRACE
最も詳細なレベルです。内部状態の遷移を含む、SDKのすべての活動を記録します。詳細なデバッグにのみ使用してください。
DEBUG
開発や連携時に役立つ詳細な診断情報を記録します。開発用ビルドに推奨されます。
INFO
SDKが想定どおりに動作していることを確認できる一般的な動作メッセージを記録します。
WARN
SDKの動作を妨げるほどではないものの、問題につながる可能性がある状況を記録します。
ERROR
SDKの特定の処理が失敗する原因となる可能性があるエラーイベントを記録します。
SEVERE
重大な障害のみを記録します。最も簡潔なレベルです。本番用ビルドに推奨されます。

設定

SDKを初期化する前に、PageSenseSDKOptionsオブジェクトでログレベルを設定します。

Android(Kotlin)

kotlin
valpageSenseSDKOptions = PageSenseSDKOptions()
pageSenseSDKOptions.logLevel = LogLevel.DEBUG

iOS(Swift)

swift
letpageSenseSDKOptions = PageSenseSDKOptions()
pageSenseSDKOptions.logLevel = .DEBUG

注意事項

  • 開発中は、DEBUGを使用すると、テストの有効化、バリエーションの割り当て、目標の追跡を検証するための詳細なログを取得できます。
  • 本番環境では、ログ出力を最小限に抑えるため、SEVEREまたはERRORを使用します。
  • ログレベルはSDKの機能には影響せず、ログに出力される内容にのみ影響します。

初期化時のSDKオプションの適用  

次の2つ、pollingIntervallogLevelはどちらも、PageSenseSDKOptionsオブジェクトに設定され、SDKの初期化呼び出しに渡されます。この設定は、PageSenseClientインスタンスの有効期間中、適用されます。

Android(Kotlin)

  1. kotlin
  2. valpageSenseSDKOptions = PageSenseSDKOptions()
  3. pageSenseSDKOptions.logLevel = LogLevel.DEBUG
  4. pageSenseSDKOptions.pollingInterval = 5
  5. PageSenseClientBuilder.createNewPageSenseClient(
  6. accountId,
  7. sdkKey,
  8. projectName,
  9. pageSenseSDKOptions,
  10.     object: ProjectSettingsCallBack {
  11.         override fun onFailure(message: String?,code: Int?) {
  12.             println('SDKの初期化に失敗しました:$message')
  13. promise.resolve(false)
  14.         }
  15.         override fun onSuccess(data: PageSenseClient?) {
  16.             if (data!= null) {
  17. client = data
  18. isInitialized = true
  19.                 println('SDKが正常に初期化されました')
  20. promise.resolve(true)
  21.             } else {
  22. promise.resolve(false)
  23.             }
  24.         }
  25.     }
  26. )
iOS(Swift)
  1. swift
  2. letpageSenseSDKOptions = PageSenseSDKOptions()
  3. pageSenseSDKOptions.logLevel = .DEBUG
  4. pageSenseSDKOptions.pollingInterval = 5
  5. PageSense.shared.createNewPageSenseClient(
  6. sdkAccountIDForDC:accountId,
  7. sdkKey:sdkKey,
  8. projectname:projectName,
  9. sdkOptions:pageSenseSDKOptions
  10. ) {pagesenseclient in
  11.     guard letclient = pagesenseclient else {
  12.         print('PageSenseClientの初期化に失敗しました')
  13.         resolve(false)
  14.         return
  15.     }
  16.     self.client = client
  17.     self.isInitialized = true
  18.     print('PageSenseClientが正常に初期化されました')
  19.     resolve(true)
  20. }

推奨事項

  • 開発および統合時は、logLevelDEBUGに設定すると、テストの有効化、バリエーションの割り当て、目標の追跡に関する問題を診断しやすくなります。
  • 本番環境にリリースする前に、logLevelSEVEREまたはERRORに設定し、過剰なログ出力を防ぎます。
  • テスト設定の最新性と、アプリケーションで許容可能なネットワーク通信量のバランスを考慮して、ポーリング間隔を設定します。
  • PageSenseSDKOptionsは、初期化関数を呼び出す前に設定する必要があります。初期化後にオプションを変更しても反映されません。



このドキュメントは、各手順を順を追って案内できるよう作成されています。さらにサポートが必要な場合やご質問がある場合は、support@zohopagesense.com - までお気軽にお問い合わせください。いつでもサポートいたします。