注册

【开源啦】红包功能的实现 (内含源码下载)

 
 
下载APK体验


easeUIcustomer.apk


 
先上几张APP效果图感受下吧



拼图.png




 
接下来讲一下详细的实现思路(提供的环信发送红包的和抢红包的流程代码,到了付款和提现那块就是自己选择接入微信付款还是支付宝付款


1.继承EaseChatFragment并implement EaseChatFragmentListener

2.在registerExtendMenuItem中增加红包菜单,以及onExtendMenuItemClick中增加红包点击事件

3.sendRedMoney类实现发送红包,需要自己实现支付宝付款接口,在onActivityResult中发送红包的自定义扩展消息,可以以文本消息携带金额和祝福语的扩展,以及支付宝凭证的扩展,然后发送给对方,并向自己服务器发送红包数据(这部分接口由自己服务器提供并实现)

4.实现MyEaseCustomChatRowProvider接口,重点是getCustomChatRow这个方法实现红包自定义 消息对象的创建ChatRowRedMoney

5.关于红包消息界面的布局就看一下ChatRowRedMoney这个类

6.点击红包事件的实现第一种:onMessageBubbleClick这个方法中通过判断是红包消息启动领取红包的activity,同时return true;第二种:ChatRowRedMoney 中的onBubbleClick中实现红包点击处理,并去自己服务器请求对应的红包数据(这个接口由自己服务器提供并实现)
群组内抢红包的分配实现,可以通过客户端发送抢红包请求后,通过您的服务器来处理分配金额,通过回调发送到您的手机上展示您抢到的金额


  
 
点击下载源码: https://github.com/shiyiling/ShiEaseUICustomer
 

9 个评论

常见问题: 1.菜单点击事件没有反应 setUpView()中加上setChatFragmentListener( this)这句 2.自定义消息点击没有反应 自定义消息中xml布局的bubble id是必须要写的,消息监听事件会走这个布局是否为空的判断
不错的,哈哈,谢谢分享
刚做出红包功能你们才出这个,好难过
哥们,我们现在也要做红包功能,你能不能发个Demo给我看看,跪求!
源代码运行不起 Installation failed due to invalid APK file! Please check logcat output for more details.
http://blog.csdn.net/android_i_t/article/details/49590355试下这个,看能帮到您吗
上面的问题解决了,代码运行成功,但是一点击应用只显示首页就闪退了
Failed to register native method com.easemob.media.AVNative.nativeStartVideo(Lcom/easemob/media/IGxStatusCallback;IILjava/lang/String;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;IIIZ)I in /data/app/com.yiling.easemob.easeuicustomer-1/base.apk 02-03 14:49:55.627: E/art(22433): ----- class 'Lcom/easemob/media/AVNative;' cl=0x12e71760 ----- 02-03 14:49:55.627: E/art(22433): objectSize=588 (440 from super) 02-03 14:49:55.628: E/art(22433): access=0x0000.0001 02-03 14:49:55.628: E/art(22433): super='java.lang.Class<java.lang.Object>' (cl=0x0) 02-03 14:49:55.628: E/art(22433): vtable (36 entries, 11 in super):
我用studio编程的,用导入eclipse文件的方式去导入你这个源码 Project SendReadMoney:F:\ShiEaseUICustomer-master\project.properties: Library reference ..\..\easemob-sdk-2.2.4\examples\easeui could not be found Path is F:\ShiEaseUICustomer-master\..\..\easemob-sdk-2.2.4\examples\easeui which resolves to F:\easemob-sdk-2.2.4\examples\easeui 报了这样的错,不知道什么问题

要回复文章请先登录注册