Сбой команды initWithAppID - PullRequest
       1

Сбой команды initWithAppID

2 голосов
/ 29 августа 2011

Я новичок в программировании Android и особенно в PayPal.Я получил приложение, которое было поручено устранить неполадки - несмотря на то, что он новичок в Android, в этой строке происходит сбой:

initWithAppID(this.getBaseContext(), appID, PayPal.ENV_SANDBOX);

Во-первых, PayPal.ENV_SANDBOX всегда возвращает 0, а я нетуверен, если его предполагается.Во-вторых, почему там всегда происходит сбой?Я искал в Интернете по той причине, что люди говорят, что это потому, что он не полностью инициализирован, поэтому он не работает.Теперь я хотел бы знать, что мне нужно сделать, если я не могу инициализировать эту библиотеку?

Я использую Eclipse IDE, тестирование на Samsung Galaxy Tab Android 2.2

Ответы [ 2 ]

1 голос
/ 30 августа 2011

Не знаю, поможет ли это, но я исправил это при тестировании с PayPal.ENV_NONE (от https://github.com/phonegap/phonegap-plugins/blob/master/Android/PayPalPlugin/src/com/phonegap/plugin/mpl.java)

PayPal pp = PayPal.getInstance();
if (pp == null) {
    try {
        pp = PayPal.initWithAppID(getApplicationContext(), "", PayPal.ENV_NONE);
    } catch (IllegalStateException e) {
        throw new RuntimeException(e);
    }
    pp.setShippingEnabled(false);
}

Затем при создании кнопки:

PayPal pp = PayPal.getInstance();
CheckoutButton cb = pp.getCheckoutButton(
        getBaseContext(), 
        PayPal.BUTTON_194x37, 
        CheckoutButton.TEXT_PAY);
cb.setOnClickListener(new OnClickListener() {
    PayPalPayment payment = new PayPalPayment();
    // set subtotal etc ...
    Intent i = PayPal.getInstance().checkout(payment,getApplicationContext());
    startActivityForResult(i, 1);
});

Надеюсь, это поможет как-то

0 голосов
/ 29 августа 2011

Можете ли вы указать больше информации об этом методе?Это метод библиотеки PayPal?Я думаю, что PayPal.ENV_SANDBOX - это переменная окружения, которую вы должны установить.Название предполагает, что эти настройки используются в целях тестирования или для разработки (на самом деле никаких платежей).Я думаю, вы можете узнать больше об этом методе в документации библиотеки.Второй вопрос: вы использовали правильный appId?И является ли базовый контекст правильным контекстом для использования?Возможно, вам придется использовать getApplicationContext, см. здесь и здесь .

...