2012-04-01 75 views
1

我在沙箱環境中創建工作PayPal按鈕時遇到問題。PayPal錯誤 - 請確保已輸入所有字段

在沙箱環境中輸入我的電子郵件和密碼後。

這就是我所看到的。

enter image description here

這裏是我的代碼

AndroidManifest.xml中

<uses-sdk android:minSdkVersion="15" /> 
<application 
android:icon="@drawable/ic_launcher" 
android:label="@string/app_name" > 
    <activity 
     android:name=".MypaypalActivity" 
     android:label="@string/app_name" > 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 
      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
    </activity> 
    <activity android:name="com.paypal.android.MEP.PayPalActivity" 
android:configChanges="keyboardHidden|orientation" 
android:theme="@android:style/Theme.Translucent.NoTitleBar" 
/> 
</application> 
<uses-permission android:name="android.permission.INTERNET"/> 
<uses-permission android:name="android.permission.READ_PHONE_STATE"/> 
</manifest> 

MypaypalActivity

公共類MypaypalActivity擴展活動實現OnClickListener {

@Override 
    public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    LinearLayout MainLayout= new LinearLayout(this); 

    setContentView(R.layout.main); 
    PayPal pp = PayPal.initWithAppID(this, "APP-80W284485P519543T", PayPal.ENV_SANDBOX); 

    LinearLayout layoutSimplePayment = new LinearLayout(this); 
    layoutSimplePayment.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT)); 
    layoutSimplePayment.setOrientation(LinearLayout.VERTICAL); 

    CheckoutButton COButton = pp.getCheckoutButton(this, PayPal.BUTTON_118x24, CheckoutButton.TEXT_PAY); 


    COButton.setOnClickListener(this); 
    layoutSimplePayment.addView(COButton); 
    MainLayout.addView(layoutSimplePayment); 

    setContentView(MainLayout); 
} 


public void onClick(View v) { 
    PayPalPayment payment = new PayPalPayment(); 
    payment.setSubtotal(new BigDecimal("10")); 
    payment.setCurrencyType("USD"); 
    payment.setRecipient("[email protected]"); 
// payment.setPaymentType(PayPal.PAYMENT_TYPE_GOODS); 

    Intent checkoutIntent = PayPal.getInstance().checkout(payment, this); 
    startActivityForResult(checkoutIntent, 1); 
} 

回答

0

我面臨同樣的問題,最後我解決使用此代碼到 通整數值來BIGDECIMAL

payment.setSubtotal(new BigDecimal("10")); 

,而不是使用:

payment.setSubtotal(new BigDecimal(10)); 

例如:

public void onClick(View v) { 
    PayPalPayment payment = new PayPalPayment(); 
    payment.setSubtotal(new BigDecimal("10")); 
    payment.setCurrencyType("USD"); 
    payment.setRecipient("[email protected]"); 
// payment.setPaymentType(PayPal.PAYMENT_TYPE_GOODS); 

    Intent checkoutIntent = PayPal.getInstance().checkout(payment, this); 
    startActivityForResult(checkoutIntent, 1); 
} 
相關問題