lizhihui

防沉迷相关更新

No preview for this file type
...@@ -17,7 +17,7 @@ ...@@ -17,7 +17,7 @@
17 17
18 <application 18 <application
19 android:name="com.gzpublic.app.sdk.application.PoolSDKApplication" 19 android:name="com.gzpublic.app.sdk.application.PoolSDKApplication"
20 - android:allowBackup="true" 20 + android:allowBackup="false"
21 android:icon="@drawable/public_sdk_self_ic_launcher" 21 android:icon="@drawable/public_sdk_self_ic_launcher"
22 android:label="@string/app_name" > 22 android:label="@string/app_name" >
23 <activity 23 <activity
......
1 -<?xml version="1.0" encoding="utf-8"?>
2 -<config>
3 - <sdkconfig
4 - channelparameter1=""
5 - channelparameter2=""
6 - custom="{}" gamechannelid=""
7 -
8 - sdksimplename="poolsdk"
9 - sdkversioncode="V1_0"
10 - usertype="14"
11 - gamesimplename="fytx_test"
12 - logceportcrl="https://hk-public.sdk.guangkatf.com/sdk/statistic"
13 - logincheckurl="https://yxgl-sdk.txwy.tw/logincheck/check"
14 - payorderurl="https://yxgl-sdk.txwy.tw/paycheck/create"
15 - paycheckurl="https://yxgl-sdk.txwy.tw/paycheck/confirm" />
16 -</config>
...\ No newline at end of file ...\ No newline at end of file
...@@ -35,6 +35,8 @@ import com.gzpublic.app.sdk.framework.PoolRoleInfo; ...@@ -35,6 +35,8 @@ import com.gzpublic.app.sdk.framework.PoolRoleInfo;
35 import com.gzpublic.app.sdk.framework.PoolRoleListener; 35 import com.gzpublic.app.sdk.framework.PoolRoleListener;
36 import com.gzpublic.app.sdk.framework.PoolSDKCallBackListener; 36 import com.gzpublic.app.sdk.framework.PoolSDKCallBackListener;
37 import com.gzpublic.app.sdk.framework.PoolSDKCode; 37 import com.gzpublic.app.sdk.framework.PoolSDKCode;
38 +import com.gzpublic.app.sdk.framework.PoolSdkAntiAddiction;
39 +import com.gzpublic.app.sdk.framework.PoolSdkAntiAddictionUserInfoListener;
38 import com.gzpublic.app.sdk.framework.PoolSdkConfig; 40 import com.gzpublic.app.sdk.framework.PoolSdkConfig;
39 import com.gzpublic.app.sdk.framework.PoolSdkHelper; 41 import com.gzpublic.app.sdk.framework.PoolSdkHelper;
40 import com.gzpublic.app.sdk.framework.PoolSdkLog; 42 import com.gzpublic.app.sdk.framework.PoolSdkLog;
...@@ -174,6 +176,20 @@ public class AppActivity extends Activity implements OnClickListener { ...@@ -174,6 +176,20 @@ public class AppActivity extends Activity implements OnClickListener {
174 case PoolSDKCode.POOLSDK_EXTENDS_CODE1://实名认证成功才有回调 176 case PoolSDKCode.POOLSDK_EXTENDS_CODE1://实名认证成功才有回调
175 //msg为生日 177 //msg为生日
176 break; 178 break;
179 +
180 + case PoolSDKCode.POOLSDK_ANTIADDICTION_EXIT://防沉迷满登录时间或者不在可登录时间回调
181 + PoolSdkLog.logError("游戏收到回调 POOLSDK_ANTIADDICTION_EXIT:"+msg);
182 + break;
183 + case PoolSDKCode.POOLSDK_ANTIADDICTION_CHANNEL_NOTEXIST://渠道SDK没有实名认证功能
184 + PoolSdkLog.logError("游戏收到回调 POOLSDK_ANTIADDICTION_CHANNEL_NOTEXIST:"+msg);
185 + break;
186 + case PoolSDKCode.POOLSDK_ANTIADDICTION_PAY://防沉迷无法充值回调
187 + PoolSdkLog.logError("游戏收到回调 POOLSDK_ANTIADDICTION_PAY:"+msg);
188 + break;
189 + case PoolSDKCode.POOLSDK_ANTIADDICTION_CODE://渠道返回玩家实名认证信息
190 + PoolSdkLog.logError("游戏收到回调 POOLSDK_ANTIADDICTION_CODE:"+msg);
191 + break;
192 +
177 default: 193 default:
178 break; 194 break;
179 } 195 }
...@@ -189,6 +205,10 @@ public class AppActivity extends Activity implements OnClickListener { ...@@ -189,6 +205,10 @@ public class AppActivity extends Activity implements OnClickListener {
189 } 205 }
190 }); 206 });
191 PoolSdkHelper.trackEvent(getApplicationContext(), PoolEventType.POOL_RES_LOADED, null); 207 PoolSdkHelper.trackEvent(getApplicationContext(), PoolEventType.POOL_RES_LOADED, null);
208 +
209 + //开启公共SDK的防沉迷功能
210 + PoolSdkAntiAddiction.isUseAntiAddiction = true;
211 + //PoolSdkAntiAddiction.isUseAntiAddictionToast = true;//防沉迷相关toast提示(默认关闭)
192 } 212 }
193 213
194 @Override 214 @Override
...@@ -368,13 +388,14 @@ public class AppActivity extends Activity implements OnClickListener { ...@@ -368,13 +388,14 @@ public class AppActivity extends Activity implements OnClickListener {
368 if (view == btLogin) { 388 if (view == btLogin) {
369 login(); 389 login();
370 }else if (view == btEnterGame) { 390 }else if (view == btEnterGame) {
391 + //进入游戏
371 submitRoleData(10,PoolRoleInfo.Type_EnterGame); 392 submitRoleData(10,PoolRoleInfo.Type_EnterGame);
372 - //PoolReport.reportEnterGame("chufan","角色名", 12, "201","服务器名");
373 }else if (view == btPay) { 393 }else if (view == btPay) {
374 pay(); 394 pay();
375 }else if (view == btLogout) { 395 }else if (view == btLogout) {
376 logout(); 396 logout();
377 }else if (view == btSubRoleInfo) { 397 }else if (view == btSubRoleInfo) {
398 + //角色升级
378 submitRoleData(11,PoolRoleInfo.Type_RoleUpgrade); 399 submitRoleData(11,PoolRoleInfo.Type_RoleUpgrade);
379 }else if (view == btOpenChannel) { 400 }else if (view == btOpenChannel) {
380 channelCenter(); 401 channelCenter();
...@@ -385,7 +406,24 @@ public class AppActivity extends Activity implements OnClickListener { ...@@ -385,7 +406,24 @@ public class AppActivity extends Activity implements OnClickListener {
385 }else if(view == btQueryProducts){ 406 }else if(view == btQueryProducts){
386 queryProducts(); 407 queryProducts();
387 }else if (view == pb_bt_verifyname){ 408 }else if (view == pb_bt_verifyname){
388 - Toast.makeText(this,PoolSdkHelper.verifyRealName(this),Toast.LENGTH_SHORT).show(); 409 + //Toast.makeText(this,PoolSdkHelper.verifyRealName(this),Toast.LENGTH_SHORT).show();
410 + //渠道无实名认证功能时,可以调用公共SDK的实名认证接口,在登录成功后才可以调用
411 + PoolSdkHelper.setUserIDInfo("尚福乐", "211322198509260317", new PoolSdkAntiAddictionUserInfoListener() {
412 + @Override
413 + public void onSuccess(int totalGameTime, int totalPayMoney, String ymd) {
414 +
415 + }
416 +
417 + @Override
418 + public void onFail(String paramCustom) {
419 +
420 + }
421 +
422 + @Override
423 + public void onResutl(String result) {
424 + PoolSdkLog.logError("游戏获取实名结果:"+result);
425 + }
426 + });
389 } 427 }
390 } 428 }
391 429
......
...@@ -98,12 +98,59 @@ android.permission.READ_PHONE_STATE` ...@@ -98,12 +98,59 @@ android.permission.READ_PHONE_STATE`
98 * } 98 * }
99 * } 99 * }
100 */ 100 */
101 - break; 101 + break;
102 +
103 + //防沉迷回调
104 + case PoolSDKCode.POOLSDK_ANTIADDICTION_EXIT://玩家防沉迷满登录时间或者不在可登录时间回调(此时游戏需要把玩家踢下线,回到登录界面,具体内容原因在msg)
105 + //PoolSdkLog.logError("游戏收到回调 POOLSDK_ANTIADDICTION_EXIT:"+msg);
106 + break;
107 + case PoolSDKCode.POOLSDK_ANTIADDICTION_CHANNEL_NOTEXIST://渠道SDK没有实名认证功能(可能有少部分的渠道SDK没有实名认证功能,此时公共层将玩家当成游客账号)
108 + //PoolSdkLog.logError("游戏收到回调 POOLSDK_ANTIADDICTION_CHANNEL_NOTEXIST:"+msg);
109 + break;
110 + case PoolSDKCode.POOLSDK_ANTIADDICTION_PAY://防沉迷无法充值回调(游客和未成年人充值限额无法充值的回调,具体原因在msg)
111 + //PoolSdkLog.logError("游戏收到回调 POOLSDK_ANTIADDICTION_PAY:"+msg);
112 + break;
113 + case PoolSDKCode.POOLSDK_ANTIADDICTION_CODE://渠道返回玩家实名认证信息(渠道实名认证的信息返回,出生日期,跟verifyRealName接口一致)
114 + //PoolSdkLog.logError("游戏收到回调 POOLSDK_ANTIADDICTION_CODE:"+msg);
115 + break;
102 } 116 }
103 } 117 }
104 }); 118 });
105 119
106 ``` 120 ```
121 +
122 +#### 2.2.3、防沉迷的配置
123 +
124 +接口说明:防沉迷限制公共层默认关闭,如果需要使用请调用下面配置
125 +
126 +```java
127 + PoolSdkAntiAddiction.isUseAntiAddiction = true;//开启公共SDK防沉迷功能,游客和未成年用户的登录和充值将会有限制
128 + //PoolSdkAntiAddiction.isUseAntiAddictionToast = true;//是否使用公共SDK防沉迷的toast提醒功能,默认关闭,开启会弹toast,内容跟上面初始化的防沉迷回调msg内容一致
129 +```
130 +
131 +#### 2.2.4、如果渠道SDK没有实名认证功能
132 +
133 +调用公共SDK的实名认证接口(界面需游戏自己实现,即让玩家输入 姓名 和 身份证号,账号登陆成功后才可以调用 )
134 +
135 +```java
136 + PoolSdkHelper.setUserIDInfo("尚福乐", "211322198509260317", new PoolSdkAntiAddictionUserInfoListener() {
137 + @Override
138 + public void onSuccess(int totalGameTime, int totalPayMoney, String ymd) {
139 +
140 + }
141 +
142 + @Override
143 + public void onFail(String paramCustom) {
144 +
145 + }
146 +
147 + @Override
148 + public void onResutl(String result) {
149 + PoolSdkLog.logError("游戏收到实名认证结果:"+result);
150 + }
151 + });
152 +```
153 +
107 #### 2.3、登录接口(必接) 154 #### 2.3、登录接口(必接)
108 155
109 接口说明:游戏登录时调用 156 接口说明:游戏登录时调用
...@@ -586,7 +633,7 @@ serverName | 服务器名称 ...@@ -586,7 +633,7 @@ serverName | 服务器名称
586 633
587 ### 2.17、实名认证(防沉迷)接口 ### 634 ### 2.17、实名认证(防沉迷)接口 ###
588 635
589 -说明:游戏方需要渠道SDK实名认证信息时调用(请在登陆成功后再调用) 636 +说明:游戏方需要调用渠道SDK实名认证界时调用(请在登陆成功后再调用)
590 637
591 - 显示实名页面功能 638 - 显示实名页面功能
592 639
...@@ -599,7 +646,7 @@ serverName | 服务器名称 ...@@ -599,7 +646,7 @@ serverName | 服务器名称
599 646
600 //回调结果到初始化监听接口中 647 //回调结果到初始化监听接口中
601 public void poolSdkCallBack(int code, String msg) { 648 public void poolSdkCallBack(int code, String msg) {
602 - if(code== PoolSDKCode.POOLSDK_EXTENDS_CODE1)//实名认证成功才有回调 649 + if(code== PoolSDKCode.POOLSDK_ANTIADDICTION_CODE)//实名认证成功才有回调
603 { 650 {
604 //msg为生日 格式(与查询的结果一样):19900101 651 //msg为生日 格式(与查询的结果一样):19900101
605 } 652 }
...@@ -613,19 +660,7 @@ public void poolSdkCallBack(int code, String msg) { ...@@ -613,19 +660,7 @@ public void poolSdkCallBack(int code, String msg) {
613 */ 660 */
614 public static String callFunc(String funcName, Map<Object, Object> param){} 661 public static String callFunc(String funcName, Map<Object, Object> param){}
615 ``` 662 ```
616 -- 查询实名状态结果
617 -
618 -```java
619 -public String verifyRealName(Activity paramActivity)
620 -```
621 663
622 -默认返回 "" (空字符串)为渠道SDK没有实名认证接口,游戏方需要自己实现该功能
623 -
624 -返回 "0" (字符串)为渠道有实名未认证,但该玩家未认证
625 -
626 -如果有实名认证接口,渠道有返回生日则返回生日(如"19900101")
627 -
628 -没有请运营跟渠道确认,到底返回成年日期还是未成年日期
629 664
630 ### 2.18、事件上报接口 665 ### 2.18、事件上报接口
631 666
...@@ -793,6 +828,11 @@ e.printStackTrace(); ...@@ -793,6 +828,11 @@ e.printStackTrace();
793 -keep class com.gzyouai.fengniao.sdk.framework.* 828 -keep class com.gzyouai.fengniao.sdk.framework.*
794 -keep class com.gzyouai.fengniao.sdk.wxapi.* 829 -keep class com.gzyouai.fengniao.sdk.wxapi.*
795 -keep class com.gzyouai.publicsdk.application.* 830 -keep class com.gzyouai.publicsdk.application.*
831 +
832 +-keep class com.gzpublic.app.sdk.*
833 +-keep class com.gzpublic.app.sdk.framework.*
834 +-keep class com.gzpublic.app.sdk.wxapi.*
835 +-keep class com.gzpublic.app.sdk.application.*
796 ``` 836 ```
797 2、如果母包需要每次出包Manifest中的配置改成相应的包名字段(例如推送和Provider) 837 2、如果母包需要每次出包Manifest中的配置改成相应的包名字段(例如推送和Provider)
798 则将包名写成 originPackageTag 打包工具会自动替换成目标包名 838 则将包名写成 originPackageTag 打包工具会自动替换成目标包名
...@@ -980,6 +1020,20 @@ public class AppActivity extends Activity implements OnClickListener { ...@@ -980,6 +1020,20 @@ public class AppActivity extends Activity implements OnClickListener {
980 case PoolSDKCode.POOLSDK_EXTENDS_CODE1://实名认证成功才有回调 1020 case PoolSDKCode.POOLSDK_EXTENDS_CODE1://实名认证成功才有回调
981 //msg为生日 1021 //msg为生日
982 break; 1022 break;
1023 +
1024 + //防沉迷回调
1025 + case PoolSDKCode.POOLSDK_ANTIADDICTION_EXIT://防沉迷满登录时间或者不在可登录时间回调
1026 + PoolSdkLog.logError("游戏收到回调 POOLSDK_ANTIADDICTION_EXIT:"+msg);
1027 + break;
1028 + case PoolSDKCode.POOLSDK_ANTIADDICTION_CHANNEL_NOTEXIST://渠道SDK没有实名认证功能
1029 + PoolSdkLog.logError("游戏收到回调 POOLSDK_ANTIADDICTION_CHANNEL_NOTEXIST:"+msg);
1030 + break;
1031 + case PoolSDKCode.POOLSDK_ANTIADDICTION_PAY://防沉迷无法充值回调
1032 + PoolSdkLog.logError("游戏收到回调 POOLSDK_ANTIADDICTION_PAY:"+msg);
1033 + break;
1034 + case PoolSDKCode.POOLSDK_ANTIADDICTION_CODE://渠道返回玩家实名认证信息
1035 + PoolSdkLog.logError("游戏收到回调 POOLSDK_ANTIADDICTION_CODE:"+msg);
1036 + break;
983 default: 1037 default:
984 break; 1038 break;
985 } 1039 }
...@@ -995,6 +1049,8 @@ public class AppActivity extends Activity implements OnClickListener { ...@@ -995,6 +1049,8 @@ public class AppActivity extends Activity implements OnClickListener {
995 } 1049 }
996 }); 1050 });
997 PoolSdkHelper.trackEvent(getApplicationContext(), PoolEventType.POOL_RES_LOADED, null); 1051 PoolSdkHelper.trackEvent(getApplicationContext(), PoolEventType.POOL_RES_LOADED, null);
1052 + PoolSdkAntiAddiction.isUseAntiAddiction = true;
1053 + //PoolSdkAntiAddiction.isUseAntiAddictionToast = true;
998 } 1054 }
999 1055
1000 @Override 1056 @Override
......
No preview for this file type