Contenu
Plus d'information
class TestApp: AppCompatActivity(), PaymentControllerListener { private lateinit var paymentController: PaymentController private var paymentUri: Uri? = null private val fetchTokenCallback: (FetchTokenResult?)->Unit = { result -> result?.redirectUrl?.let { paymentUri = Uri.parse(it) } } override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) paymentController = PaymentController() paymentController.registerListener(this, this) paymentTokenButton.setOnClickListener { fetchTokenForPayment() } paymentButton.setOnClickListener { paymentUri ?: return@setOnClickListener //On appelle la méthode showPaymentForm avec l'url du tunnel de paiement récupéré en fonction de votre implémentation paymentController.showPaymentForm(paymentUri!!) } } override fun onDestroy() { super.onDestroy() paymentController.unregisterListener() } private fun fetchTokenForPayment() { TokenFetcher(fetchTokenCallback).execute(FetchTokenParams(...)) } override fun didShowPaymentForm() { //Gérer l'action ici } override fun didFinishPaymentForm(state: WidgetState) { paymentUri = null //Gérer l'action ici } override fun didGetIsSandbox(isSandbox: Boolean) { //Gérer l'action ici } override fun didGetLanguageCode(language: String) { //Gérer l'action ici } override fun didGetContextInfo(info: ContextInfoResult) { //Gérer l'action ici } } |
class TestApp: AppCompatActivity(), WalletControllerListener { private lateinit var walletController: WalletController private var walletUri: Uri? = null private val fetchTokenCallback: (FetchTokenResult?)->Unit = { result -> result?.redirectUrl?.let { walletUri = Uri.parse(it) } } override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) walletController = WalletController() walletController.registerListener(this, this) walletTokenButton.setOnClickListener { fetchTokenForWallet() } walletButton.setOnClickListener { walletUri ?: return@setOnClickListener //On appelle la méthode manageWebWallet avec l'url du wallet récupéré en fonction de votre implémentation. walletController.manageWebWallet(walletUri!!) } } override fun onDestroy() { super.onDestroy() walletController.unregisterListener() } private fun fetchTokenForWallet() { TokenFetcher(fetchTokenCallback).execute(FetchTokenParams(...)) } override fun didShowManageWebWallet() { //Gérer l'action ici } } |