Showing
1 changed file
with
0 additions
and
174 deletions
doc/公共SDK扩展接口接入文档.md
deleted
100644 → 0
1 | -# 公共SDK扩展接口接入文档 # | ||
2 | - | ||
3 | -## 接入必读 | ||
4 | - `扩展接口的调用均通过反射实现,方法名需要和公共协商统一,其调用一般分为三步: | ||
5 | - 1.先判断是否可使用该功能( cp通过该方法的返回值判断是否在游戏界面显示相应的入口 ): | ||
6 | - boolean returnBool = PoolSdkHelper.hasFunction({方法名});//此处为单入口调用 | ||
7 | - 或 | ||
8 | - String jsonReturn = PoolSdkHelper.callfunc({方法名},null);//此处为同一功能的多入口,比如绑定分google和facebook等,cp需解析判断 | ||
9 | - 2.获取状态。当第一步中的结果单入口返回 true 或多入口返回 "" 时,方才执行第二步,否则不执行;第二步非必接接口,其执行条件为当需要获取某个状态(比如:绑定,推送)时调用,否则可跳过此步骤直接执行第三步: | ||
10 | - Map<Object,Object> map = new HashMap<>(); | ||
11 | - String returnState = PoolSdkHelper.callfunc({方法名},map); | ||
12 | - 3.具体设置。如无需执行第二步请直接执行此步,否则请先执行第二步再执行此步骤,这一步的调用结果会通过游戏初始化传入的监听器传递给游戏,具体的返回码请见具体接口说明: | ||
13 | - Map<Object,Object> map = new HashMap<>(); | ||
14 | - PoolSdkHelper.callfunc({方法名},map);` | ||
15 | - | ||
16 | -### 具体接口说明如下 | ||
17 | - | ||
18 | -#### 第一步判断是否可使用该功能 | ||
19 | - | ||
20 | -| 接口名 | 方法名 | 参数 | 返回结果 | | ||
21 | -|-----------------------------|-------------------------|------------|----------------------------------------| | ||
22 | -| Facebook好友界面 | hasFaceBookFriendsView | 无参数 | true 执行第三步的相应接口,false 不显示入口 | | ||
23 | -| | | | | | ||
24 | -| 优惠券 | hasCoupon | 无参数 | true 执行第三步的相应接口,false 不显示入口 | | ||
25 | -| | | | | | ||
26 | -| 分享 | hasShareView | null | Json字符串,空串代表不显示任何入口,否则cp通过解析 | | ||
27 | -| | | | json字符串,然后通过对应的分享平台key,获取 | | ||
28 | -| | | | 相应的值来决定是否显示入口,"true"代表显示, | | ||
29 | -| | | | "false"代表不显示,目前支持的分享平台key有 | | ||
30 | -| | | | facebook分享:"facebook" | | ||
31 | -| | | | facebook截屏分享:"facebook_capture" | | ||
32 | -| | | | twitter分享:"twitter" | | ||
33 | -| | | | twitter截屏分享:"twitter_capture" | | ||
34 | -| | | | line截屏分享:"line_capture" | | ||
35 | -| | | | instagram截屏分享:"instagram_capture" | | ||
36 | -| | | | 返回事例:{"facebook":"true", | | ||
37 | -| | | | "facebook_capture":"true", | | ||
38 | -| | | | "instagram_capture":"false"} | | ||
39 | -| | | | | | ||
40 | -| 删除账号 | hasDeleteMember | 无参数 | true 执行第三步的相应接口,false 不显示入口 | | ||
41 | -| | | | | | ||
42 | -| 显示公告 | hasShowNotice | 无参数 | true 执行第三步的相应接口,false 不显示入口 | | ||
43 | -| | | | | | ||
44 | -| 显示cafe窗口 | hasNaverCafePlug | 无参数 | true 执行第三步的相应接口,false 不显示入口 | | ||
45 | -| | | | | | ||
46 | -| 谷歌评论 | hasGoogleComment | 无参数 | true 执行第三步的相应接口,false 不显示入口 | | ||
47 | -| | | | | | ||
48 | -| 绑定账号 | hasLinkedAccountView | null | Json字符串,空串代表不显示任何入口,否则cp通过解析 | | ||
49 | -| | | | json字符串,然后通过对应的绑定平台key,获取 | | ||
50 | -| | | | 相应的值来决定是否显示入口,"true"代表显示, | | ||
51 | -| | | | "false"代表不显示,目前支持的绑定平台key有 | | ||
52 | -| | | | facebook绑定:"facebook" | | ||
53 | -| | | | google绑定:"google" | | ||
54 | -| | | | 不确定绑定平台:"other" | | ||
55 | -| | | | 返回事例:{"facebook":"true", | | ||
56 | -| | | | "google":"true", | | ||
57 | -| | | | "other":"false"} | | ||
58 | -| | | | | | ||
59 | -| 设置推送 | hasPushView | null | Json字符串,空串代表不显示任何入口,否则cp通过解析 | | ||
60 | -| | | | json字符串,然后通过对应的推送类型key,获取 | | ||
61 | -| | | | 相应的值来决定是否显示入口,"true"代表显示, | | ||
62 | -| | | | "false"代表不显示,目前支持的推送类型key有 | | ||
63 | -| | | | 全体推送:"enable" | | ||
64 | -| | | | 夜间推送:"night" | | ||
65 | -| | | | 广告推送:"ad" | | ||
66 | -| | | | 返回事例:{"enable":"true", | | ||
67 | -| | | | "night":"true", | | ||
68 | -| | | | "ad":"false"} | | ||
69 | - | ||
70 | -#### 第二步获取状态(不用获取状态的功能请跳过此步骤执行第三步) | ||
71 | - | ||
72 | -| 接口名 | 方法名 | 参数 | 返回结果 | | ||
73 | -|------------|--------------------------|---------------------------------------|------------------------------| | ||
74 | -| 绑定账号 | getLinkedAccountStatus | Map集合,key表示绑定平台,比如谷歌就传 | "true" 表示绑定了该平台 | | ||
75 | -| | | google,facebook就传facebook,不确定 | "false" 表示未绑定该平台 | | ||
76 | -| | | 平台传other;value传""就好 | | | ||
77 | -| | | | | | ||
78 | -| 设置推送 | getPushStatus | Map集合,key表示推送类型,比如全体推送 | "true" 表示设置了该推送 | | ||
79 | -| | | 就传enable,夜间推送就传night,广告推送 | "false" 表示未设置该推送 | | ||
80 | -| | | 就传ad;value传""就好 | | | ||
81 | - | ||
82 | - | ||
83 | -#### 第三步设置功能 | ||
84 | - | ||
85 | -| 接口名 | 方法名 | 参数 | 返回状态码 | | ||
86 | -|-----------------------|---------------------------|------------------------------------------|-----------------------| | ||
87 | -| Facebook好友界面 | showFaceBookFriendsView | null | 无 | | ||
88 | -| | | | | | ||
89 | -| 优惠券 | coupon | Map集合,key传优惠券码,value为"" | 成功 1102 失败 1202 | | ||
90 | -| | | | | | ||
91 | -| 分享 | showShareView | Map集合,key表示分享类型,value为"" | 成功 1104 失败 1204 | | ||
92 | -| | | facebook分享:"facebook" | | | ||
93 | -| | | facebook截屏分享:"facebook_capture" | | | ||
94 | -| | | twitter分享:"twitter" | | | ||
95 | -| | | twitter截屏分享:"twitter_capture" | | | ||
96 | -| | | line截屏分享:"line_capture" | | | ||
97 | -| | | instagram截屏分享:"instagram_capture" | | | ||
98 | -| | | | | | ||
99 | -| 删除账号 | deleteMember | null | 成功 1107 失败 1207 | | ||
100 | -| | | | | | ||
101 | -| 显示公告 | showNotice | null | 无 | | ||
102 | -| | | | | | ||
103 | -| 显示cafe窗口 | showNaverCafePlug | null | 无 | | ||
104 | -| | | | | | ||
105 | -| 谷歌评论 | showGoogleComment | null | 成功 1106 失败 1206 | | ||
106 | -| | | | | | ||
107 | -| 绑定账号(绑定) | createLinkingAccount | Map集合,key表示绑定平台,比如谷歌就传 | 成功 1100 失败 1200 | | ||
108 | -| | | google,facebook就传facebook,不确定 | | | ||
109 | -| | | 平台传other;value传""就好 | | | ||
110 | -| | | | | | ||
111 | -| 绑定账号(解绑) | deleteLinkingAccount | Map集合,key表示绑定平台,比如谷歌就传 | 成功 1101 失败 1201 | | ||
112 | -| | | google,facebook就传facebook,不确定 | | | ||
113 | -| | | 平台传other;value传""就好 | | | ||
114 | -| | | | | | ||
115 | -| 设置推送(允许) | setPushEnable | Map集合,key表示推送类型,比如全体推送 | 成功 1103 失败 1203 | | ||
116 | -| | | 就传enable,夜间推送就传night,广告推送 | | | ||
117 | -| | | 就传ad;value传""就好 | | | ||
118 | -| | | | | | ||
119 | -| 设置推送(不允许) | setPushDisable | Map集合,key表示推送类型,比如全体推送 | 成功 1105 失败 1205 | | ||
120 | -| | | 就传enable,夜间推送就传night,广告推 送 | | | ||
121 | -| | | 就传ad;value传""就好 | | | ||
122 | - | ||
123 | -### 接入事例 | ||
124 | -#### 无需进行第二步以 显示公告 为例 | ||
125 | - ` | ||
126 | - boolean hasShowNotice = PoolSdkHelper.hasFunction("hasShowNotice"); | ||
127 | - if(hasShowNotice){ | ||
128 | - //显示公告入口 | ||
129 | - }else{ | ||
130 | - //不显示公告入口` | ||
131 | - } | ||
132 | - ` | ||
133 | - 用户点击公告时 | ||
134 | - ` | ||
135 | - PoolSdkHelper.callFunc("showNotice",null);此结果的返回码如上表格 | ||
136 | - ` | ||
137 | - | ||
138 | -#### 需要进行第二步获取状态以 绑定账号 为例 | ||
139 | - ` | ||
140 | - String hasLinkedAccountView = PoolSdkHelper.callFunc("hasLinkedAccountView",null); | ||
141 | - if(hasLinkedAccountView==""){ | ||
142 | - //不显示绑定入口 | ||
143 | - }else{ | ||
144 | - JSONObject jsonObject = new JSONObject(hasLinkedAccountView); | ||
145 | - String itemGoogle = jsonObject.optString("google"); | ||
146 | - if(itemGoogle == null || itemGoogle=="false"){ | ||
147 | - //不显示google的绑定入口 | ||
148 | - }else{ | ||
149 | - //显示google的绑定入口 | ||
150 | - } | ||
151 | - } | ||
152 | - ` | ||
153 | - 获取绑定状态,以便知道显示解绑还是绑定视图 | ||
154 | - ` | ||
155 | - Map<Object,Object> map = new HashMap<>(); | ||
156 | - map.put("google","");//以谷歌为例 | ||
157 | - String linkedAccountStatus = PoolSdkHelper.callFunc("getLinkedAccountStatus",map); | ||
158 | - ` | ||
159 | - 用户点击按钮改变状态时 | ||
160 | - ` | ||
161 | - if("true" == linkedAccountStatus){//已经绑定了 | ||
162 | - //此时为解绑 | ||
163 | - Map<Object,Object> map = new HashMap<>(); | ||
164 | - map.put("google","");//以谷歌为例 | ||
165 | - PoolSdkHelper.callFunc("deleteLinkingAccount",map);//此结果的返回码如上表格 | ||
166 | - } | ||
167 | - if("false" == linkedAccountStatus){//没有绑定 | ||
168 | - //此时为去绑定 | ||
169 | - Map<Object,Object> map = new HashMap<>(); | ||
170 | - map.put("google","");//以谷歌为例 | ||
171 | - PoolSdkHelper.callFunc("createLinkingAccount",map);//此结果的返回码如上表格 | ||
172 | - } | ||
173 | - ` | ||
174 | - |
-
Please register or login to post a comment