PayActivity.java 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116
  1. package com.efunbox.pay;
  2. import android.view.View;
  3. import android.widget.Button;
  4. import com.alipay.sdk.app.PayTask;
  5. import com.efunbox.base.BaseMvpActivity;
  6. import com.efunbox.base.cusview.CusToast;
  7. import com.efunbox.pay.model.PayModel;
  8. import com.efunbox.pay.model.impl.PayModelImpl;
  9. import com.efunbox.pay.presenter.PayPresenter;
  10. import com.efunbox.pay.util.PayUtil;
  11. import com.efunbox.pay.view.PayView;
  12. import com.tencent.mm.opensdk.modelpay.PayReq;
  13. import com.tencent.mm.opensdk.openapi.IWXAPI;
  14. import com.tencent.mm.opensdk.openapi.WXAPIFactory;
  15. import java.util.Map;
  16. import java.util.SortedMap;
  17. import java.util.TreeMap;
  18. public class PayActivity extends BaseMvpActivity<PayModel, PayView, PayPresenter> implements PayView {
  19. IWXAPI WeChatApi;
  20. Button btnWeChatPay;
  21. Button btnAliPay;
  22. @Override
  23. public int getLayoutId() {
  24. return R.layout.activity_pay;
  25. }
  26. @Override
  27. public View getLayoutView() {
  28. return null;
  29. }
  30. @Override
  31. public void initView() {
  32. btnWeChatPay = findViewById(R.id.pay_wechat);
  33. btnAliPay = findViewById(R.id.pay_ali);
  34. WeChatApi = WXAPIFactory.createWXAPI(this, "wxd930ea5d5a258f4f", false);
  35. WeChatApi.registerApp("wxd930ea5d5a258f4f");
  36. btnWeChatPay.setOnClickListener(new View.OnClickListener() {
  37. @Override
  38. public void onClick(View view) {
  39. if (!WeChatApi.isWXAppInstalled()) {
  40. CusToast.getInstance(mActivity).show("请安装微信", 1000);
  41. return;
  42. }
  43. //参数详情 https://pay.weixin.qq.com/wiki/doc/apiv3/apis/chapter3_2_4.shtml
  44. PayReq request = new PayReq();
  45. request.appId = "wxd930ea5d5a258f4f";
  46. request.partnerId = "1900000109";
  47. request.prepayId = "1101000000140415649af9fc314aa427";
  48. request.packageValue = "Sign=WXPay";
  49. request.nonceStr = "1101000000140429eb40476f8896f4c9";
  50. request.timeStamp = "1398746574";
  51. request.sign = "";
  52. WeChatApi.sendReq(request);
  53. }
  54. });
  55. btnAliPay.setOnClickListener(new View.OnClickListener() {
  56. @Override
  57. public void onClick(View view) {
  58. // final String orderInfo = info; // 订单信息
  59. Runnable payRunnable = new Runnable() {
  60. @Override
  61. public void run() {
  62. PayTask alipay = new PayTask(mActivity);
  63. alipay.showLoading();
  64. // Map<String,String> result = alipay.payV2(orderInfo,true);
  65. // Message msg = new Message();
  66. // msg.what = SDK_PAY_FLAG;
  67. // msg.obj = result;
  68. // mHandler.sendMessage(msg);
  69. }
  70. };
  71. // 必须异步调用
  72. Thread payThread = new Thread(payRunnable);
  73. payThread.start();
  74. }
  75. });
  76. }
  77. @Override
  78. public void initViewListener() {
  79. }
  80. @Override
  81. public PayModel createModel() {
  82. return new PayModelImpl();
  83. }
  84. @Override
  85. public PayView createView() {
  86. return this;
  87. }
  88. @Override
  89. public PayPresenter createPresenter() {
  90. return new PayPresenter();
  91. }
  92. @Override
  93. public BaseMvpActivity getBaseActivity() {
  94. return mActivity;
  95. }
  96. }