Apkplug 热更新服务端api文档

apkplug 热更新服务端对开发者提供了开放api,通过这些api可以实现创建应用、创建渠道、上传apk文件、编辑和查询各种信息等功能。

接口参数签名使用如下方案:

**签名方案

 sign_type=private: 非对称签名
 签名实现:Base64(RAS(sha1(所有参数eascii升序排序,拼接字段之间用&分割)))

 sign_type=secret:字符串签名 
 签名实现:Base64(sha1(所有参数eascii升序排序,拼接字段之间用&分割+&secret_key=xxx))

sign_type默认为private

例如:
 _time=1469241923.98&access_id=acc_1RRnBKYnvhu&app_id=app_1RRoNHE9egM&channel_id=&set_current=&sign_type=secret&secret_key=u8JjE42rKISXLTiFWOwofYmzlhBNetM9

获取access_id

access_id是必传参数,值在子帐号详情处获取:

以下是api接口说明:

1、创建热更新渠道

    URL路径:
        https://api.apkplug.com/hotupdate/gradle/v1/channel/create.json
    method:
        GET POST
    操作权限:
        本人可操作
    传入参数:
        @access_id      #子账号ID
        @app_id         #appid 
        @channel_id     #字母开头的 数字,字母组合字符串 3-10            
        @_time
        @sign_type  #签名方案 secret | private
        @sign  见签名方案
    返回参数:
        ```
        {
           "err_detail": null, 
           "return_code": "SUCCESS|FAIL", 
           "return_msg": [
                 {
                     "channel_id": "",
                }
            ]
       }
        ```

2、获取热更新渠道信息

    URL路径:
        https://api.apkplug.com/hotupdate/gradle/v1/channel/list.json
    method:
        GET POST
    操作权限:
        本人可操作
    传入参数:
        @access_id      #子账号ID
        @app_id         #appid 
        @channel_id     #[可选]

        @limit      限制每页可以返回多少对象,范围为 1-100 项,默认是 10 项   [可选]
        @skip       查询起始位置 默认为0 [可选]

        @_time
        @sign_type  #签名方案 secret | private
        @sign  见签名方案
    返回参数:
        ```
        {
           "err_detail": null, 
           "return_code": "SUCCESS|FAIL", 
           "return_msg": {
                "records_number": 0,
                "list": [
                    {
                     "channel_id": "",
                     "current":"当前版本",
                     "current_md5":"当前版本apk文件的MD5",
                     "current_updating_policy":"更新策略",
                    }
                ]
            }
       }
        ```

3、 热更新渠道包上传

    URL路径:
        https://api.apkplug.com/hotupdate/gradle/v2/package/uri.json
    method:
        GET POST
    操作权限:
        本人可操作
    传入参数:
        @access_id      #子账号ID
        @app_id         #appid 
        @channel_id     #[可选]        
        @updating_policy#更新策略 update
        @set_current    #是否立即设置为当前版本,默认true
        @info
        @md5
        @uri            #文件上传的uri 
        @_time
        @sign_type  #签名方案 secret | private
        @sign  见签名方案
    返回参数:
        ```
        {
           "err_detail": null, 
           "return_code": "SUCCESS|FAIL", 
           "return_msg": {
                "channel_id": "",
                "updating_policy":"更新策略",
            }
        }
        ```

4.、获取渠道内部分版本信息

    URL路径:
        https://api.apkplug.com/hotupdate/gradle/v1/channel/version/list.json
    method:
        GET POST
    操作权限:
        本人可操作
    传入参数:
        @access_id      #子账号ID
        @app_id         #appid 
        @channel_id     #
        @version        #版本 【可选】 
        @limit      限制每页可以返回多少对象,范围为 1-100 项,默认是 10 项   [可选]
        @skip       查询起始位置 默认为0 [可选]
        @need_info  是否需要版本详情   true|false   默认false[可选]
        @need_icon  是否需要版本的icon true|false   默认false[可选]

        @start_time     #大于绑定日期 用 Unix 时间戳表示 [可选]  
        @end_time       #小于绑定日期 用 Unix 时间戳表示 [可选]
        @order[time]        #DESC倒序 ACS顺序 默认DESC  [可选]       
        @_time
        @sign_type  #签名方案 secret | private
        @sign  见签名方案
    返回参数:
        ```
        {
           "err_detail": null, 
           "return_code": "SUCCESS|FAIL", 
           "return_msg": {
                "records_number": 0,
                "list": [
                    {
                     "channel_id": "",
                     "version":"当前版本",
                     "md5":"当前版本apk文件的MD5",
                     "updating_policy":"更新策略",
                     "time_upload":"上传日期",
                     "icon":"",
                     "info":"",
                     "upgraded":"",
                    }
                ]
            }
       }
        ```

5、 编辑某一个版本更新策略

    URL路径:
        https://api.apkplug.com/hotupdate/gradle/v1/channel/version/updating/policy/edit.json
    method:
        GET POST
    操作权限:
        本人可操作
    传入参数:
        @access_id      #子账号ID
        @app_id         #appid 
        @channel_id     #字母开头的 数字,字母组合字符串 3-10 
        @version        #    
        @updating_policy#"更新策略 update
        @_time
        @sign_type  #签名方案 secret | private
        @sign  见签名方案
    返回参数:
        ```
        {
           "err_detail": null, 
           "return_code": "SUCCESS|FAIL", 
           "return_msg": [
                 {
                     "channel_id": "",
                     "updating_policy":""
                }
            ]
       }
        ```

6 远程页面访问API

远程重定向到
1. 渠道列表,
2. 渠道详情,
3. 渠道版本详情页面
URL路径:
        https://api.apkplug.com/hotupdate/v1/redirect/[app_id]/[channel_id]/[version]
method:
        GET POST
操作权限:
        本人可操作
传入参数:
        @access_id      #子账号ID
        @_time
        @sign_type  #签名方案 secret | private
        @sign  见签名方案
返回参数:
        校验成功以后重定向到指定界面