Commit b7f8e6f8cb53de37c073b8dd54903861ba867666

Authored by YangShuai
1 parent cc38dcb6

1 调整网络框架请求逻辑

app/strike/build.gradle
... ... @@ -39,6 +39,10 @@ android {
39 39 dexOptions {
40 40 javaMaxHeapSize '4g'
41 41 }
  42 +
  43 + dataBinding {
  44 + enabled true
  45 + }
42 46 buildTypes {
43 47 debug {
44 48 signingConfig signingConfigs.debugConfig
... ... @@ -169,6 +173,7 @@ dependencies {
169 173 implementation project(path: ':core:network')
170 174 implementation project(path: ':core:base')
171 175 implementation project(path: ':cloud:user')
  176 + implementation project(path: ':cloud:pay')
172 177  
173 178 implementation project(path: ':core:imageload')
174 179 implementation project(path: ':module:xiaojiasoundbox')
... ...
app/strike/src/main/java/com/cnlive/strike/MyActivity.java
... ... @@ -3,29 +3,83 @@ package com.cnlive.strike;
3 3  
4 4 import android.content.Intent;
5 5 import android.text.TextUtils;
  6 +import android.view.View;
6 7  
7 8 import com.alibaba.android.arouter.facade.annotation.Route;
8 9 import com.cnlive.core.libs.base.frame.activity.BaseActivity;
  10 +import com.cnlive.core.network.HttpConn;
  11 +import com.cnlive.core.network.NetCallBack;
  12 +import com.cnlive.core.network.model.BaseResult;
  13 +import com.cnlive.libs.wjjpay.model.GroupBalanceInfo;
  14 +import com.cnlive.libs.wjjpay.pay.WjjPay;
9 15 import com.cnlive.moudle.pedometer.commonInfo.CommonInfo;
10 16 import com.cnlive.moudle.pedometer.ui.activity.RunLineActivity;
  17 +import com.cnlive.strike.databinding.ActivityMyBinding;
11 18 import com.cnlive.strike.user.auth.UserService;
12 19 import com.cnlive.strike.xiaojiaspeaker.commonInfo.XiaoJIaCommInfo;
13 20 import com.cnlive.strike.xiaojiaspeaker.ui.activity.AllDeviceActivity;
  21 +import com.cnlive.strike.xiaojiaspeaker.util.QMUITipDialogUtil;
14 22  
15 23 @Route(path = "/strick/MyActivity")
16 24 public class MyActivity extends BaseActivity {
  25 + public ActivityMyBinding binding;
17 26  
18 27 @Override
19   - protected int getViewLayoutId() {
  28 + protected int getBindLayoutId() {
20 29 return R.layout.activity_my;
21 30 }
22 31  
23 32 @Override
  33 + protected void initBindingData() {
  34 + super.initBindingData();
  35 + binding = (ActivityMyBinding) baseBinding;
  36 + }
  37 +
  38 + @Override
24 39 protected void initView() {
25 40 // getSupportFragmentManager().beginTransaction().replace(R.id.fragment_container, new MyFragment()).commitAllowingStateLoss();
26 41 initXiaoJiaSoundBoxData();
27   - startActivity(new Intent(MyActivity.this, RunLineActivity.class));
28   - finish();
  42 +// startActivity(new Intent(MyActivity.this, RunLineActivity.class));
  43 +// finish();
  44 + binding.btnChange.setOnClickListener(new View.OnClickListener() {
  45 + @Override
  46 + public void onClick(View v) {
  47 +// WjjPay.passwordIsExisting(UserService.getUid(me), new NetCallBack<BaseResult<GroupBalanceInfo>>() {
  48 +// @Override
  49 +// public void onRequestState(int state) {
  50 +//
  51 +// }
  52 +//
  53 +// @Override
  54 +// public void onSuccess(BaseResult<GroupBalanceInfo> data) {
  55 +// QMUITipDialogUtil.successDialog(me, data.getErrorCode() + "" + data.getData().getBalance(), 5);
  56 +// }
  57 +//
  58 +// @Override
  59 +// public void onFailure(String errCode, String errMsg) {
  60 +// QMUITipDialogUtil.failedDialog(me, errMsg, 3);
  61 +// }
  62 +// });
  63 + WjjPay.setPassword(UserService.getUid(me), "123456", new NetCallBack<BaseResult>() {
  64 + @Override
  65 + public void onRequestState(int state) {
  66 + if (state == HttpConn.ON_START) {
  67 + QMUITipDialogUtil.loadingDialog(me, "修改中", true);
  68 + }
  69 + }
  70 +
  71 + @Override
  72 + public void onSuccess(BaseResult data) {
  73 + QMUITipDialogUtil.successDialog(me, data.getMessage(), 5);
  74 + }
  75 +
  76 + @Override
  77 + public void onFailure(String errCode, String errMsg) {
  78 + QMUITipDialogUtil.failedDialog(me, errMsg, 3);
  79 + }
  80 + });
  81 + }
  82 + });
29 83 }
30 84  
31 85 @Override
... ...
app/strike/src/main/res/layout/activity_my.xml
1 1 <?xml version="1.0" encoding="utf-8"?>
2   -<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
3   - xmlns:app="http://schemas.android.com/apk/res-auto"
4   - xmlns:tools="http://schemas.android.com/tools"
5   - android:layout_width="match_parent"
6   - android:layout_height="match_parent"
7   - tools:context="com.cnlive.strike.MyActivity">
  2 +<layout>
8 3  
9   - <RelativeLayout
10   - android:id="@+id/fragment_container"
  4 + <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
  5 + xmlns:app="http://schemas.android.com/apk/res-auto"
  6 + xmlns:tools="http://schemas.android.com/tools"
11 7 android:layout_width="match_parent"
12   - android:layout_height="match_parent">
  8 + android:layout_height="match_parent"
  9 + tools:context="com.cnlive.strike.MyActivity">
13 10  
14   - <TextView
15   - android:layout_width="wrap_content"
16   - android:layout_height="wrap_content"
17   - android:text="sfwerfwef" />
  11 + <RelativeLayout
  12 + android:id="@+id/fragment_container"
  13 + android:layout_width="match_parent"
  14 + android:layout_height="match_parent">
  15 +
  16 + <TextView
  17 + android:layout_width="wrap_content"
  18 + android:layout_height="wrap_content"
  19 + android:text="sfwerfwef" />
  20 +
  21 + <Button
  22 + android:id="@+id/btn_change"
  23 + android:layout_width="wrap_content"
  24 + android:layout_height="wrap_content"
  25 + android:text="修改支付密码" />
  26 + </RelativeLayout>
18 27 </RelativeLayout>
19   -</RelativeLayout>
  28 +</layout>
20 29 \ No newline at end of file
... ...
core/network/src/main/java/com/cnlive/core/network/NetBuilder.java
1 1 package com.cnlive.core.network;
2 2  
3 3  
  4 +import com.cnlive.core.network.interceptor.NetPPEncryptInterceptor;
  5 +import com.cnlive.core.network.interceptor.NetPPPayEncryptInterceptor;
4 6 import com.cnlive.core.network.interceptor.SignEncryptInterceptor;
5 7 import com.cnlive.core.network.request.HttpConfig;
6 8  
... ... @@ -65,6 +67,12 @@ public class NetBuilder&lt;NetService&gt; {
65 67 if (interceptor instanceof SignEncryptInterceptor) {
66 68 isAdd = true;
67 69 break;
  70 + } else if (interceptor instanceof NetPPEncryptInterceptor) {
  71 + isAdd = true;
  72 + break;
  73 + } else if (interceptor instanceof NetPPPayEncryptInterceptor) {
  74 + isAdd = true;
  75 + break;
68 76 }
69 77 }
70 78 if (!isAdd) {
... ...
core/network/src/main/java/com/cnlive/core/network/interceptor/DESEncryptInterceptor.java
1 1 package com.cnlive.core.network.interceptor;
2 2  
3 3  
4   -import com.cnlive.core.network.util.SignUtil;
5 4 import com.cnlive.core.libs.base.application.AppConfig;
  5 +import com.cnlive.core.network.util.SignUtil;
6 6 import com.cnlive.libs.encipher.CNLiveEncipher;
7 7  
8 8 import java.io.IOException;
... ...
core/network/src/main/java/com/cnlive/core/network/interceptor/NetPPPayEncryptInterceptor.java
... ... @@ -6,99 +6,97 @@ import com.cnlive.core.network.util.SignUtil;
6 6  
7 7 import java.io.IOException;
8 8 import java.util.HashMap;
  9 +import java.util.Iterator;
9 10 import java.util.Map;
10 11  
11 12 import okhttp3.FormBody;
12   -import okhttp3.HttpUrl;
13 13 import okhttp3.Interceptor;
14 14 import okhttp3.MultipartBody;
15 15 import okhttp3.Request;
16   -import okhttp3.RequestBody;
17 16 import okhttp3.Response;
18 17  
19 18 public class NetPPPayEncryptInterceptor implements Interceptor {
20   - @Override
21   - public Response intercept(Chain chain) throws IOException {
22   - Request request = chain.request();
23   -
24   - if (request.body() instanceof FormBody) {
25   - //处理方式 1
26   - Map<String, String> parameter = new HashMap<>();
27   -
28   - FormBody body = ((FormBody) request.body());
29   - FormBody.Builder builder = new FormBody.Builder();
  19 + public NetPPPayEncryptInterceptor() {
  20 + }
30 21  
31   - for (int i = 0; i < body.size(); i++) {
32   - parameter.put(body.name(i), body.value(i));
  22 + public Response intercept(Chain var1) throws IOException {
  23 + Request var2 = var1.request();
  24 + Map.Entry var7;
  25 + FormBody.Builder var11;
  26 + Iterator var13;
  27 + FormBody var14;
  28 + Request var15;
  29 + if (var2.body() instanceof FormBody) {
  30 + HashMap var8 = new HashMap();
  31 + FormBody var9 = (FormBody)var2.body();
  32 + var11 = new FormBody.Builder();
  33 +
  34 + for(int var16 = 0; var16 < var9.size(); ++var16) {
  35 + var8.put(var9.name(var16), var9.value(var16));
33 36 }
34 37  
35   - for (Map.Entry<String, String> entity : SignUtil.getNetPPPaySignString(parameter).entrySet()) {
36   - builder.addEncoded(entity.getKey(), entity.getValue());
37   - }
  38 + var13 = SignUtil.getNetPPPaySignString(var8).entrySet().iterator();
38 39  
39   - RequestBody newBody = builder.build();
  40 + while(var13.hasNext()) {
  41 + var7 = (Map.Entry)var13.next();
  42 + var11.addEncoded((String)var7.getKey(), (String)var7.getValue());
  43 + }
40 44  
41   - Request newRequest = request.newBuilder()
42   - .method(request.method(), newBody)
43   - .url(request.url())
44   - .build();
45   - return chain.proceed(newRequest);
46   - } else if (request.body() instanceof MultipartBody) {
47   - //处理方式 2 (暂时不签名)
  45 + var14 = var11.build();
  46 + var15 = var2.newBuilder().method(var2.method(), var14).url(var2.url()).build();
  47 + return var1.proceed(var15);
  48 + } else if (var2.body() instanceof MultipartBody) {
  49 + return var1.proceed(var2);
48 50 } else {
49   - if ("POST".equals(request.method())) {
50   - //处理方式 3
51   - HttpUrl.Builder authorizedUrlBuilder = request.url().newBuilder();
52   -
53   - Map<String, String> parameter = new HashMap<>();
54   -
55   - for (String key : request.url().queryParameterNames()) {
56   - parameter.put(key, request.url().queryParameter(key));
57   - authorizedUrlBuilder.removeAllQueryParameters(key);
  51 + okhttp3.HttpUrl.Builder var3;
  52 + HashMap var4;
  53 + Iterator var5;
  54 + String var6;
  55 + if ("POST".equals(var2.method())) {
  56 + var3 = var2.url().newBuilder();
  57 + var4 = new HashMap();
  58 + var5 = var2.url().queryParameterNames().iterator();
  59 +
  60 + while(var5.hasNext()) {
  61 + var6 = (String)var5.next();
  62 + var4.put(var6, var2.url().queryParameter(var6));
  63 + var3.removeAllQueryParameters(var6);
58 64 }
59 65  
60   - FormBody.Builder builder = new FormBody.Builder();
  66 + var11 = new FormBody.Builder();
  67 + var13 = SignUtil.getNetPPPaySignString(var4).entrySet().iterator();
61 68  
62   - for (Map.Entry<String, String> entity : SignUtil.getNetPPPaySignString(parameter).entrySet()) {
63   - builder.add(entity.getKey(), entity.getValue());
  69 + while(var13.hasNext()) {
  70 + var7 = (Map.Entry)var13.next();
  71 + var11.add((String)var7.getKey(), (String)var7.getValue());
64 72 }
65 73  
66   - RequestBody newBody = builder.build();
67   -
68   - Request newRequest = request.newBuilder()
69   - .method(request.method(), newBody)
70   - .url(authorizedUrlBuilder.build())
71   - .build();
72   - return chain.proceed(newRequest);
73   - }else{
74   - //处理方式 3
75   - HttpUrl.Builder authorizedUrlBuilder = request.url().newBuilder();
76   -
77   - Map<String, String> parameter = new HashMap<>();
78   -
79   - for (String key : request.url().queryParameterNames()) {
80   - parameter.put(key, request.url().queryParameter(key));
81   - authorizedUrlBuilder.removeAllQueryParameters(key);
  74 + var14 = var11.build();
  75 + var15 = var2.newBuilder().method(var2.method(), var14).url(var3.build()).build();
  76 + return var1.proceed(var15);
  77 + } else {
  78 + var3 = var2.url().newBuilder();
  79 + var4 = new HashMap();
  80 + var5 = var2.url().queryParameterNames().iterator();
  81 +
  82 + while(var5.hasNext()) {
  83 + var6 = (String)var5.next();
  84 + var4.put(var6, var2.url().queryParameter(var6));
  85 + var3.removeAllQueryParameters(var6);
82 86 }
83 87  
84   - for (Map.Entry<String, String> entity : SignUtil.getNetPPPaySignString(parameter).entrySet()) {
85   - authorizedUrlBuilder.addQueryParameter(entity.getKey(), entity.getValue());
86   - }
  88 + var5 = SignUtil.getNetPPPaySignString(var4).entrySet().iterator();
87 89  
88   - authorizedUrlBuilder.scheme(request.url().scheme());
89   - authorizedUrlBuilder.host(request.url().host());
  90 + while(var5.hasNext()) {
  91 + Map.Entry var12 = (Map.Entry)var5.next();
  92 + var3.addQueryParameter((String)var12.getKey(), (String)var12.getValue());
  93 + }
90 94  
91   - Request newRequest = request.newBuilder()
92   - .method(request.method(), request.body())
93   - .url(authorizedUrlBuilder.build())
94   - .build();
95   - return chain.proceed(newRequest);
  95 + var3.scheme(var2.url().scheme());
  96 + var3.host(var2.url().host());
  97 + Request var10 = var2.newBuilder().method(var2.method(), var2.body()).url(var3.build()).build();
  98 + return var1.proceed(var10);
96 99 }
97 100 }
98   -
99   -
100   - return chain.proceed(request);
101 101 }
102   -
103   -
104 102 }
105 103 \ No newline at end of file
... ...