1
У меня есть демо для интеграции Stripe в Android. У меня возникли проблемы с идентификатором токена, но после того, как платеж суммы меньше на счет.Интеграция полос в Android Eclipse
Я выполняю код с полосой официального сайта здесь: https://github.com/stripe/stripe-android
package com.stripe.example.activity;
import android.os.Bundle;
import android.support.v4.app.DialogFragment;
import android.support.v4.app.FragmentActivity;
import android.util.Log;
import com.stripe.example.R;
import com.stripe.android.Stripe;
import com.stripe.android.TokenCallback;
import com.stripe.android.model.Card;
import com.stripe.android.model.Token;
import com.stripe.example.dialog.ErrorDialogFragment;
import com.stripe.example.dialog.ProgressDialogFragment;
import com.stripe.example.PaymentForm;
import com.stripe.example.TokenList;
public class PaymentActivity extends FragmentActivity {
/*
* Change this to your publishable key.
*
* You can get your key here: https://manage.stripe.com/account/apikeys
*/
public static final String PUBLISHABLE_KEY = "pk_test_6pRNASCoBOKtIshFeQd4XMUh";
private ProgressDialogFragment progressFragment;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.payment_activity);
progressFragment = ProgressDialogFragment
.newInstance(R.string.progressMessage);
}
public void saveCreditCard(PaymentForm form) {
Card card = new Card(form.getCardNumber(), form.getExpMonth(),
form.getExpYear(), form.getCvc());
Log.e("card ", "27th March ::- " + card);
boolean validation = card.validateCard();
Log.e("Validation", "27th March::-" + validation);
if (validation) {
startProgress();
new Stripe().createToken(card, PUBLISHABLE_KEY,
new TokenCallback() {
public void onSuccess(Token token) {
getTokenList().addToList(token);
Log.e("Token Json", "27th March::-" + token);
finishProgress();
}
public void onError(Exception error) {
handleError(error.getLocalizedMessage());
finishProgress();
}
});
} else if (!card.validateNumber()) {
handleError("The card number that you entered is invalid");
} else if (!card.validateExpiryDate()) {
handleError("The expiration date that you entered is invalid");
} else if (!card.validateCVC()) {
handleError("The CVC code that you entered is invalid");
} else {
handleError("The card details that you entered are invalid");
}
}
private void startProgress() {
progressFragment.show(getSupportFragmentManager(), "progress");
}
private void finishProgress() {
progressFragment.dismiss();
}
private void handleError(String error) {
DialogFragment fragment = ErrorDialogFragment.newInstance(
R.string.validationErrors, error);
fragment.show(getSupportFragmentManager(), "error");
}
private TokenList getTokenList() {
return (TokenList) (getSupportFragmentManager()
.findFragmentById(R.id.token_list));
}
}