ユーザーIDの管理 #
ユーザーIDの設定 #
アプリ上でのログイン完了時など、ユーザーに紐付くユーザーIDが取得できた際にユーザーIDを設定します。
- 一度設定した後はSDK内で値を保持するため、再設定は不要です。
(オプトアウトした場合を除く) - オプトアウトした場合は、SDK内のユーザーID情報はクリアされます。そのため、次回オプトイン時には、再度、setUserId を呼び出す必要があります。
- 初期状態では非会員時のユーザーIDがSDKによって自動的に発行されています(RFC 4122のUUID形式)。
ユーザーIDを設定すると、設定後の初回のトラッキングの際、非会員時のユーザーIDから設定したユーザーIDへの紐付が行われ、スコアなどが引き継がれます。 - 既存アプリで非会員時のユーザーIDを発行している場合や、WebView内のRtoaster.jsにて発行された非会員時のユーザーIDを引き継ぎたい場合は、UUID形式のIDを指定して本メソッドを実行する事で、自動的に発行された非会員時のユーザーIDを置き換える事ができます。
サンプルコード #
try Rtoaster.setUserId("USER_ID")
Rtoaster.setUserId("USER_ID")
ユーザーID間の引継 #
アプリ上で異なるユーザーIDでログインしなおした場合など、異なるユーザーIDをsetUserIdに与えると、異なるユーザーと認識され、それまでのユーザーへの紐付けは行われません。
異なるユーザーIDを直前のユーザーIDと紐付けたい場合は、第2引数に true
を指定してsetUserIdを呼び出します。
これにより、直前のユーザーIDから新しいユーザーIDへの引継が設定されます。
設定後の初回のトラッキング実行時にスコア値などが、直前のユーザーIDから新しいユーザーIDに引き継がれます。
サンプルコード #
// 以前のユーザーを新しいユーザーIDに紐付ける。
try Rtoaster.setUserId("USER_ID2", true)
// 以前のユーザーを新しいユーザーIDに紐付ける。
Rtoaster.setUserId("USER_ID2", true)
ユーザーIDの取得 #
トラッキング/レコメンド時にRtoasterに送信される現在のユーザーIDはuserIdプロパティにて取得可能です。
ユーザーIDは障害調査時の重要な情報になる場合があります。
デバッグログに出力するなど、アプリ上からユーザーIDを確認できる手段を実装されることをおすすめします。
サンプルコード #
let userId = try Rtoaster.userId
val userId = Rtoaster.userId