2013-04-02 27 views
0

我正在構建一個Android應用程序,用戶通過PayPal支付預訂費用。這只是一個簡單的付款從用戶到企業,僅此而已。登錄總是失敗Android上的Paypal MPL

我已經得到了SDK的從這裏https://www.x.com/developers/paypal/documentation-tools/paypal-sdk-index

我選擇了移動支付庫,而不是移動快速結賬圖書館,你看我選了吧? MPL允許我動態創建一個paypal付款按鈕,並且佈局完美。

我按照自帶的SDK中的指南,它的標題是「移動支付庫開發者指南和參考 - Android操作系統版」

主要問題是當我測試的按鈕,我點擊它在沙箱中進行測試支付,它要求我登錄,我嘗試通過我的個人帳戶登錄它總是失敗,我也嘗試了一個朋友的帳戶登錄,仍然總是失敗。

這裏是我使用的代碼的一部分:

paypalObject = PayPal.initWithAppID(getApplicationContext(), "APP-80W284485P519543T", PayPal.ENV_SANDBOX); // SANDBOX 

CheckoutButton launchPayPalButton = paypalObject.getCheckoutButton(M_PaymentOptions.this, PayPal.BUTTON_278x43, CheckoutButton.TEXT_PAY); 
RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT); 
params.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM); 
params.bottomMargin = 10; 
launchPayPalButton.setLayoutParams(params); 
launchPayPalButton.setOnClickListener(new View.OnClickListener() 
{ 
    @Override 
    public void onClick(View v) 
    { 
     PayPalPayment newPayment = new PayPalPayment(); 
     newPayment.setSubtotal(BigDecimal.valueOf(10.f)); 
     newPayment.setCurrencyType("GBP"); 
     newPayment.setRecipient("[email protected]"); // changed the email deliberately for privacy reasons 
     newPayment.setMerchantName("My Company"); 
     Intent paypalIntent = PayPal.getInstance().checkout(newPayment, M_PaymentOptions.this); 
     M_PaymentOptions.this.startActivityForResult(paypalIntent, 1); 
    } 
}); 

((RelativeLayout) findViewById(R.id.m_RelativeLayout)).addView(launchPayPalButton); 
+0

是否有任何可用的日誌?我懷疑你的測試環境不允許使用真實賬戶,你需要創建測試/開發賬戶來測試它。 –

+0

是的,這是非常真實的,我如何創建一個測試帳戶? –

回答

1

我試圖在這是不對的沙箱使用真正的貝寶賬戶登錄,只好從這裏創建一個測試帳號https://developer.paypal.com/webapps/developer/applications/accounts

謝謝對Marek發表評論

任何可用的日誌?我懷疑你的測試環境不允許使用 使用真實賬戶,你需要創建測試/開發 賬戶來測試它。 - Marek Sebera