Blame view
GameSDKDemo/src/main/java/com/gumptech/sdk/demo/MainActivity.java
8.12 KB
|
d6bc71fcb
|
1 2 3 |
package com.gumptech.sdk.demo; import android.app.Activity; |
|
d6bc71fcb
|
4 |
import android.os.Bundle; |
|
d6bc71fcb
|
5 6 7 8 9 10 11 12 |
import android.util.Log; import android.view.View; import android.widget.Button; import android.widget.TextView; import android.widget.Toast; import com.gumptech.sdk.GumpPreference; import com.gumptech.sdk.GumpSDK; |
|
656f5f9fd
|
13 |
import com.gumptech.sdk.PaymentVersion; |
|
43932caac
|
14 |
import com.gumptech.sdk.SDKSettings; |
|
d6bc71fcb
|
15 16 17 18 19 |
import com.gumptech.sdk.bean.GumpUser; import com.gumptech.sdk.bean.PurchaseResult; import com.gumptech.sdk.callback.InitializeCallback; import com.gumptech.sdk.callback.LoginStateListener; import com.gumptech.sdk.callback.PurchaseCallback; |
|
7a5aadf06
|
20 |
import com.gumptech.sdk.callback.ResultCallback; |
|
41d220c11
|
21 |
import com.gumptech.sdk.passport.fb.FBAccessToken; |
|
d6bc71fcb
|
22 |
|
|
057d4c203
|
23 |
import java.util.Locale; |
|
064eb2054
|
24 |
public class MainActivity extends Activity implements PurchaseCallback {
|
|
d6bc71fcb
|
25 26 27 28 29 30 31 |
private static final String TAG = "MainActivity";
private TextView tvVersion;
private TextView userInfo;
private Button btnLoginOrLogout;
|
|
43932caac
|
32 33 |
private String appId = "100";
private String appKey = "f899139df5e1059396431415e770c6dd";
|
|
c4a5d1b80
|
34 |
private GumpUser gumpUser; |
|
d6bc71fcb
|
35 |
|
|
064eb2054
|
36 |
|
|
d6bc71fcb
|
37 38 39 40 |
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
|
|
969c0010c
|
41 |
|
|
057d4c203
|
42 43 44 |
tvVersion = findViewById(R.id.version);
userInfo = findViewById(R.id.user_info);
btnLoginOrLogout = findViewById(R.id.login_or_logout);
|
|
d6bc71fcb
|
45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 |
btnLoginOrLogout.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (btnLoginOrLogout.getTag() == null || (Integer) btnLoginOrLogout.getTag() == 0)
GumpSDK.start(MainActivity.this);
else
GumpSDK.logout(MainActivity.this);
}
});
findViewById(R.id.pay).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Bundle payInfo = new Bundle();
|
|
6a217e5ca
|
60 |
payInfo.putString("product", "wa2");
|
|
d6bc71fcb
|
61 62 |
payInfo.putFloat("amount", 0.1f);
payInfo.putString("extraInfo", "This is demo!");
|
|
6a217e5ca
|
63 |
payInfo.putString("serverId", "s1");
|
|
43932caac
|
64 |
payInfo.putString("roleId", "100123");
|
|
c4a5d1b80
|
65 |
payInfo.putString("sessionKey", gumpUser.getSessionKey().getToken());
|
|
d6bc71fcb
|
66 67 68 |
GumpSDK.pay(MainActivity.this, payInfo, MainActivity.this);
}
});
|
|
064eb2054
|
69 70 71 72 |
findViewById(R.id.iap).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Bundle payInfo = new Bundle();
|
|
969c0010c
|
73 |
payInfo.putString("product", "180010");
|
|
064eb2054
|
74 75 76 |
payInfo.putFloat("amount", 0.1f);
payInfo.putString("extraInfo", "This is demo!");
payInfo.putString("serverId", "100");
|
|
43932caac
|
77 |
payInfo.putString("roleId", "100123");
|
|
064eb2054
|
78 79 80 |
GumpSDK.iap(MainActivity.this, payInfo, MainActivity.this);
}
});
|
|
6a217e5ca
|
81 |
|
|
472513368
|
82 |
|
|
057d4c203
|
83 |
Log.i("DEMO", "country:" + Locale.getDefault().getCountry() + ",language:" + Locale.getDefault().getLanguage());
|
|
6a217e5ca
|
84 |
GumpSDK.getSettings().setDebug(false); |
|
d6bc71fcb
|
85 |
/** |
|
057d4c203
|
86 |
* 设置是否打印debug日志 |
|
d6bc71fcb
|
87 88 89 |
*/
GumpSDK.getSettings().enableDebugLogging(true);
/**
|
|
43932caac
|
90 |
* 设置启用facebook登录 |
|
d6bc71fcb
|
91 |
*/ |
|
43932caac
|
92 |
GumpSDK.getSettings().requestThirdSupport(SDKSettings.THIRD_SUPPORT_FB); |
|
d6bc71fcb
|
93 |
/** |
|
43932caac
|
94 |
* 设置启用Vk登录 |
|
d6bc71fcb
|
95 |
*/ |
|
43932caac
|
96 |
// GumpSDK.getSettings().requestThirdSupport(SDKSettings.THIRD_SUPPORT_VK); |
|
adab52895
|
97 |
|
|
d6bc71fcb
|
98 |
/** |
|
43932caac
|
99 100 101 |
* 设置启用Wechat登录
*
*/
|
|
6a217e5ca
|
102 |
// GumpSDK.getSettings().requestThirdSupport(SDKSettings.THIRD_SUPPORT_WECHAT); |
|
43932caac
|
103 104 105 106 107 108 109 110 111 112 113 |
/**
* 设置启用google登录
*/
GumpSDK.getSettings().requestThirdSupport(SDKSettings.THIRD_SUPPORT_GOOGLE);
/**
* 设置启用Line登录
*/
GumpSDK.getSettings().requestThirdSupport(SDKSettings.THIRD_SUPPORT_LINE);
/**
|
|
d6bc71fcb
|
114 115 116 |
* 设置屏幕方向
*/
GumpSDK.getSettings().setScreenLandscape(true);
|
|
656f5f9fd
|
117 118 119 120 121 |
/**
* 设置支付版本
*/
GumpSDK.getSettings().setPaymentVersion(PaymentVersion.V4);
|
|
d6bc71fcb
|
122 123 124 |
/**
* 设置用户登录状态监听器
*/
|
|
064eb2054
|
125 |
|
|
d6bc71fcb
|
126 127 128 |
GumpSDK.setUserStateListener(new LoginStateListener() {
@Override
public void onLoginSuccess(GumpUser user) {
|
|
c4a5d1b80
|
129 |
gumpUser = user; |
|
064eb2054
|
130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 |
String userType = null;
switch (user.getAccountType()) {
case GumpPreference.ACCOUNT_TYPE_FB:
userType = "Facebook登录";
String fbToken = FBAccessToken.getCurrentAccessToken().getToken();
Log.d(TAG, "FBAccessToken:" + fbToken);
break;
case GumpPreference.ACCOUNT_TYPE_QUICK_REG:
userType = "快速登录";
break;
case GumpPreference.ACCOUNT_TYPE_REG:
userType = "gump注册用户";
break;
case GumpPreference.ACCOUNT_TYPE_VK:
userType = "vk登录";
break;
|
|
adab52895
|
146 147 148 |
case GumpPreference.ACCOUNT_TYPE_GOOGLE:
userType = "google 登录";
break;
|
|
43932caac
|
149 150 151 152 153 154 |
case GumpPreference.ACCOUNT_TYPE_WECHAT:
userType = "微信登录";
break;
case GumpPreference.ACCOUNT_TYPE_LINE:
userType = "Line登录";
break;
|
|
d6bc71fcb
|
155 |
} |
|
472513368
|
156 157 158 159 |
userInfo.setText(" Userid:" + user.getUid() + "
accountType:(" + user.getAccountType() + ") " + userType + "
sessionKey:" + user.getSessionKey()
.getToken());
|
|
d6bc71fcb
|
160 161 162 163 164 |
btnLoginOrLogout.setText("Logout");
btnLoginOrLogout.setTag(1);
}
@Override
|
|
064eb2054
|
165 |
public void onLoginFailed(int code, String msg) {
|
|
d6bc71fcb
|
166 |
userInfo.setText(msg); |
|
064eb2054
|
167 |
Toast.makeText(MainActivity.this, "Login failed:code=" + code + ",message=" + msg, Toast.LENGTH_SHORT).show(); |
|
d6bc71fcb
|
168 169 170 171 172 173 174 175 176 177 178 179 180 |
}
@Override
public void onLoginCanceled() {
Toast.makeText(MainActivity.this, "operate be canceled", Toast.LENGTH_SHORT).show();
}
@Override
public void onLogout() {
btnLoginOrLogout.setText("Login");
btnLoginOrLogout.setTag(0);
userInfo.setText("User is logout");
}
|
|
6a217e5ca
|
181 182 |
@Override
|
|
057d4c203
|
183 184 185 186 187 188 189 |
public void onPermissionDenied(String[] deniedPermissions) {
StringBuilder sb = new StringBuilder();
for (String s : deniedPermissions) {
sb.append(s);
sb.append(",");
}
Toast.makeText(MainActivity.this, "Permission denied:" + sb.toString(), Toast.LENGTH_SHORT).show();
|
|
6a217e5ca
|
190 |
} |
|
d6bc71fcb
|
191 192 193 194 195 196 197 198 199 |
});
/**
* 初始化sdk
*/
GumpSDK.init(getApplicationContext(), appId, appKey, "1000", new InitializeCallback() {
@Override
public void initComplete(int result) {
if (result == GumpSDK.CODE.OK) {
btnLoginOrLogout.setEnabled(true);
|
|
7a5aadf06
|
200 201 |
//checkRisk();
|
|
d6bc71fcb
|
202 203 204 205 206 |
}
}
});
tvVersion.setText("SDK Version:" + GumpSDK.getVersion());
|
|
064eb2054
|
207 |
|
|
d6bc71fcb
|
208 |
} |
|
43932caac
|
209 |
private void checkRisk() {
|
|
7a5aadf06
|
210 211 212 |
GumpSDK.checkRisk(this, new ResultCallback() {
@Override
public void onResult(boolean isRisk) {
|
|
43932caac
|
213 |
Log.i(TAG, isRisk ? "There is some risks" : "Nothing is risk"); |
|
7a5aadf06
|
214 215 216 |
}
});
}
|
|
d6bc71fcb
|
217 218 |
@Override
public void onPurchaseCompleted(PurchaseResult result) {
|
|
064eb2054
|
219 |
Log.i(TAG, "purchase completed"); |
|
d6bc71fcb
|
220 221 222 223 |
}
@Override
public void onPurchaseError(int code, String msg) {
|
|
064eb2054
|
224 |
Log.i(TAG, "purchase error"); |
|
d6bc71fcb
|
225 226 227 228 |
}
@Override
public void onPurchaseCanceled() {
|
|
064eb2054
|
229 |
Log.i(TAG, "purchase canceled"); |
|
d6bc71fcb
|
230 |
} |
|
064eb2054
|
231 |
|
|
d6bc71fcb
|
232 |
} |