@Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { if (requestCode == MercadoPago.PAYMENT_METHODS_REQUEST_CODE) { if (resultCode == RESULT_OK) { // Set payment method PaymentMethod paymentMethod = JsonUtil.getInstance() .fromJson(data.getStringExtra("paymentMethod"), PaymentMethod.class); // Call new card activity ExamplesUtils.startCardActivity( this, ExamplesUtils.DUMMY_MERCHANT_PUBLIC_KEY, paymentMethod); } else { if ((data != null) && (data.getStringExtra("apiException") != null)) { Toast.makeText( getApplicationContext(), data.getStringExtra("apiException"), Toast.LENGTH_LONG) .show(); } } } else if (requestCode == ExamplesUtils.CARD_REQUEST_CODE) { if (resultCode == RESULT_OK) { // Create payment ExamplesUtils.createPayment( this, data.getStringExtra("token"), 1, null, JsonUtil.getInstance() .fromJson(data.getStringExtra("paymentMethod"), PaymentMethod.class), null); } else { if (data != null) { if (data.getStringExtra("apiException") != null) { Toast.makeText( getApplicationContext(), data.getStringExtra("apiException"), Toast.LENGTH_LONG) .show(); } else if (data.getBooleanExtra("backButtonPressed", false)) { new MercadoPago.StartActivityBuilder() .setActivity(this) .setPublicKey(ExamplesUtils.DUMMY_MERCHANT_PUBLIC_KEY) .setSupportedPaymentTypes(mSupportedPaymentTypes) .startPaymentMethodsActivity(); } } } } else if (requestCode == MercadoPago.CONGRATS_REQUEST_CODE) { LayoutUtil.showRegularLayout(this); } }
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_issuers); mActivity = this; Toolbar mActionBarToolbar = (Toolbar) findViewById(R.id.toolbar); mActionBarToolbar.setTitle(R.string.title_activity_issuers); mMerchantPublicKey = getIntent().getStringExtra("merchantPublicKey"); mSelectedPaymentMethod = JsonUtil.getInstance() .fromJson(getIntent().getStringExtra("paymentMethod"), PaymentMethod.class); mMercadoPago = new MercadoPago.Builder().setContext(this).setPublicKey(mMerchantPublicKey).build(); LayoutUtil.showProgressLayout(this); getIssuersAsync(mSelectedPaymentMethod, this.mMerchantPublicKey); }