2017-11-22 9 views
1

を動作しません、私は次の実装ガイドの間に得られたテストクライアントのトークンを使用しているコードブレインツリーPaypal.Authorizeは、()ここで

public void payWithPayPal(View v) throws InvalidArgumentException { 
    try { 
       BraintreeFragment fragment = BraintreeFragment.newInstance(this, 
         "eyJ2ZXJzaW9uIjoyLCJhdXRob3JpemF0aW9uRmluZ2VycHJpbnQiOiI0MWRjMzBkMWZkYjU2N2ViNDQ1ZjRjMjg0ZjQ2OTZkN2U5Nzg0NTU5NzEwNTAzN2RjMDE0ODBmZDdiNDg5NjhhfGNyZWF0ZWRfYXQ9MjAxNy0xMS0yMlQwODoyMDoyNi41NTYzNjc3NjgrMDAwMFx1MDAyNm1lcmNoYW50X2lkPTM0OHBrOWNnZjNiZ3l3MmJcdTAwMjZwdWJsaWNfa2V5PTJuMjQ3ZHY4OWJxOXZtcHIiLCJjb25maWdVcmwiOiJodHRwczovL2FwaS5zYW5kYm94LmJyYWludHJlZWdhdGV3YXkuY29tOjQ0My9tZXJjaGFudHMvMzQ4cGs5Y2dmM2JneXcyYi9jbGllbnRfYXBpL3YxL2NvbmZpZ3VyYXRpb24iLCJjaGFsbGVuZ2VzIjpbXSwiZW52aXJvbm1lbnQiOiJzYW5kYm94IiwiY2xpZW50QXBpVXJsIjoiaHR0cHM6Ly9hcGkuc2FuZGJveC5icmFpbnRyZWVnYXRld2F5LmNvbTo0NDMvbWVyY2hhbnRzLzM0OHBrOWNnZjNiZ3l3MmIvY2xpZW50X2FwaSIsImFzc2V0c1VybCI6Imh0dHBzOi8vYXNzZXRzLmJyYWludHJlZWdhdGV3YXkuY29tIiwiYXV0aFVybCI6Imh0dHBzOi8vYXV0aC52ZW5tby5zYW5kYm94LmJyYWludHJlZWdhdGV3YXkuY29tIiwiYW5hbHl0aWNzIjp7InVybCI6Imh0dHBzOi8vY2xpZW50LWFuYWx5dGljcy5zYW5kYm94LmJyYWludHJlZWdhdGV3YXkuY29tLzM0OHBrOWNnZjNiZ3l3MmIifSwidGhyZWVEU2VjdXJlRW5hYmxlZCI6dHJ1ZSwicGF5cGFsRW5hYmxlZCI6dHJ1ZSwicGF5cGFsIjp7ImRpc3BsYXlOYW1lIjoiQWNtZSBXaWRnZXRzLCBMdGQuIChTYW5kYm94KSIsImNsaWVudElkIjpudWxsLCJwcml2YWN5VXJsIjoiaHR0cDovL2V4YW1wbGUuY29tL3BwIiwidXNlckFncmVlbWVudFVybCI6Imh0dHA6Ly9leGFtcGxlLmNvbS90b3MiLCJiYXNlVXJsIjoiaHR0cHM6Ly9hc3NldHMuYnJhaW50cmVlZ2F0ZXdheS5jb20iLCJhc3NldHNVcmwiOiJodHRwczovL2NoZWNrb3V0LnBheXBhbC5jb20iLCJkaXJlY3RCYXNlVXJsIjpudWxsLCJhbGxvd0h0dHAiOnRydWUsImVudmlyb25tZW50Tm9OZXR3b3JrIjp0cnVlLCJlbnZpcm9ubWVudCI6Im9mZmxpbmUiLCJ1bnZldHRlZE1lcmNoYW50IjpmYWxzZSwiYnJhaW50cmVlQ2xpZW50SWQiOiJtYXN0ZXJjbGllbnQzIiwiYmlsbGluZ0FncmVlbWVudHNFbmFibGVkIjp0cnVlLCJtZXJjaGFudEFjY291bnRJZCI6ImFjbWV3aWRnZXRzbHRkc2FuZGJveCIsImN1cnJlbmN5SXNvQ29kZSI6IlVTRCJ9LCJtZXJjaGFudElkIjoiMzQ4cGs5Y2dmM2JneXcyYiIsInZlbm1vIjoib2ZmIn0="); 

       PayPal.authorizeAccount 
         (fragment); 
      } catch (InvalidArgumentException e) { 
       e.printStackTrace(); 
      } 
} 

です。上記のコードを実行すると何も起こりません。

答えて

2

問題は、私がパッケージ名にアンダースコアを付けて問題を修正したことです。確かにこれは文書化されましたが、私の意見では奇妙な要求です。ドキュメントにはlinkがあります。

重要アプリケーションのURLスキームは、アプリのパッケージID で始まり、.brainreeで終わる必要があります。たとえば、パッケージIDが com.your-company.your-appの場合、URLスキームは com.your-company.your-app.brainreeになります。 $ {applicationId}は自動的に がアプリのパッケージに適用され、Gradleを使用しています。

注:定義するスキームはすべて小文字でなければなりません。 パッケージにアンダースコアが含まれている場合は、 をAndroidマニフェストで指定すると、アンダースコアを削除する必要があります。