// ...
public class PaymentSheetDemoActivity extends AppCompatActivity {
// 实例化RequestCreatePayment对象
RequestCreatePayment testRequestPayment = TestRequestData.Companion.getTestRequestPayment();
// 实例化RequestConfirmPayment对象
RequestConfirmPayment testConfirmPayment = TestRequestData.Companion.getTestConfirmPayment();
// 实例化RequestPaymentMethod对象
RequestPaymentMethod testRaymentMethod = TestRequestData.Companion.getTestRequestPaymentMethod();
// 支持信用卡支付
List<Integer> testBankIvList = TestRequestData.Companion.getTestBankIvList();
// customerId
String customerId = TestRequestData.Companion.getCustomerId();
// ...
private void presentPaymentSheet() {
// PayCardActivity包含SaveWithPaymentCardFragment和AddWithPaymentFragment,支持相互切换
Intent intent = new Intent(this, PayCardActivity.class);
// 实例化Bundle对象
Bundle bundle = new Bundle();
// 传递 currentPaymentModel
bundle.putSerializable(
Constant.CURRENT_PAYMENT_MODEL,
currentPaymentModel
);
// 传递 RequestCreatePayment
bundle.putParcelable(
Constant.CREATE_PAYMENT_REQUEST_TAG,
testRequestPayment
);
// 传递 RequestConfirmPayment
bundle.putParcelable(
Constant.CONFIRM_PAYMENT_REQUEST_TAG,
testConfirmPayment
);
// 传递 currentId
bundle.putString(
Constant.CUSTOMER_ID_TAG,
customerId
);
// 传递 RequestPaymentMethod
bundle.putParcelable(Constant.CREATE_PAYMENT_METHOD_REQUEST_TAG, testRaymentMethod);
// 传递默认的 supportBankList
bundle.putSerializable(Constant.SUPPORT_BANK_LIST_TAG, TestRequestData.Companion.getTestBankIvList());
intent.putExtra(CURRENT_PAYMENT_BUNDLE, bundle);
startActivityLauncher.launch(intent);
}
private ActivityResultLauncher<Intent> startActivityLauncher =
PaymentSheetDemoActivity.this.registerForActivityResult(new ActivityResultContracts.StartActivityForResult(), new ActivityResultCallback<ActivityResult>() {
@SuppressLint("LongLogTag")
@Override
public void onActivityResult(ActivityResult result) {
}
});
}