English
Log In
You can then view all documents
成长工具/短剧SDK/短剧SDK接入_Android/可选扩展功能(登录&支付)
可选扩展功能(登录&支付)
Last updated 2024-02-29 11:09:27

一、用户登录(可选接入)

注意事项

  1. 如果开发者有自己的账号体系,需要接入登录功能,否则用户相关权益无法保障。
  2. 如果开发者没有账号体系,可以忽略该部分。

前置依赖:登录依赖server key秘钥(server key建议由开发者服务器动态下发,避免泄露),请开发者从穿山甲平台-成长工具-内容输出-接入管理找到应用并获取该应用的server key。

登录接入步骤:

  1. 初始化注入登录路由,详见 1.1
  2. 注入开发者用户uid,详见 2.1
  3. 退出登录,详见 3.1

1、登录路由

调用初始化接口时传入DJXSdkConfig.IDJXRouter接口即可,该接口需要开发者自行实现自身的登录。

1.1 路由接口说明 IDJXRouter

复制

1.2 最佳实践

复制

2、登录接口

开发者登录成功后,需要将用户id回传给sdk

  • 【推荐】为保证安全性,建议由开发者服务端将业务侧登录态传递给SDK防止server key被恶意篡改,详细实现请参考登录加签服务端接口
  • 如果您没有自己的服务器,可以调用DJXSdk.service().getSignString()获取签名参数,开发者可以根据自己的业务逻辑,在用户登录后调用接口DJXSdk.service().login()同步登录结果给短剧SDK,若开发者没有调用/同步,即是游客身份。

2.1 登录接口说明 IDJXService

复制

2.2 最佳实践

  1. 可以调用DJXSdk.service().getSignString()接口生成登录参数,若开发者有自己的服务器,建议通过服务端接口将业务侧登录态传递给SDK,防止server key被恶意篡改,详细实现请参考登录加签服务端接口
  2. 调用登录接口DJXSdk.service().login()进行登录
复制

3、退出登录

开发者退出登录时需要调用接口DJXSdk.service().logout();

3.1 退出接口说明 IDJXService

复制

3.2 最佳实践

复制

二、支付模块(可选接入)

针对使用穿山甲短剧内容的开发者,穿山甲为开发者提供更加便捷和安全的支付服务。同时为使用穿山甲短剧sdk的开发者增加变现方式(在原有SDK仅支持激励视频广告解锁的基础上,给予开发者使用购买支付解锁穿山甲短剧内容的选择),让开发者有更多变现方案的可能性,提升变现能力。

  1. 支付渠道:当前支持支付宝和微信渠道进行支付;
  2. 支付套餐
    1. 会员购买:购买会员后,会员生效期间可解锁所有短剧剧集
      1. 付款类型选择:一次性购买
      2. 周期选择:一次性购买:1天/7天/月/季度/年

b. 单部支付:针对单部短剧进行购买,购买后解锁该短剧所有剧集

  1. 订单查询接口
    1. 用户订单查询(详细查看本章节6.1查询订单信息 ):app内C端用户在自己账户内的订单查询(支付查询)
    2. 用户会员状态查询(详细查看本章节6.2查询会员状态):app内C端用户查看自己会员状态
    3. 开发者订单查询:开发者统计支付订单数据

1、接入流程概览

1.1 白名单申请

向穿山甲提交申请开通白名单权限,开通白名单后可接入支付能力的sdk及平台支付相关模块

1.2 SDK接入

根据本章节2将sdk集成至应用中,支付链路依赖于套餐ID串联,套餐ID在穿山甲平台上创建及管理(参考本章节1.3 套餐创建)。

1.3 套餐创建

为保障安全性,建议开发者自行下发商品套餐进行支付(详细请参考业务侧服务端创建订单参数),商品套餐可参考以下步骤在穿山甲平台进行创建。

  1. 点击进入内容输出—支付管理
  2. 点击新建支付方式,进入支付方式创建页面
  1. 选择需要创建支付方式的应用
  2. 输入支付方式名称
  3. 选择支付套餐类型
    1. 会员购买:选择会员周期、输入套餐价格

b. 单部购买:输入购买单部短剧价格

  1. 点击提交,创建成功
  2. 返回首页,获取套餐ID

2、引入依赖

注意事项:接入支付功能必须接入用户登录

前置依赖:支付依赖server key秘钥,请开发者从穿山甲平台-成长工具-内容输出-接入管理找到应用并获取该应用的server key。注:server key建议由开发者服务器动态下发,避免泄露

支付接入步骤:详细可参考demo VipDialog

  1. 支付模块引入,详见 2
  2. 商品套餐展示,详见 3
  3. 支付协议签署, 详见4
  4. 购买套餐,详见5
  5. 其他接口,详见6
复制

微信支付回调说明重要

微信支付需要配置回调接口,否则会导致调起微信失败或支付无回调等问题。微信回调目前支持两种方式:

  • 方式一:【建议】创建一个类继承自EMWXPayActivity即可,该类需要放到:[项目包名.wxapi]目录下,并在AndroidManifest中注册(申明时应使用 <activity)。详细可以参考demo WXEntryActivity。
  • 方式二:如果您之前已经有了微信回调的activity,可以将支付需要的逻辑复制过去即可(逻辑参考EMWXPayActivity,详细如下方代码所示)
复制


微信常见问题排查:

  • 微信无法调起(包括首次能拉起,后续无法拉起,以及未登录微信能拉起,登录后不能拉起情况):
    • APPID:检查申请的微信APPID是否和服务端下单时的微信APPID是否一致。
    • 包名:检查APP包名是否与微信开放平台设置的一致,需特别注意很多应用内测版和正式版包名不一致也会导致微信无法调起。
    • 签名:检查APP打包签名文件是否与微信开放平台填写的签名信息一致,Debug和Release是否均使用此签名打包。
    • 未安装微信APP

3、商品套餐展示

  • 【推荐】为保证安全性,建议由开发者服务器自行下发商品套餐和支付参数,端上只做展示和调用支付接口,详细请参考业务侧服务端创建订单参数
  • 如果您没有自己的服务器,也可以使用sdk提供的商品套餐查询接口进行套餐的展示。

3.1 套餐查询接口 IDJXService.getCombos( )

复制

3.2 商品数据模型 DJXCombo

复制

4、支付协议

重要:用户支付前一定要签署支付协议,否则会有支付失败风险。

4.1 支付协议获取&签署接口

复制

4.2 支付协议数据模型 DJXProtocol

复制

5、购买套餐

发起支付时,需要传入加签的支付参数,详见参考业务侧服务端创建订单参数接口文档。

如果您没有服务器,支付参数加签可以调用登录接口的加签能力: IDJXService.getSignString()

支付结果获取请参考服务端支付结果回调接口

5.1 支付接口 IDJXService.pay( )

复制

5.2 订单数据模型 DJXOrder

复制

6、其他接口

其他接口主要用来做套餐购买记录和订单记录,该部分数据开发者可以自行做界面展示。

6.1 查询购买记录和订单信息

复制

6.2 会员数据模型 DJXVip

复制


Contents
Contact us