我在我的项目中设计了PayPal功能:
public class MypaypalActivity extends Activity implements OnClickListener{
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
LinearLayout mLinLay= 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 launchSimplePayment = pp.getCheckoutButton(this,
PayPal.BUTTON_118x24, CheckoutButton.TEXT_PAY);
launchSimplePayment.setOnClickListener( this);
layoutSimplePayment.addView(launchSimplePayment);
mLinLay.addView(layoutSimplePayment);
setContentView(mLinLay);
}
这只会正常工作一次。当我第二次按下PayPal按钮时,这个应用程序崩溃了。在目录中有一个错误是你初始化PayPal两次,所以使用getInstance();初始化之后。
我该怎么做?
嘿,这是我的问题的解决方案,我自己做了这个。
PayPal pp = PayPal.getInstance();
if (pp == null) {
try {
pp = PayPal.initWithAppID(this, "", PayPal.ENV_NONE);
} catch (IllegalStateException e) {
throw new RuntimeException(e);
}
pp.setShippingEnabled(false);
}