2010-08-27 8 views
9

Ich versuche, die Paypal API zu integrieren, um meine App Spende basiert. Ich habe zwei Fragen:Android und Paypal API-Integration

  1. Ich kann den Knopf sehen, ich klicke es, aber es tut nichts! (die Aktivität für checkoutIntent feuert nicht?)

  2. Was sind Ihre Erfahrungen mit Spenden-basierten Android-Apps? Ich möchte ungefähr $ 250 pro Monat von diesem Ding machen, ist das überhaupt möglich?


public class Donate extends Activity implements OnClickListener { 

    PayPal ppObj = PayPal.initWithAppID(this.getBaseContext(), "APP-80W284485P519543T", PayPal.ENV_SANDBOX); 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.donate); 
     LinearLayout mainLayout = (LinearLayout)findViewById(R.id.LinearLayout01); 
     if (ppObj == null) ppObj = PayPal.initWithAppID(this.getBaseContext(), "APP-80W284485P519543T", PayPal.ENV_SANDBOX); 
     CheckoutButton payPalButton = (CheckoutButton) ppObj.getPaymentButton(PayPal.BUTTON_294x45, this, PayPal.PAYMENT_TYPE_HARD_GOODS); 
     payPalButton.setOnClickListener(this); 
     mainLayout.addView(payPalButton); 
    } 

    public void onClick(View arg0) { 
     PayPalPayment newPayment = new PayPalPayment(); 
     newPayment.setAmount((float) 1.00); 
     newPayment.setCurrency("USD"); 
     newPayment.setRecipient("[email protected]"); 
     Intent checkoutIntent = new Intent(this, PayPalActivity.class); 
     checkoutIntent.putExtra(PayPalActivity.EXTRA_PAYMENT_INFO, newPayment); 

     this.startActivityForResult(checkoutIntent, 1); 
    } 

    @Override 
     public void onBackPressed() { 
     Intent menuIntent = new Intent(Donate.this, MTGTools.class); 
     this.startActivity(menuIntent); 
     } 
    } 
+2

Ich sehe nichts offensichtlich falsch mit dem, was Sie tun. Sind Sie sicher, dass der LaunchPayPalButton, den Sie in oncreate haben, der selbe ist, auf den Sie klicken? Re # 2..das hängt ganz davon ab, wie gut Ihre App ist .. –

+0

Es war nicht. Ich fand heraus, dass ich diesen Paypal-Button zu meinem Layout hinzufügen musste. Ich werde meinen Code bearbeiten, um meine Änderungen widerzuspiegeln. 2. Es ist eine Magie: die Sammlung Gesundheit Tracker-Anwendung, es gibt eine Reihe von freien auf dem Markt, aber ich werde Kartenerkennung in mir bauen. (Hoffentlich) –

+0

Kann ich sogar einen Sandbox-Call zu Paypal von meinem Emulator machen? –

Antwort

0

In onclick:

pp=PayPal.getInstance(); 

// Should do like this to start paypal activity 
PayPalPayment newPayment = new PayPalPayment(); 
newPayment.setCurrencyType("USD"); 

Intent paypalIntent=pp.checkout(newPayment, test.this); 
startActivityForResult(paypalIntent, 1);