2016-05-05 7 views
0

遅延連鎖支払を使用したアダプティブペイメントを実装しています。クライアント側からPayPal mpl Android、ENV_SANDBOXの初期化問題

2事前承認キーを取得https://svcs.sandbox.paypal.com/AdaptivePayments/Preapproval、サーバー側から

1)私が使用して)私は、ユーザーがキーを承認できるようにAndroidのためにMPLを使用します、私は単純に次のステップを実行していることを行うには 私は、ユーザーによって承認事前承認キーを使用して、支払いを作成する、サーバー側から

3)

問題は、私はすべてをテストするためにサンドボックス環境でMPLを使用したいということですが、私は(PayPalのライブラリを初期化するときAndroidで)onActivityResultで次のエラーが表示されます。

"APPLICATION許可されていない"、エラーコード:私はPayPal.ENV_NONEは、アプリケーションが正しく初期化された環境を使用しますが、私がする必要がある場合は代わりに

PayPal pp = PayPal.getInstance(); 
if (pp == null) { 
     pp = PayPal.initWithAppID(this, "APP-80W284485P519543T", PayPal.ENV_SANDBOX); 
     pp.setLanguage("en_US"); 
     pp.setFeesPayer(PayPal.FEEPAYER_SECONDARYONLY); 
     pp.setShippingEnabled(true); 
     pp.setDynamicAmountCalculationEnabled(false); 
     boolean isAppInit = pp.isLibraryInitialized(); 
} 
pp.setPreapprovalKey("PA-64N62546XG272001B"); 

Intent preapproveIntent = pp.preapprove(preapproval, Taskhunters.getContext()); 
startActivityForResult(preapproveIntent, REQUEST_CODE); 

:これはコード-1

事前承認キーが「承認済み」に設定されておらず、支払いフローを完了できないため、サンドボックス環境でテストしてください。

私は3つのサンドボックスアカウントが正しく作成されており、私がサーバーから行うすべてのAPI呼び出しは完全に機能しています。

したがって、質問は次のとおりです。 サンドボックス環境で動作するMPLを取得するにはどうすればよいですか?

埋め込みフローの使用を提案する人にとって、私はすでに試してみましたが、使いやすさはひどいです。

ありがとうございました!

答えて

0

最後に問題が見つかりました。 MPLには、Android 6から「危険なアクセス許可」になったREAD_PHONE_STATEアクセス権が必要です。 MPLを再度機能させるには、ライブラリを使用する前にその許可を与えるようユーザーに依頼してください。

+0

6.0でテストしていますか? – moDev

+0

はい、私です。 6.0.1正確に – Prem

+0

は6.0で正常に動作していますか?私は5.1の問題に直面しています – moDev