金融魔方红包接入文档
一 使用说明
- 版本号1.4.0,更新时间2016年12月13日
- 该文档真对studio集成,若您使用的是eclipse开发工具,请参照studio2eclipse文档把该项目转化成eclipse项目
- 该项目包含jrmfbaselib和jrmfrplib接入示例jrmfrpdemo。
- Support-v4-21 以上。
二 产品功能说明
金融魔方红包依赖库是一款实现App快速集成发单聊红包、发群聊红包、拆红包并查看交易记录等功能的库。该类库支持支付宝第三方付款,类库中已经引入了支付宝的jar包,您只需要在您的Manifest文档中配置支付宝的的参数信息即可,下面会有详细介绍。
三 集成步骤
-
把jrmfbaselib 和jrmfrplib以module的形式导入您的项目中,点击File->New->import module,打开如下页面:
- 选择路径,找到下载好的jrmfbaselib,jrmfrplib点击finish,把这两个库分别导入到您的工程中。
- jrmfbaselib包含了金融魔方所有产品共同的工具类、自定义view等内容,故jrmfrplib必须依赖jrmfbaselib
四 使用详解
- 发单个红包,发群聊红包,抢单聊红包,抢群红包,查看交易记录以及更新用户信息(头像和昵称)功能都由JrmfRpClient提供
功能示例
<font color = "blue">发群红包</font>
/**
* 打开发送群组红包界面
*
* @param context
* 【必传】上下文对象
* @param targetId
* 【必传】目标ID(会话ID)
* @param userid
* 【必传】用户ID|当前用户ID
* @param thirdToken
* 【必传】第三方的签名,需要用户自己传递过来
* @param groupNum
* 【必传】群组人数
* @param username
* 【可为NULL或""】用户昵称
* @param usericon
* 【可为NULL或""】用户头像URL
* @param requestCode
* 【必传】在onActivityResult方法中回调
*/
public static void sendGroupEnvelopeForResult(Context context, String
targetId, String userid, String thirdToken, int groupNum,
String username, String usericon, int requestCode);
<font color = "blue">发单聊红包</font>
/**
* 打开发送单聊红包界面
*
* @param context
* 【必传】上下文对象
* @param targetId
* 【必传】目标ID(单聊会话ID)
* @param userid
* 【必传】用户ID|当前用户ID
* @param thirdToken
* 【必传】第三方签名,需要用户传递过来
* @param username
* 【可为NULL或""】用户昵称
* @param usericon
* 【可为NULL或""】用户头像URL
* @param requestCode
* 【必传】在onActivityResult方法中回调
*/
public static void sendSingleEnvelopeForResult(Context context,
String targetId, String userid, String thirdToken, String username,
String usericon, int requestCode)
<font color = "blue">查看红包详情</font>
/**
* 打开红包详情
*
* @param fromActivity
* [必传] 上下文
* @param userId
* [必传] 用户id
* @param thirdToken
* [必传] 第三方签名
* @param rpId
* [必传] 红包id
* @param username
* [可为空] 用户昵称
* @param usericon
* [可为空] 用户头像
*/
public static void openRpDetail(Activity fromActivity,
String userId, String thirdToken, String rpId, String username,
String usericon);
<font color = "blue">抢群红包</font>
/**
* 抢群红包
*
* @param activity
* [必传] 上下文
* @param userid
* [必传] 用户id
* @param thirdToken
* [必传] 第三方签名,由客户传递过来
* @param username
* [可为空] 用户姓名
* @param usericon
* [可为空] 用户头像
* @param envelopeId
* [必传] 红包id
* @param callBack
* [必传] 抢红包回调接口
*/
public static void openGroupRp(FragmentActivity activity, String userid, String thirdToken, String username, String usericon,
String envelopeId,GrabRpCallBack callBack);
<font color = "blue">抢单聊红包</font>
/**
* 打开单聊红包
*
* @param activity
* [必传] 上下文
* @param userid
* [必传] 用户id
* @param thirdToken
* [必传] 第三方签名,由客户传递过来
* @param username
* [可为空] 用户姓名
* @param usericon
* [可为空] 用户头像
* @param envelopeId
* [必传] 红包id
* @param callBack
* [必传] 抢红包回调接口
*/
public static void openSingleRp( FragmentActivity activity,
String userid, String thirdToken, String username, String usericon,
String envelopeId, GrabRpCallBack callBack);
<font color = "blue">交易记录</font>
/**
* 打开查看交易记录
*
* @param fromActivity
* [必传] 上下文
* @param userId
* [必传] 用户id
* @param thirdToken
* [必传] 第三方签名
*/
public static void openTradeHistory(Activity fromActivity,
String userId, String thirdToken);
<font color = "blue">更新用户信息</font>
/**
* 更新用戶信息接口 此接口需要开发者自己回调处理
*
* @param custUid
* 【必传】用户ID|当前用户ID
* @param thirdToken
* 【必传】第三方签名需要客户传递过来
* @param nickName
* 【必传】将要更新的用户昵称
* @param avatar
* 【必传】将要更新的用户头像URL
*/
public static String updateUserInfo(String custUid,
String thirdToken, String nickName, String avatar);
<font color = "blue">抢红包的回调接口 GrabRpCallBack</font>
@Override
public void grabRpResult(int rpStatus) {
//只有抢到红包才会回调这个方法,返回0,表示抢到了最后一个红包;
//返回1,表示抢到了一个红包,但不是最后一个;只有这两种返回结果。
if (rpStatus == 0){
//抢到了最后一个红包
ToastUtil.showToast(RedPacketActivity.this,"抢到了最后一个红包");
}else if(rpStatus == 1){
//抢到了一个红包
ToastUtil.showToast(RedPacketActivity.this,"抢到了一个红包");
}
}
<font color = "blue">发红包通过请求码在onActivityResult中处理回调</font>
/**
* 发红包成功的回调
* @param requestCode
* @param resultCode
* @param data
*/
@Override protected void onActivityResult(int requestCode, int
resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
switch (requestCode) {
case SEND_GROUP:
if (resultCode == RESULT_OK) {
groupRpBean = JrmfRpClient.getEnvelopeInfo(data);
}
break;
case SEND_SINGLE:
// 发了单聊红包
if (resultCode == RESULT_OK) {
singleRpbean = JrmfRpClient.getEnvelopeInfo(data);
}
break;
}
}
发红包成功过后会返回
envelopesID 红包id
envelopeMessage 红包祝福语[例如:恭喜发财,大吉大利]
envelopeName 红包名字
- 渠道和红包名字配置:渠道是我司给客户分配的唯一识别id;红包名字为用户发红包时显示的名称,客户根据自己的需求来命名
<font color = "red"> 注意:如果您使用了其它金融魔方的产品,已经配置了渠道id,就无需再配置了</font>
<!--金融魔方渠道,huanqiu为我们的测试渠道-->
<meta-data
android:name="JRMF_PARTNER_ID"
android:value="huanqiu"/>
<!-- 金融魔方 红包名字 如果您使用的红包的SDK需要配置,
如果没有使用则不用配置 -->
<meta-data
android:name="JRMF_PARTNER_NAME"
android:value="测试红包"/>
- 初始化项目
您需要再您自定义的Application中初始化金融魔方的类库,示例代码如下:
public class MyApplication extends Application {
@Override public void onCreate() {
super.onCreate();
//用户可以调用该方法进行测试环境,正式环境切换;默认是正式环境
//设置为测试环境
JrmfClient.isDebug(true);
//初始化项目-必须调用
JrmfClient.init(this);
}
}
好啦,所有的功能介绍完了,而且demo中还有详细的使用方式,大家可以打开看看。