Blame view
app/src/main/java/com/gump/passport/demo/MainActivity.java
7.09 KB
c507bd179
![]() |
1 2 3 |
package com.gump.passport.demo; import android.content.Intent; |
f905cc410
![]() |
4 |
import android.content.SharedPreferences; |
c507bd179
![]() |
5 |
import android.os.Bundle; |
f905cc410
![]() |
6 |
import android.preference.PreferenceManager; |
c507bd179
![]() |
7 8 |
import android.support.v7.app.AppCompatActivity; import android.util.Log; |
f905cc410
![]() |
9 10 |
import android.view.Menu; import android.view.MenuItem; |
c507bd179
![]() |
11 |
import android.view.View; |
f905cc410
![]() |
12 |
import android.widget.Button; |
c507bd179
![]() |
13 |
import android.widget.TextView; |
f905cc410
![]() |
14 |
import android.widget.Toast; |
c507bd179
![]() |
15 16 17 18 19 20 |
import com.gump.PaymentVersion; import com.gump.SDKAgent; import com.gump.gpassport.Actions; import com.gump.gpassport.GamePlayer; import com.gump.gpassport.Passport; |
f905cc410
![]() |
21 |
import com.gump.gpassport.PlayerType; |
c507bd179
![]() |
22 23 |
import com.gump.gpassport.StateListener; import com.gump.payment.Payment; |
f905cc410
![]() |
24 25 |
import com.gump.payment.callback.PurchaseCallback; import com.gump.payment.callback.ResultCallback; |
c507bd179
![]() |
26 27 |
public class MainActivity extends AppCompatActivity implements StateListener, PurchaseCallback { |
f905cc410
![]() |
28 |
private static final String TAG = "MainActivity"; |
c507bd179
![]() |
29 |
private Passport passport; |
c507bd179
![]() |
30 |
private TextView tvInfo; |
f905cc410
![]() |
31 32 33 34 |
private View mainLayout; private Button btnLogin; private GamePlayer currentPlayer; |
c507bd179
![]() |
35 |
|
f905cc410
![]() |
36 37 38 |
private Button btnIab; private Button btnPay; private Button btnCheck; |
c507bd179
![]() |
39 40 41 42 43 |
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); |
c507bd179
![]() |
44 45 |
tvInfo = findViewById(R.id.info); |
f905cc410
![]() |
46 47 48 |
mainLayout = findViewById(R.id.main_layout); btnLogin = findViewById(R.id.login); btnLogin.setOnClickListener(new View.OnClickListener() { |
c507bd179
![]() |
49 50 51 52 53 |
@Override public void onClick(View v) { passport.signIn(MainActivity.this); } }); |
f905cc410
![]() |
54 55 |
btnCheck = mainLayout.findViewById(R.id.check); btnCheck.setOnClickListener(new View.OnClickListener() { |
c507bd179
![]() |
56 57 |
@Override public void onClick(View v) { |
f905cc410
![]() |
58 59 60 61 62 63 64 65 |
initPay(); } }); btnIab = mainLayout.findViewById(R.id.iab); btnIab.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Bundle payInfo = assemblePayBundle(); |
c507bd179
![]() |
66 67 68 |
Payment.launchIAP(MainActivity.this, payInfo, MainActivity.this); } }); |
f905cc410
![]() |
69 70 |
btnPay = mainLayout.findViewById(R.id.pay); btnPay.setOnClickListener(new View.OnClickListener() { |
c507bd179
![]() |
71 72 |
@Override public void onClick(View v) { |
f905cc410
![]() |
73 |
Bundle payInfo = assemblePayBundle(); |
c507bd179
![]() |
74 75 76 |
Payment.pay(MainActivity.this, payInfo, MainActivity.this); } }); |
f905cc410
![]() |
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 |
mainLayout.findViewById(R.id.bind).setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { passport.link(MainActivity.this); } }); mainLayout.findViewById(R.id.switch_acc).setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { passport.switchAccount(PlayerType.GamePlayer); } }); mainLayout.findViewById(R.id.switch_gump).setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { passport.switchAccount(PlayerType.GumpPlayer); } }); SharedPreferences sp = PreferenceManager.getDefaultSharedPreferences(getApplicationContext()); boolean mode = sp.getBoolean("key_mode", true); String appId = sp.getString("key_appid", "100"); String channel = sp.getString("key_channel", "1000"); String payVersion = sp.getString("key_pay_version", "V3"); SDKAgent.init(getApplicationContext(), appId, channel); SDKAgent.getSettings().setDebug(mode); SDKAgent.getSettings().setPaymentVersion(PaymentVersion.valueOf(payVersion)); passport = new Passport.Builder().context(MainActivity.this).setListener(MainActivity.this).build(); } private Bundle assemblePayBundle() { SharedPreferences sp = PreferenceManager.getDefaultSharedPreferences(getApplicationContext()); Bundle payInfo = new Bundle(); payInfo.putString("product", sp.getString("key_product", "10080")); payInfo.putFloat("amount", sp.getFloat("key_amount", 0.1f)); payInfo.putString("extraInfo", sp.getString("key_extra", "test")); payInfo.putString("serverId", sp.getString("key_server_id", "100")); payInfo.putString("roleId", sp.getString("key_role_id", "41080")); payInfo.putString("currency", sp.getString("key_currency", "THB")); return payInfo; } private void initPay() { btnCheck.setEnabled(false); SharedPreferences sp = PreferenceManager.getDefaultSharedPreferences(getApplicationContext()); String serverId = sp.getString("key_server_id", "100"); String roleId = sp.getString("key_role_id", "41080"); Payment.shouldUseCoPay(this, serverId, roleId, new ResultCallback() { @Override public void onResult(boolean isRisk) { btnCheck.setEnabled(true); btnIab.setEnabled(isRisk); btnPay.setEnabled(!isRisk); } }); } @Override public boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R.menu.main, menu); return super.onCreateOptionsMenu(menu); } @Override public boolean onOptionsItemSelected(MenuItem item) { if (item.getItemId() == R.id.setting) { Intent intent = new Intent(this, SettingsActivity.class); startActivity(intent); return true; } return super.onOptionsItemSelected(item); |
c507bd179
![]() |
156 157 158 |
} @Override |
f905cc410
![]() |
159 |
public void onResume() { |
c507bd179
![]() |
160 161 162 163 164 |
super.onResume(); passport.onResume(); } @Override |
f905cc410
![]() |
165 |
public void onActivityResult(int requestCode, int resultCode, Intent data) { |
c507bd179
![]() |
166 167 168 169 170 171 |
if (!passport.onActivityResult(requestCode, resultCode, data)) super.onActivityResult(requestCode, resultCode, data); } @Override public void onActionSucced(Actions action, GamePlayer player) { |
f905cc410
![]() |
172 173 174 175 176 177 178 179 180 181 182 183 |
switch (action) { case SIGN: currentPlayer = player; tvInfo.setText("Login succed! gump id=" + player.getId() + ",playerType=" + player.getPlayerType()); btnLogin.setVisibility(View.GONE); mainLayout.setVisibility(View.VISIBLE); break; case SWITCH: tvInfo.setText("Switch account succed! Pls reboot the game!"); Toast.makeText(this, "The account has switched,pls reboot the Game!", Toast.LENGTH_LONG).show(); break; } |
c507bd179
![]() |
184 185 186 |
} @Override |
f905cc410
![]() |
187 188 |
public void onActionFailured(Throwable e) { tvInfo.setText("login has error:" + e.getMessage()); |
c507bd179
![]() |
189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 |
} @Override public void onPurchaseCompleted() { Log.i(TAG, "purchase completed"); } @Override public void onPurchaseError(int code, String msg) { Log.i(TAG, "purchase error"); } @Override public void onPurchaseCanceled() { Log.i(TAG, "purchase canceled"); } } |