Blame view

app/src/main/java/com/gt/union/sdk/demo/MainActivity.java 5.98 KB
b2aec417b   kingzh   initialize
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
  package com.gt.union.sdk.demo;
  
  import androidx.annotation.Nullable;
  import androidx.appcompat.app.AppCompatActivity;
  
  import android.content.Intent;
  import android.os.Bundle;
  import android.view.View;
  import android.widget.Button;
  import android.widget.LinearLayout;
  import android.widget.TextView;
  import android.widget.Toast;
  
  import com.gt.union.sdk.SDKAgent;
  import com.gt.union.sdk.callback.ActionCallback;
  import com.gt.union.sdk.login.SessionKey;
  import com.gt.union.sdk.recharge.OrderForm;
  
  public class MainActivity extends AppCompatActivity {
  
      private String appId = "10105";
      private String channelId = "1067";
      private String serverId = "222";
      private String roleId = "222006003";
  
      private SDKAgent sdkAgent;
  
      private TextView tvInfo;
      private LinearLayout sessionLayout;
  
      private Button btnLogin;
  
      private Button btnLogout;
      private Button btnPay;
      private Button btnIab;
      private Button btnAutoJudge;
  
      @Override
      protected void onCreate(Bundle savedInstanceState) {
          super.onCreate(savedInstanceState);
          setContentView(R.layout.activity_main);
  
          tvInfo = findViewById(R.id.info);
          sessionLayout = findViewById(R.id.sessionLayout);
  
          btnLogin = findViewById(R.id.login);
          btnLogout = findViewById(R.id.logout);
          btnPay = findViewById(R.id.pay);
          btnIab = findViewById(R.id.iab);
          btnAutoJudge = findViewById(R.id.auto_judge_pay);
  
          btnLogin.setOnClickListener(new View.OnClickListener() {
              @Override
              public void onClick(View v) {
                  sdkAgent.login(MainActivity.this, new ActionCallback() {
                      @Override
                      public void onCallback(String event, Object... payload) {
                          if(event.equals(ActionCallback.ACTION_LOGIN)) {
                              boolean result = (boolean) payload[0];
                              if(result) {
                                  SessionKey sessionKey = (SessionKey) payload[1];
                                  tvInfo.setText(sessionKey.getUid());
                                  sessionLayout.setVisibility(View.VISIBLE);
                                  btnLogin.setVisibility(View.GONE);
                              }else{
                                  Toast.makeText(MainActivity.this,"登录取消",Toast.LENGTH_SHORT).show();
                              }
                          }
                      }
                  });
              }
          });
          btnLogout.setOnClickListener(new View.OnClickListener() {
              @Override
              public void onClick(View v) {
                  sdkAgent.logout(new ActionCallback() {
                      @Override
                      public void onCallback(String event, Object... payload) {
                          if(event.equals(ActionCallback.ACTION_LOGOUT)) {
                              sessionLayout.setVisibility(View.GONE);
                              btnLogin.setVisibility(View.VISIBLE);
                          }
                      }
                  });
              }
          });
  
          btnPay.setOnClickListener(new View.OnClickListener() {
              @Override
              public void onClick(View v) {
                  OrderForm order = new OrderForm();
                  order.setServerId(serverId).setRoleId(roleId).setExtraInfo("orderId").setAmount(0.99f).setCurrency("USD").setProduct("gro.udc.mig.99");
  
                  sdkAgent.goRecharge(MainActivity.this, order, new ActionCallback() {
                      @Override
                      public void onCallback(String event, Object... payload) {
                          if(event.equals(ActionCallback.ACTION_PAY)) {
                              boolean result = (boolean) payload[0];
                              String res = result ? "支付成功" : "支付失败";
                              Toast.makeText(MainActivity.this, res, Toast.LENGTH_SHORT).show();
                          }
                      }
                  });
              }
          });
  
          btnIab.setOnClickListener(new View.OnClickListener() {
              @Override
              public void onClick(View v) {
                  OrderForm order = new OrderForm();
                  order.setServerId(serverId).setRoleId(roleId).setExtraInfo("orderId").setAmount(0.99f).setCurrency("USD").setProduct("gro.udc.mig.99");
                  sdkAgent.launchIap(MainActivity.this, order, new ActionCallback() {
                      @Override
                      public void onCallback(String event, Object... payload) {
                          if(event.equals(ActionCallback.ACTION_PAY)) {
                              boolean result = (boolean) payload[0];
                              String des = (String) payload[1];
                              String res = result ? "Iab支付完成" : "Iab支付失败:"+des;
                              Toast.makeText(MainActivity.this, res, Toast.LENGTH_SHORT).show();
                          }
                      }
                  });
              }
          });
  
          btnAutoJudge.setOnClickListener(new View.OnClickListener() {
              @Override
              public void onClick(View v) {
                  sdkAgent.judgePayment(MainActivity.this, serverId, roleId, new ActionCallback() {
                      @Override
                      public void onCallback(String event, Object... payload) {
                          if(event.equals(ActionCallback.ACTION_JUDGE)) {
                              boolean result = (boolean) payload[0];
                              if (result)
                                  btnPay.performClick();
                              else
                                  btnIab.performClick();
                          }
                      }
                  });
              }
          });
  
  
          sdkAgent = SDKAgent.object(this, appId).channel(channelId);
  
  
      }
  
      @Override
      protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
          if (!sdkAgent.onActivityResult(requestCode, resultCode, data))
              super.onActivityResult(requestCode, resultCode, data);
      }
  }