{{ errorTipText }}
此文档主要是用于在游戏及应用开发商需要接入掌趣BASE SDK时,了解BASE SDK如何接入,接入过程中需注意的事项等。
接入掌趣BASE SDK的游戏及应用的android客户端开发者。
服务端配置:请参考 通用接入文档—> 《SDK服务端接入说明文档》
安卓包是指androidmainfest.xml中的versionName。
在掌趣自动打包系统里,serviceId是区分渠道信息的标识,研发如果要识别当前游戏包属于哪个渠道,请调用获取serviceId的接口(11.2),并和技术经理匹配各serviceId对应的渠道。
如果产品接入了第三方SDK,有需要根据包名、签名分配参数的情况,一定要提前通知技术经理。各个渠道包的包名、签名、证书等都不一样。自动打包将替换客户端包名、签名和证书。但不会自动替换第三方的参数。如地图、语音、推送能功能的第三方SDK。具体如何实现,需要根据具体情况操作。
游戏res资源文件中,png及xml文件命名最好不好过于简单,以免和第三方渠道重复。如close.png或close.xml命名的文件,可以加上游戏名前缀,game_close.png或game_close.xml。
Ourpalm_Entry.getInstance(this).Ourpalm_onPause()Ourpalm_Entry.getInstance(this).Ourpalm_onRestart()Ourpalm_Entry.getInstance(this).Ourpalm_onResume()Ourpalm_Entry.getInstance(this).Ourpalm_onStart()Ourpalm_Entry.getInstance(this).Ourpalm_onStop()Ourpalm_Entry.getInstance(this).Ourpalm_onDestroy()Ourpalm_Entry.getInstance(this).Ourpalm_onActivityResult()Ourpalm_Entry.getInstance(this).Ourpalm_onConfigurationChanged()Ourpalm_Entry.getInstance(this).Ourpalm_onNewIntent()
方式一:游戏工程直接引用《Ourpalm_Android_SDK_Lib_Base_完整版本号》此lib工程,工程内已包含res中的资源和lib库,assets中资源,请自行从《资源,LIB库和配置文件》目录中复制assets文件夹中内容到游戏工程的assets目录。如何引用lib工程这里不做详细说明,如不清楚如何导入lib工程到游戏工程请上网搜索,或者咨询掌趣SDK技术人员。
方式二:直接从《资源,LIB库和配置文件》目录中复制所有资源和lib库到游戏工程的相应目录,包含res,libs,assets。
<!-- OurpalmSDK需要的权限 --><uses-permission android:name="android.permission.INTERNET" ></uses-permission><uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" ></uses-permission><uses-permission android:name="android.permission.CHANGE_WIFI_STATE" ></uses-permission><uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" ></uses-permission><uses-permission android:name="android.permission.ACCESS_WIFI_STATE" ></uses-permission><uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" ></uses-permission><uses-permission android:name="android.permission.READ_PHONE_STATE" ></uses-permission><uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" ></uses-permission><uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" ></uses-permission>
<!-- 客服反馈功能Activity --><activityandroid:name="ourpalm.android.opservice.Ourpalm_OpService_Activity"android:configChanges="keyboardHidden|orientation|screenSize"android:theme="@android:style/Theme.Translucent.NoTitleBar" ></activity><!-- 游戏自己的启动activity类名,需要完整路径,必须配置 --><meta-dataandroid:name="ourpalm_class_name"android:value="com.ourpalm.test_ourpalm_v3.Ourpalm_Demo_MainActivity" /><!-- 游戏请配置自己游戏的展示类型,竖屏游戏请配置成 portrait,横屏游戏请配置成landscape --><meta-dataandroid:name="ourpalm_screenOrientation"android:value="landscape" /><!-- BASE SDK中上传崩溃日志的服务 V3.2.1版本新增加 --><serviceandroid:name="ourpalm.android.c.Ourpalm_CrashService"android:process=":ourpalmCrash" ><intent-filter><action android:name="ourpalm.UpCrashLog" /></intent-filter></service>
<!-- 建议targetSdkVersion不要超过22 --><uses-sdkandroid:minSdkVersion="7"android:targetSdkVersion="22" /><!-- 如游戏本身有Application类,则需要在代码中继承ourpalm.android.channels.Info.Ourpalm_Channels_Application;如游戏本身没有Application类,则需要在此添加配置,将AndroidManifest.xml中application的名字命名为"ourpalm.android.channels.Info.Ourpalm_Channels_Application" --><applicationandroid:name="ourpalm.android.channels.Info.Ourpalm_Channels_Application"android:allowBackup="true"android:icon="@drawable/ic_launcher"android:label="@string/app_name"android:theme="@style/NoTitle_FullScreen" ></application>
注意:APK安装位置属性必须配置为android:installLocation=”auto”
调用自有支付功能或者第三方SDK的支付功能,实现游戏中的道具购买。
/*** 支付接口(单机),先去获取计费协议** @param propId* 游戏自定义的商品ID* @param chargeCash* 价格(以分为单位)* @param currencyType* 货币类型(1人民币2美元3日元4港币5英镑6新加坡币7越南盾8台币9韩元)* @param propName* 商品名称* @param propCount* 商品数量* @param propDes* 商品描述* @param ExtendParams* 扩展参数* @param callBack* 支付回调接口*/public void Ourpalm_Pay_Console(final String propId,final String chargeCash, final String currencyType,final String propName, final String propCount,final String propDes, final String ExtendParams,final Ourpalm_PaymentCallBack callBack)
| 参数名称 | 重要性 | 类型 | 说明 |
|---|---|---|---|
| propId | 必须 | String | 游戏自定义的商品ID,必传。 |
| chargeCash | 必须 | String | 商品价格,单位为分。 |
| currencyType | 必须 | String | 货币类型(1人民币2美元3日元4港币5英镑6新加坡币7越南盾8台币9韩元10泰铢) |
| propName | 必须 | String | 商品名称 |
| propCount | 必须 | String | 商品数量 |
| propDes | 必须 | String | 商品描述 |
| ExtendParams | 可选 | String | 游戏自定义数据,支付成功后,计费中心会将此字段数据回传给游戏服务器。 |
| callback | 必须 | Ourpalm_PaymentCallBack | 客户端回调接口。 |
Ourpalm_Entry.getInstance(MainActivity.this).Ourpalm_Pay_Console(propId, price, "1", propName, propCount, "测试-商品描述","测试-我是扩展参数", new Ourpalm_PaymentCallBack() {@Overridepublic void Ourpalm_PaymentSuccess(int code, String ssid,String pbid) {// TODO Auto-generated method stubLogs.i("info", "Ourpalm_PaymentSuccess, code = " + code+ " ,ssid = " + ssid + " ,pbid = " + pbid);Toast.makeText(MainActivity.this, "DEMO,花钱成功了。。。*_*",Toast.LENGTH_SHORT).show();}@Overridepublic void Ourpalm_PaymentFail(int code, String ssid,String pbid) {// TODO Auto-generated method stubLogs.i("info", "Ourpalm_PaymentFail, code = " + code+ " ,ssid = " + ssid + " ,pbid = " + pbid);Toast.makeText(MainActivity.this, "DEMO,支付失败了",Toast.LENGTH_SHORT).show();}@Overridepublic void Ourpalm_OrderSuccess(int code, String ssid,String pbid) {// TODO Auto-generated method stubLogs.i("info", "Ourpalm_OrderSuccess, code = " + code+ " ,ssid = " + ssid + " ,pbid = " + pbid);Toast.makeText(MainActivity.this, "DEMO,下单成功了",Toast.LENGTH_SHORT).show();}});
支付成功:
public void Ourpalm_PaymentSuccess(int code, String ssid, String pbid);
支付失败:
public void Ourpalm_PaymentFail(int code, String ssid, String pbid);
下单成功:
public void Ourpalm_OrderSuccess(int code, String ssid, String pbid)
注:”下单成功”表示当前订单已经成功提交,但用户是否进行支付,当前未知,所以单机游戏
不要处理此回调。
| 参数名称 | 重要性 | 类型 | 说明 |
|---|---|---|---|
| code | 必须 | Int | 结果状态码。 |
| ssid | 必须 | String | 掌趣计费中心生成的订单号,支付失败或者用户取消支付时可能返回为空,短信支付返回空。 |
| pbid | 必须 | String | 游戏自定义商品ID。 |
游戏需要自己设计UI按钮,当用户点击此按钮时,调用接口,打开客服反馈界面。
/*** 进入客服反馈页面*/public void EnterServiceQuestion()
Ourpalm_OpService_Entry.getInstance().EnterServiceQuestion();
通过礼包码来兑换游戏中对应的礼包。
/*** 礼包码兑换接口** @param GiftCode* 礼包码* @param url* 发货地址* @param extendParams* 扩展参数* @param mListener* 回调*/public void Ourpalm_GiftExchange(String GiftCode, String url,final String extendParams,final Ourpalm_GiftExchangeCallBack mListener)
| 参数名称 | 重要性 | 类型 | 说明 |
|---|---|---|---|
| GiftCode | 必须 | String | 发给玩家的礼包码 |
| url | 必须 | String | 兑换成功后,掌趣计费中心会通知此地址发货。(游戏服发货地址) |
| extendParams | 可选 | String | 游戏透传参数,通知发货时会原样返回。 |
| mListener | 必须 | Ourpalm_GiftExchangeCallBack | 客户端回调接口。 |
Ourpalm_Entry.getInstance(Ourpalm_Entry_Model.mActivity).Ourpalm_GiftExchange("礼包码","http://xxxxxxxxx/xxxxxxxx","透传参数",new Ourpalm_GiftExchangeCallBack() {@Overridepublic void Ourpalm_Success(String packageId, String extendParams) {// TODO Auto-generated// method stubToast.makeText(Ourpalm_Demo_MainActivity.mMainActivity, "兑换成功", Toast.LENGTH_SHORT).show();}@Overridepublic void Ourpalm_Fail(int code) {// TODO Auto-generated// method stubLogs.i("info", " 礼包码 兑换失败 code = " + code);}});
兑换成功:
@Overridepublic void Ourpalm_Success(String packageId, String extendParams)
packageId:礼包码归属的礼包ID。
extendParams:透传参数。
兑换失败:
@Overridepublic void Ourpalm_Fail(int code)
code:错误码。
因为某些第三方SDK需要用到生命周期中的某些方法,所以游戏客户端Activity中必须调用掌趣SDK中定义的生命周期方法,否则可能会出现不可预估的问题。
@Overrideprotected void onStart() {// TODO Auto-generated method stubsuper.onStart();Logs.i("info", "onStart");Ourpalm_Entry.getInstance(this).Ourpalm_onStart();}
@Overrideprotected void onRestart() {// TODO Auto-generated method stubsuper.onRestart();Logs.i("info", "onRestart");Ourpalm_Entry.getInstance(this).Ourpalm_onRestart();}
@Overrideprotected void onResume() {// TODO Auto-generated method stubsuper.onResume();Logs.i("info", "onResume");Ourpalm_Entry.getInstance(this).Ourpalm_onResume();}
@Overrideprotected void onPause() {// TODO Auto-generated method stubsuper.onPause();Logs.i("info", "onPause");Ourpalm_Entry.getInstance(this).Ourpalm_onPause();}
@Overrideprotected void onStop() {// TODO Auto-generated method stubsuper.onStop();Logs.i("info", "onStop");Ourpalm_Entry.getInstance(this).Ourpalm_onStop();}
@Overrideprotected void onDestroy() {// TODO Auto-generated method stubsuper.onDestroy();Logs.i("info", "onDestroy");Ourpalm_Entry.getInstance(this).Ourpalm_onDestroy();}
@Overrideprotected void onActivityResult(int requestCode, int resultCode, Intent data) {// TODO Auto-generated method stubsuper.onActivityResult(requestCode, resultCode, data);Logs.i("info", "onActivityResult");Ourpalm_Entry.getInstance(this).Ourpalm_onActivityResult(requestCode, resultCode, data);}
@Overridepublic void onConfigurationChanged(Configuration newConfig) {// TODO Auto-generated method stubsuper.onConfigurationChanged(newConfig);Logs.i("info", "onConfigurationChanged");Ourpalm_Entry.getInstance(this).Ourpalm_onConfigurationChanged(newConfig);}
@Overrideprotected void onNewIntent(Intent intent) {super.onNewIntent(intent);Logs.i("info","onNewIntent");Ourpalm_Entry.getInstance(MainActivity.this).Ourpalm_onNewIntent(intent);}
@Overrideprotected void onSaveInstanceState(Bundle outState) {// TODO Auto-generated method stubsuper.onSaveInstanceState(outState);Logs.i("info", "onSaveInstanceState");// 必须调用Ourpalm_Entry.getInstance(this).onSaveInstanceState(outState);}
调用第三方SDK的退出提示接口,如第三方SDK无退出提示接口则调用掌趣的退出提示界面或者直接退出游戏。
/*** 调用第三方SDK退出提示页面,如果第三方SDK无退出提示页面则调用掌趣提示页面** @param usetip* 是否使用掌趣SDK的退出提示界面*/public void Ourpalm_ExitGame(boolean usetip)
@Overridepublic boolean onKeyDown(int keyCode, KeyEvent event) {// TODO Auto-generated method stubif (keyCode == KeyEvent.KEYCODE_BACK) {Ourpalm_Entry.getInstance(this).Ourpalm_ExitGame(true);return true;}return super.onKeyDown(keyCode, event);}
打开后能在logcat看到SDK的日志输出,TAG为“info”和msg”, 用于游戏接入SDK的调试阶段,出正式游戏包时请务必关闭日志输出。
// 设置打开日志输出Ourpalm_Entry.getInstance(this).SetLogs(true);
true为打开,false为关闭。
获取当前游戏包中的ServiceId。
Ourpalm_Entry.getInstance(this).getServiceId();
获取当前游戏包中的ChannelId。
Ourpalm_Entry.getInstance(this).getChannelId();
获取当前游戏包中的DeviceGroupId。
Ourpalm_Entry.getInstance(this).getDeviceGroupId();
获取当前游戏包中的LocaleId。
Ourpalm_Entry.getInstance(this).getLocaleId();
获取当前游戏包中的OpId。
Ourpalm_Entry.getInstance(this).getOpId();
给玩家展示公告内容。
Ourpalm_Entry.getInstance(this).Ourpalm_ShowNotice();
游戏可以在MIS平台配置一些自定义参数用于控制游戏中的功能,可以通过此接口实时获取自定义参数。
Ourpalm_Entry.getInstance(this).Ourpalm_CustomGameMethod(new CustomGameMethodCallback() {@Overridepublic void complete(boolean isok, JSONObject jsondata) {// TODO Auto-generated method stubif (isok) {Toast.makeText(MainActivity.this,jsondata.toString(), Toast.LENGTH_LONG).show();} else {Toast.makeText(MainActivity.this, "暂无游戏自定义数据",Toast.LENGTH_LONG).show();}}});
例如jsondata中的内容是{“key_bank_switch”:”0”},游戏解析后用于控制游戏中的相关功能。
目前发现,单机游戏使用第三方支付功能购买相关道具后,由于各种原因,玩家不能获得相应的道具,导致人工补单工作增加,所以增加此接口供游戏使用。进入游戏后,可以在能获取相关道具的前提下,自动调用此补单接口进行掉单查询,如SDK返回相应的订单号和商品ID,请根据商品ID给玩家自动放发相应的道具,如无需补单,数据返回为空。
请在SDK初始化后进行一次设置,并只设置一次即可。
// 注册自定义接口回调(请在SDK初始化后设置一次即可,不要重复设置,根据回调接口的id来区分功能)Ourpalm_Entry.getInstance(this).Ourpalm_SetSpreadsCallBack(new Ourpalm_SpreadsCallBack() {@Overridepublic void Ourpalm_Spreads(int id, String... arg) {// TODO Auto-generated method stubswitch (id) {case 10000:// 补单功能回调Log.i("info", "arg[0] == " + arg[0]);break;}}});
游戏调用的补单接口回调返回数据如下:
01-10 16:57:24.159: I/info(11722): 查询补单结果:arg[0] == [{“orderId”:”0012018011016563087700”,”propId”:”01”}]
Ourpalm_Entry.getInstance(this).Ourpalm_Channel_Spreads("ReissueOrder");
调用此接口后,如存在需补订单,会在补单回调接口中返回相应数据,包含订单号和商品ID。
目前只有饥饿鲨世界TapTap渠道需要接入该功能,该接口只有游戏强更时才需要调用,
调用该接口后,会直接拉起taptap应用详细页面,玩家可以更新游戏。
该功能需要二次打包测试。
Ourpalm_Entry.getInstance(this).Ourpalm_Channel_Spreads("TapTap_updateGame");
| 状态码 | 状态描述 |
|---|---|
| -1 | 未知错误 |
| -2 | URL错误 |
| -3 | 请求用户中心失败 |
| -4 | 支付失败,其他错误 |
| -5 | 无网络 |
| -6 | 用户中心返回数据解析失败 |
| 0 | 初始化失败 |
| 10 | 登录错误,其他错误 |
| 11 | 登录取消 |
| 12 | 登录时,用户输入信息错误 |
| 13 | 登录验证错误 |
| 14 | 登录验证参数错误 |
| 15 | 获取系统用户名错误 |
| 17 | 第三方SDK登录错误,目前只针对华为 |
| 18 | 登录状态失效,目前只针对百度 |
| 20 | 账号注册错误,其他错误 |
| 21 | 账号注册错误,验证失败 |
| 22 | 注册时,用户输入信息格式错误 |
| 30 | 修改账号密码错误 |
| 31 | 修改密码参数错误 |
| 32 | 修改密码验证失败 |
| 33 | 找回密码参数错误 |
| 40 | 绑定账号错误 |
| 41 | 绑定账号错误,验证错误 |
| 42 | 绑定账号错误,参数错误 |
| 100 | 支付相关参数错误 |
| 101 | 支付成功 |
| 102 | 支付失败 |
| 103 | 支付取消 |
| 104 | 下单成功 |
| 105 | 下单失败 |
| 106 | 解析支付协议失败 |
| 107 | 当前支付方式不可用 |
| 111 | 兑换礼包码,礼包码未输入 |
| 112 | 兑换礼包码,发货地址为空 |
| 113 | 兑换礼包码,数据解析错误 |
| 401 | 用户中心绑定手机失败 |
| 计费 错误码 | 信息 |
|---|---|
| 21000 | 成功 |
| 21001 | 请求的json串格式不正确 |
| 21002 | json对象格式不正确 |
| 21003 | json字符串转换为对象错误 |
| 21004 | 道具格式不正确 |
| 21005 | 返回bean格式不正确 |
| 21006 | 没有筛出计费点 |
| 21007 | 驱动格式不正确 |
| 21099 | 全局异常错误 |
| 21100 | common节点格式不正确 |
| 21101 | options节点格式不正确 |
| 21102 | common中interfaceId不能为空 |
| 21103 | tokenId格式不正确 |
| 21104 | serviceId格式不正确 |
| 21105 | deviceGroupId格式不正确 |
| 21106 | localeId格式不正确 |
| 21107 | pCode格式不正确 |
| 21108 | netSource格式不正确 |
| 21120 | device格式不正确 |
| 21121 | mac格式不正确 |
| 21122 | 手机号码错误 |
| 21123 | 发货地址格式不正确 |
| 21130 | 批价ID格式不正确 |
| 21131 | 道具ID格式不正确 |
| 21132 | sdkVersion格式不正确 |
| 21133 | userId格式不正确 |
| 21134 | roleId格式不正确 |
| 21135 | roleName格式不正确 |
| 21136 | gameType格式不正确 |
| 21137 | gameServerId格式不正确 |
| 21138 | gameClientVersion格式不正确 |
| 21139 | 当前业务下没有该道具 |
| 21140 | 计费点ID格式不正确 |
| 21141 | 充值金额格式不正确 |
| 21142 | 货币类型格式不正确 |
| 21143 | gameServerId在平台没有启用 |
| 21144 | 游戏产品不存在 |
| 21145 | 平台操作失败. |
| 21146 | 请求报文头格式不正确 |
| 21147 | 手机平台ID格式不正确 |
| 21148 | 设备名称格式不正确 |
| 21149 | 设备系统版本号格式不正确 |
| 21150 | 设备分辨率格式不正确 |
| 21151 | 设备UDID格式不正确 |
| 21152 | 运营商格式不正确 |
| 21153 | 设备厂商格式不正确 |
| 21154 | 手机号格式不正确 |
| 21155 | 用户ID格式不正确 |
| 21156 | 代计费功能同步渠道异常 |
| 21157 | 超过用户日最大计费金额 |
| 21158 | 超过用户月最大计费金额 |
| 21159 | 黑名单用户 |
| 21160 | 充值失败 |
| 21161 | 超过计费点日最大计费金额 |
| 21162 | 超过计费点月最大计费金额 |
| 21163 | 道具名称不能为空 |
| 21164 | 通知发货成功 |
| 21165 | 计费失败 |
| 21166 | 等待支付结果 |
| 21167 | 指令错误 |
| 21168 | 已经订购,无需重复订购(包月) |
| 21169 | 黑名单用户 |
| 21170 | 虚拟货币单位格式不正确 |
| 21171 | 虚拟货币数量格式不正确 |
| 21172 | 虚拟货币单位非法 |
| 21173 | 虚拟货币数量非法 |
| 21174 | 货币格式非法 |
| 21175 | 发货地址在mis上没有配置 |
| 21176 | SDK同步_验签失败 |
| 21177 | SDK同步_订单缓存不存在 |
| 21178 | SDK同步_签名信息格式不正确 |
| 21179 | 官网_订单号格式不正确 |
| 21180 | 官网_订单缓存不存在 |
| 21181 | 官网_充值卡号格式不正确 |
| 21182 | 官网_充值卡类型格式不正确 |
| 21183 | 官网_充值卡密码格式不正确 |
| 21184 | 官网_银行类型格式不正确 |
| 21185 | 官网_计费点ID格式不正确 |
| 21185 | 礼包码不得为空 |
| 21186 | 发货失败 |
| 21187 | 礼包码不存在或不可用 |
| 21188 | 礼包码已过期 |
| 21189 | 礼包码未领取 |
| 21190 | 礼包码已使用 |
| 21191 | 该用户已兑换过礼包码 |
| 21192 | 该设备已兑换过礼包码 |
| 21193 | 礼包活动暂停中 |
| 21194 | 礼包码已经用完 |
| 21195 | 网络异常 |
| 21196 | 服务内部错误 |
| 21197 | 传入的礼包码有错误 |
| 21198 | 传入的礼包ID有错误 |
| 21199 | 用户未登录 |
| 21200 | 兑换超过用户最大限制 |
| 21201 | 游戏产品有误 |
| 21202 | 策略关系不存在 |
| 21203 | 联运渠道或推广渠道有误 |
| 21204 | 推广渠道有误 |
| 21205 | 机型组有误 |
| 21206 | 语言有误 |
| 21207 | 逻辑服策略不存在 |
| 21208 | 逻辑服有误 |
| 21209 | 已配置回调地址,sdk同步数据不予处理 |
| 21210 | 官网充值支付类型格式不正确 |
| 21211 | 官网充值支付校验类型格式不正确 |
| 21212 | 官网充值支付校验码格式不正确 |
| 21213 | 官网充值支付角色不存在 |
| 21214 | 官网_用户ID格式不正确 |
| 21215 | 官网_查询起始时间格式不正确 |
| 21216 | 官网_查询起结束时间式不正确 |
| 21217 | 官网_分页信息格式不正确 |
| 21218 | 官网_分页信息每页数量信息格式不正确 |
| 21219 | 官网_分页信息当前页参数格式不正确 |
| 21220 | 官网_分页信息当前日期范围不正确 |
| 21221 | 手机同步订单号和计费点ID不能同时为空 |
| 21222 | 游戏奖励活动不存在 |
| 21223 | 游戏奖励活动状态未开启 |
| 21224 | 不在游戏活动有效期 |
| 21225 | 用户已领取活动奖励 |
| 21226 | 未查询到玩家活动充值记录 |
| 21227 | 用户天兑换次数超出上限 |
| 21228 | 用户周兑换次数超出上限 |
| 21229 | 用户月兑换次数超出上限 |
| 23153 | 官网_第三方订单号不能为空 |
| 23152 | 官网_实际支付金额不能为空 |
| 23154 | 签名不能为空 |
| 23155 | 该笔订单已发货 |
| 23156 | 离线计费缓存为空 |
| 23157 | 礼包码未到生效时间 |
| 22000 | app_product_id格式不正确 |
| 22050 | cmcc_pay_code格式不正确 |
| 22100 | googlePlay_pay_code格式不正确 |
| 22150 | mmpaycode格式不正确 |
| 22200 | 世纪佳缘接口game_partner_id游戏合作ID格式不正确 |
| 22201 | 世纪佳缘接口game_jf_id游戏计费点编号格式不正确 |
| 22202 | 世纪佳缘接口game_id游戏id格式不正确 |
| 22203 | 世纪佳缘接口game_cost金额格式不正确 |
| 22204 | 世纪佳缘接口mobile充值手机号格式不正确 |
| 22205 | 世纪佳缘接口game_pay_type支付类型格式不正确 |
| 22206 | 世纪佳缘接口param短信上行自定义内容格式不正确 |
| 22207 | 世纪佳缘接口sign加密格式不正确 |
| 22208 | 世纪佳缘接口签名数据不符 |
| 22209 | 世纪佳缘接口game_partner_id与计费点上参数不符 |
| 22210 | 世纪佳缘接口game_jf_id与计费点上参数不符 |
| 22211 | 世纪佳缘接口game_id与计费点上参数不符 |
| 22212 | 世纪佳缘接口根据指令没有相关代计费配置 |
| 22250 | 根据指令没有相关代计费配置 |
| 22251 | itemId_短信上行自定义内容格式不正确 |
| 22252 | transactionId_内容格式不正确 |
| 22253 | serviceId_内容格式不正确 |
| 22254 | spId_内容格式不正确 |
| 22255 | serviceType_内容格式不正确 |
| 22256 | feeType_内容格式不正确 |
| 22257 | serviceId与计费点上参数不符 |
| 22258 | spId与计费点上参数不符 |
| 22259 | serviceType与计费点上参数不符 |
| 22260 | feeType与计费点上参数不符 |
| 22262 | success_内容格式不正确 |
| 22263 | checkcode_内容不正确 |
| 22304 | 联通时科外放接口Mobile充值手机号格式不正确 |
| 22305 | 联通时科外放接口sms_msg外放代码格式不正确 |
| 22306 | 联通时科外放接口ret计费结果格式不正确 |
| 22307 | 联通时科外放接口message计费错误信息格式不正确 |
| 22308 | 联通时科外放接口sec |
| 22309 | 联通时科外放接口签名数据不符 |
| 22310 | 联通时科外放接口没有相关代计费配置 |
| 22311 | 联通时科外放接口传入订单号格式不正确 |
| 22354 | 微米外放接口mobile充值手机号格式不正确 |
| 22355 | 微米外放接口Price金额格式不正确 |
| 22356 | 微米外放接口ExData上行自定义内容格式不正确 |
| 22357 | 微米外放接口paramWIMIPOST上传的参数无效 |
| 22358 | 微米外放接口没有相关代计费配置 |
| 22359 | 微米外放接口【POST】-回传的XML报文未成功获取 |
| 22400 | 联动优势外放接口mobileId充值手机号码格式不正确 |
| 22401 | 联动优势外放接口goodsId短信上行商品号指令格式不正确 |
| 22402 | 联动优势外放接口没有相关代计费配置 |
| 22403 | 联动优势外放接口merId商户号格式不正确 |
| 22404 | 联动优势外放接口amtType货币类型格式不正确 |
| 22405 | 联动优势外放接口bankType货币类型格式不正确 |
| 22406 | 联动优势外放接口version版本号格式不正确 |
| 22407 | 联动优势外放接口sign签名格式不正确 |
| 22408 | 联动优势外放接口orderId商户订单号格式不正确 |
| 22409 | 联动优势外放接口merDate商户日期格式不正确 |
| 22410 | 联动优势外放接口payDate平台支付日期格式不正确 |
| 22411 | 联动优势外放接口amount商品金额格式不正确 |
| 22412 | 联动优势外放接口transType交易类型格式不正确 |
| 22413 | 联动优势外放接口settleDate账务清算日期格式不正确 |
| 22414 | 联动优势外放接口merPriv商户私有信息格式不正确 |
| 22415 | 联动优势外放接口retCode返回码格式不正确 |
| 22416 | 联动优势外放接口平台向用户下订单时签名验证不成功 |
| 22417 | 联动优势外放接口平台向用户同步信息时签名验证不成功 |
| 22418 | 联动优势外放接口平台向商户下订单金额超过当前计费点的实际金额 |
| 22419 | 联动优势外放接口当前计费点不满足计费限额,订单状态更新为异常。 |
| 22450 | IVR外放接口没有相关代计费配置 |
| 22451 | IVR外放接口开始计费时间格式不正确 |
| 22452 | IVR外放接口结束计费时间格式不正确 |
| 22453 | IVR外放接口呼叫号码格式不正确 |
| 22454 | IVR外放接口被叫号码格式不正确 |
| 22455 | IVR外放接口没有找到相关计费点配置 |
| 22500 | Official官网SMS计费回调接口sign签名验证不通过 |
| 22501 | Official官网SMS计费回调接口订单不存在 |
| 22550 | downloadjoySDK计费回调接口result返回结果验证不通过 |
| 22551 | downloadjoySDK计费回调接口money返回结果验证不通过 |
| 22512 | downloadjoySDK计费回调接口mid返回结果验证不通过 |
| 22513 | downloadjoySDK计费回调接口time返回结果验证不通过 |
| 22514 | downloadjoySDK计费回调接口signature返回结果验证不通过 |
| 22515 | downloadjoySDK计费回调接口ext返回结果验证不通过 |
| 22516 | downloadjoySDK计费回调接口签名验证不通过 |
| 22600 | duokuSDK计费回调接口amount返回结果验证不通过 |
| 22601 | duokuSDK计费回调接口cardtype返回结果验证不通过 |
| 22602 | duokuSDK计费回调接口orderId返回结果验证不通过 |
| 22603 | duokuSDK计费回调接口result返回结果验证不通过 |
| 22604 | duokuSDK计费回调接口timetamp返回结果验证不通过 |
| 22605 | duokuSDK计费回调接口client_secret返回结果验证不通过 |
| 22606 | duokuSDK计费回调接口签名验证不通过 |
| 22650 | I4SDK计费回调接口amount返回结果验证不通过 |
| 22651 | I4SDK计费回调接口order_id返回结果验证不通过 |
| 22652 | I4SDK计费回调接口billno返回结果验证不通过 |
| 22653 | I4SDK计费回调接口account返回结果验证不通过 |
| 22654 | I4SDK计费回调接口status返回结果验证不通过 |
| 22655 | I4SDK计费回调接口app_id返回结果验证不通过 |
| 22656 | I4SDK计费回调接口role返回结果验证不通过 |
| 22657 | I4SDK计费回调接口zone返回结果验证不通过 |
| 22658 | I4SDK计费回调接口sign返回结果验证不通过 |
| 22659 | I4SDK计费回调接口签名验证不通过 |
| 22700 | 本月已订购 |
| 22701 | 用户未登录 |
| 22702 | 手机号有误 |
| 22703 | token不能为空 |
| 22704 | 计费点不能为空 |
| 22705 | 跳转地址不能为空 |
| 22706 | 该协议只支持短订单号指令,请检查配置是否正确 |
| 22750 | 安智回调接口第三方订单ID不存在 |
| 22751 | 安智回调接口订单金额不存在 |
| 22752 | 安智回调接口回调信息用户自定义参数不存在 |
| 22753 | 安智回调接口回传状态不存在 |
| 22754 | 安智回调接口实际支付金额不存在 |
| 22800 | 步步高下单失败 |
| 22801 | 步步高回调验签失败 |
| 22802 | 步步高回调支付失败 |
| 22850 | 获取access_token值返回错误 |
| 22851 | 下单失败 |
| 22900 | 签名错误 |
| 22901 | 支付状态错误 |
| 22902 | 支付状态错误 |
| 22950 | 上行内容格式不正确 |
| 22951 | 代计费配置错误 |
| 22952 | 手机号码格式不正确 |
| 22953 | 处理结果格式不正确 |
| 22954 | 流水号格式不正确 |
| 22955 | 上行号码格式不正确 |
| 23000 | 上行内容格式不正确 |
| 23001 | 产品内容格式不正确 |
| 23002 | 手机号码格式不正确 |
| 23003 | 流水号格式不正确 |
| 23004 | 签名格式不正确 |
| 23005 | 签名错误 |
| 23050 | 编码异常 |
| 23051 | 订单提交失败 |
| 23100 | 签名格式不正确 |
| 23101 | 签名错误 |
| 23102 | 交易状态格式不正确 |
| 23150 | 向盛付通下单失败 |
| 23151 | 字符编码异常 |
| 23201 | facId格式不正确 |
| 23202 | facMerId格式不正确 |
| 23203 | cardId格式不正确 |
| 23204 | oProjNo格式不正确 |
| 23205 | cardKind格式不正确 |
| 23206 | cardPoint格式不正确 |
| 23207 | returnMsgNo格式不正确 |
| 23208 | hash格式不正确 |
| 23209 | hash验证错误 |
| 23210 | facTradeSeq格式不正确 |
| 23211 | tradeSeq格式不正确 |
| 23212 | 差异报表查询参数格式不正确 |
| 23213 | FactorySeq格式不正确 |
| 23214 | OTP格式不正确 |
| 23251 | ERPC验证错误 |
| 26000 | 展示的错误信息 |
| 26001 | orderId为空 |
| 24000 | 请求缺少相关参数 |
| 24001 | userSign不能为空 |
| 24002 | 要添加的userSign个数超过设定容量 |
| 24003 | userSign个数已超过设定容量 |
| 24004 | userSign剩余容量不足以添加要添加数据 |
| 24005 | userSign格式有误 |
| 用户中心错误码 | 信息 |
|---|---|
| 01010001 | 成功 |
| 01010002 | 次数已经达到上限,请12小时后再发送 |
| 01010003 | 该用户没有绑定手机 |
| 01010004 | 原密码不正确 |
| 01010005 | 没有找到该用户信息 |
| 01010006 | 令牌验证错误 |
| 01010007 | 验证码不正确 |
| 01010008 | 验证码超时 |
| 01010009 | 该用户已经绑定手机 |
| 01010010 | 用户昵称不存在 |
| 01010011 | 昵称已存在,请重新输入 |
| 01010012 | 该账号已存在 |
| 01010013 | Email不存在,请重新输入Email |
| 01010014 | 发送验证码失败 |
| 01010014 | 繁体-发送验证码失败 |
| 01010015 | 失败 |
| 01010016 | 邮箱验证失败 |
| 01010017 | 邮箱验证成功 |
| 01010018 | 密码修改失败 |
| 01010019 | 密码修改成功 |
| 01010020 | 昵称修改失败 |
| 01010021 | 昵称修改成功 |
| 01010022 | 手机验证码发送失败 |
| 01010023 | 手机验证码发送成功 |
| 01010024 | 发送未绑定手机验证码失败 |
| 01010025 | 发送未绑定手机验证码成功 |
| 01010026 | 用户绑定失败 |
| 01010027 | 用户绑定成功 |
| 01010028 | 手机绑定失败 |
| 01010029 | 手机绑定成功 |
| 01010030 | 邮箱绑定失败 |
| 01010031 | 邮箱绑定成功 |
| 01010032 | 手机验证码验证失败 |
| 01010033 | 手机验证码验证成功 |
| 01010034 | 重置密码失败 |
| 01010035 | 重置密码成功 |
| 01010036 | 获取用户信息失败 |
| 01010037 | 获取用户信息成功 |
| 01010038 | 该用户暂未绑定手机 |
| 01010039 | 该手机号已被绑定,请更换手机号 |
| 01010040 | 用户名不能是手机号 |
| 01010041 | 用户名不能是邮箱 |
| 01010043 | 邮箱绑定失败 |
| 01010044 | 密码修改失败,新密码与原密码相同 |
| 01010045 | 用户密码为空 |
| 01010046 | 登录密码不正确 |
| 01010047 | 手机解绑失败 |
| 01010048 | 第三方用户已绑定 |
| 01010049 | 账号为6-18位,数字、字母、”_” |
| 01010050 | 密码为6-14位,数字、字母组合 |
| 01010051 | 该账号不存在 |
| 01010052 | 昵称不合法 |
| 01010053 | 接口参数不正确,请确认 |
| 01010054 | 输入的身份证号码格式有误 |
| 01010055 | 当前用户已做过验证 |
| 01010056 | 真实姓名格式有误 |
| 01010057 | 角色信息参数有误 |
| 01010058 | 参数不全或不完整 |
| 01010059 | 用户名未作更改 |
| 01010060 | 未获取到用户信息 |
| 01010061 | 游戏服Id不得为空 |
| 01010062 | 用户Id不能为空 |
| 01010063 | 产品接口未配置 |
| 01010064 | 调用查询角色接口出错 |
| 01010065 | 未查询到角色 |
| 01020001 | 成功 |
| 01020002 | 密码错误,请重试 |
| 01020003 | 密码错误,请重试 |
| 01020004 | 注册失败 |
| 01020005 | 失败 |
| 01020006 | 该账号已存在 |
| 01020007 | 账号为6-18位,数字、字母、”_” |
| 01020008 | 限制登录 |
| 01020009 | 限制首登 |
| 01020010 | 限制初始化 |
| 01020011 | 当前玩家的手持设备的IP地址已经被游戏封停 |
| 01020012 | 玩家的手持设备已经被游戏封停 |
| 01020013 | 当前玩家账号已经被游戏封停 |
| 01020014 | 没有找到该用户信息 |
| 01020015 | 查询激活信息失败 |
| 01020016 | 激活的tokenId不正确 |
| 01020017 | 用户激活失败 |
| 01020018 | 激活码无效 |
| 01020019 | 密码为6-14位,数字、字母组合 |
| 01020020 | 请使用已激活的账号登录 |
| 01020021 | 激活码已经被使用 |
| 01020022 | 您已经激活过其他设备,不能在多台设备上激活 |
| 01020023 | 用户密码不能为空 |
| 01020024 | 该账号不存在 |
| 01020025 | 内测阶段,暂不支持第三方登录 |
| 01020026 | 您的账号存在安全隐患,请联系客服:4000688900 |
| 01020027 | 没有该用户信息 |
| 01020028 | 设备信息获取失败 |
| 01020029 | 验证码有误 |
| 01020030 | 验证码已过期 |
| 01020031 | 注册手机号不能为空 |
| 01020032 | 验证码不能为空 |
| 01020033 | 该手机号已被绑定,请更换手机号 |
| 01020034 | 登录失败,请使用账号密码重试! |
| 01030000 | 心跳处理成功 |
| 01030001 | 心跳处理失败 |
| 01030002 | sessionId为空 |
| 01030003 | session已过期 |
| 01040000 | 成功 |
| 03010000 | 已经被激活 |
| 03010001 | 角色查询参数不全 |
| 03010002 | 参数不全 |
| 03010003 | 角色已注册 |
| 03010004 | 注册发生错误 |