# 快速接入使用 ## 初始化服务 AppKey的获取见 **操作手册** ```java public class AppContext extends Application { private static AppContext mInstance; //appkey是在Appsp创建应用生成的 public static final String appKey = "aadcfae6215a4e0f9bf5bc5edccb1045"; public static AppContext getInstance() { return mInstance; } @Override public void onCreate() { super.onCreate(); mInstance = this; //关键代码 AppSpConfig.getInstance() .init(this, appKey) //可修改基础请求地址 .setHost("https://openappsp.anji-plus.com/sp/") //正式环境可以禁止日志输出,通过Tag APP-SP过滤看日志 .setDebuggable(BuildConfig.DEBUG ? true : false) //务必要初始化,否则后面请求会报错 .deviceInit(); } } ``` ## 版本更新服务 * 权限 ```java ``` * file_paths.xml代码 ```xml ``` * 调用 ```java private void checkVersion() { AppSpConfig.getInstance().setVersionUpdateCallback(new IAppSpVersionUpdateCallback() { @Override public void update(AppSpModel spModel) { //注意,当前是子线程 //成功处理 TODO } @Override public void error(String code, String msg) { //注意,当前是子线程 //失败处理 TODO } }); } ``` **请求返回数据结构如下** **spModel** 数据详情 ```java { "repCode": "0000", //业务返回码,0000表示成功 "repMsg": "成功", //业务日志 "repData": { "downloadUrl": "app下载地址", "mustUpdate": false, //是否强制更新,true为强制更新 "showUpdate": true, //是否允许弹出更新 "updateLog": "更新日志" } } ``` *** | 字段| 类型| 说明 | | :-----| :---- | :---- | | repCode |String | 业务返回码,0000表示成功 | | repMsg |String | 业务日志、异常信息 | | repData | Object | 请求业务数据包、详情见下 | **repData** 数据详情 | 字段| 类型| 说明 | | :-----| :---- | :---- | | downloadUrl |String | app下载地址 | | mustUpdate | boolean | 是否强制更新,true为强制更新; false为非强制更新 | | showUpdate | boolean | 是否提示更新:允许弹出更新 | | updateLog |String | 更新日志 | *** **errorInfo** 数据详情 ```java repCode: 抛出异常Code repMsg: 异常信息 ``` | 字段| 类型| 说明 | | :-----| :---- | :---- | | repCode |String | 抛出异常Code ; 1001: 请求异常;1202: appKey为空;1203: appKey校验失败;1207: 系统版本号不能为空;1208: 应用版本号不能为空 | | repMsg |String | 异常信息 | ### 公告服务 ```java private void checkNotice() { AppSpConfig.getInstance().getNotice(new IAppSpNoticeCallback() { @Override public void notice(AppSpModel> spModel) { //注意,当前是子线程 //成功处理 TODO } @Override public void error(String code, String msg) { //注意,当前是子线程 //失败处理 TODO } }); } ``` **请求返回数据结构如下** *** **spModel** 数据详情 ```java { "repCode": "0000", //业务返回码,0000表示成功 "repMsg": "成功", //业务日志 "repData": [ // 返回数据为 List { "title": "公告标题", "details": "公告内容", "templateType": "dialog", //公告类型( 弹窗:dialog; 水平滚动:horizontal_scroll) "templateTypeName": "公告"//公告模板名称 } ] } ``` | 字段| 类型| 说明 | | :-----| :---- | :---- | | repCode |String | 业务返回码,0000表示成功 | | repMsg |String | 业务日志、异常信息 | | repData |Object | 请求业务数据包、详情见下 | **repData** 数据详情 | 字段| 类型| 说明 | | :-----| :---- | :---- | | title |String | 公告标题 | | details |String | 公告内容 | | templateType |String | 公告类型( 弹窗:dialog; 水平滚动:horizontal_scroll)| | templateTypeName |String | 公告模板名称 | *** **errorInfo** 数据详情 ```java repCode: 抛出异常Code repMsg: 异常信息 ``` | 字段| 类型| 说明 | | :-----| :---- | :---- | | repCode |string | 抛出异常Code ; 1001: 请求异常;1202: appKey为空;1203: appKey校验失败;1207: 系统版本号不能为空;1208: 应用版本号不能为空 | | repMsg |string | 异常信息 |