プロビジョニングをトリガーする
概要
カードをデジタル化したら、デジタルカードをプロビジョニングするためにプロビジョニングセッションを開始します。
プロビジョニングセッション中、 NFCウォレット はデジタルカードプロファイルと支払い鍵を安全にプロビジョニングします デジタルウォレットアプリケーション.
activationCodeを受け取った直後にプロビジョニングセッションを開始してください。 activationCode から MGDigitizationListener.onCPSActivationCodeAcquired. ご覧ください カードをデジタル化する.
このコールバックはまた次を返します digitalCardId。後続の操作(例えば、アクセストークン、取引履歴、ライフサイクル管理)用に保存してください。セキュアプロビジョニングを開始するためにこれを必ずしも必要とするわけではありません。
このステップはまた、間のセキュアチャネルを設定します。 NFCウォレットSDK と NFCウォレットバックエンド.
この設定は次のように呼ばれます デバイス登録 (別名 CPS登録).
シーケンス図
SDK統合
セキュアプロビジョニングには次が必要です デバイス登録.
デバイス登録は通常、デバイス上のウォレットインスタンスごとに一度必要です。登録が必要な場合、登録フローは自動的にプロビジョニングセッションをトリガーします。
デバイス登録が既に完了している場合は、を呼び出してプロビジョニングセッションを開始します ProvisioningBusinessService.sendActivationCode(...).
SDKはを要求します activationCode を通じて EnrollingServiceListener.onCodeRequired(...)。その時点で値を提供してください。
前提条件
開始する前に、次を確認してください:
を初期化しました NFCウォレットSDK. ご覧ください NFCウォレットSDKを初期化する.
プッシュ通知を構成し、プッシュトークンを取得しました。参照: プッシュ通知.
を受け取りました
activationCodeデジタル化から。参照: カードをデジタル化する.
デバイス登録
デバイス登録には次の入力が必要です:
activationCode(byte[]): デジタル化によって返されます。walletId: 次を使用して取得しますMGCardEnrollmentService.getWalletId()。この値をとして渡してくださいuserIdパラメータにEnrollingBusinessService.enroll(...). ご覧ください ウォレットIDを取得する.pushToken: のプッシュトークン FCM または HMS Push Kit.
接頭辞 HMS Push Kit でトークンに付けてください HMS: (例えば、 HMS:<token>).
デバイス登録状況を確認する
EnrollingBusinessService.isEnrolled() を使ってデバイス登録状況を確認します EnrollingBusinessService.isEnrolled().
このステータスは、現在のデバイス上のウォレットインスタンスに対してセキュアチャネルが既に確立されているかを示します。
これはを返します EnrollmentStatus:
ENROLLMENT_NEEDED: を呼び出してくださいEnrollingBusinessService.enroll(...).ENROLLMENT_IN_PROGRESS: を呼び出してくださいEnrollingBusinessService.continueEnrollment(...).ENROLLMENT_COMPLETE: を呼び出してくださいProvisioningBusinessService.sendActivationCode(...).
を実装してください EnrollingServiceListener
EnrollingServiceListenerを実装してください EnrollingServiceListener で登録フローを進めます:
onCodeRequired: を提供してくださいactivationCode.onComplete: デバイス登録が正常に完了しました。onError: エラーを次で処理しますProvisioningServiceError.
// error.getCode() を解析し、適切な再試行/復旧ロジックを適用してください。
最終更新
役に立ちましたか?