【Android开发】问答机器人,聊天类App的开发制作过程记录
来源:互联网 发布:org.apache.http.wire 编辑:程序博客网 时间:2024/05/18 01:14
缘起
很久没写项目了,所以单纯的想练练手,正好看到有问答机器人的接口,想到之前也做过聊天项目,为什么不实验一下呢。当然也是简单调用接口的项目,并没有真正的完成问答的算法等等。业余项目,功能不齐全,只实现了简单的问答部分,至于聊天界面等等我懒得把之前的项目代码复制一份,因此忽略了。
研究
首先,我用的问答机器人的接口仍然还是聚合数据开放的免费接口,网址是:https://www.juhe.cn/docs/api/id/112,大家可以从这个网址里获得更多的接口信息,我项目只用了简单的调用。
在项目架构上,我用的仍然是MVP模式,使Android项目层次分明,代码结构简单,复用性高。具体采用的是Beam框架,参考作者的Beam。
聊天的界面的信息排列采用的是jude的EasyRecyclerView,因为这个控件不是基于RecyclerView的改造,我感觉在本项目中的使用中并不是很好用。本项目对列表展示比较简单,RecyclerView和ListView应该就能胜任。
总体来说,项目开发一帆风水,一晚上就开发玩了,今天下午我用改了下bug,写写文档,总结下项目。
经验
项目里边,有一个小卡克记录一下。机器人接口返回的信息被我包装成了Answer类,但是,真正项目的List展示的时候用到的是ChatBean,因此,这两者是不同的结构,不能弄混。
另外在会话列表的MVP中,Fragment控制的是List,Presenter控制的是数据的请求和响应,ViewHolder控制的是数据的具体展示,因此逻辑比较清晰了,想要控制哪个部分的控件要明白在哪个里面去改。具体的看下这个项目的里边robot包里面的三个类代码。
App截图
问答的截图:
应用市场
下载地址:
- Fir.im:https://fir.im/qarobot
可以扫码下载:
Fir.im下载:
欢迎大家使用。
结语
这个项目基本都是基于找乐和微信精选两个App改的,我觉得开发速度很快,这两个项目的架构也很好。希望大家互相交流学习。
找乐:http://blog.csdn.net/fuxuemingzhu/article/details/50911245
微信精选:http://blog.csdn.net/fuxuemingzhu/article/details/50933767
本问答机器人项目已经完全开源,代码在:https://github.com/fuxuemingzhu/QARobot,欢迎Star和Fork.
- 【Android开发】问答机器人,聊天类App的开发制作过程记录
- 【Android开发】找乐,一个笑话App的制作过程记录
- 快速开发聊天机器人
- Android APP开发记录
- Android开发中App演示Gif效果动画的制作过程详讲
- Zulip聊天机器人Python开发
- Android开发智能机器人聊天项目(1)- 异步请求数据
- Android开发智能机器人聊天项目(2)- Json数据解析
- Android开发智能机器人聊天项目(3)- json数据的封装
- Android开发过程常用的框架记录
- Android聊天软件的开发--聊天通信
- 03 - 微信小程序实例开发 - 问答机器人
- 【开源】一个基于智能问答的聊天机器人实现
- 【开源】一个基于智能问答的聊天机器人实现
- Android聊天软件的开发
- Android聊天软件的开发
- 聊天机器人教学:使用Dialogflow (API.AI)开发 iOS Chatbot App
- android如何制作出一个简单的聊天app
- .Net Framework 4 如何静默安装
- 64位进程和32位进程通信问题
- maven于eclipse集成-2
- openssl: error while loading shared libraries: libssl.so.1.1
- 实现Freemarker生成word文档,内容可二次写入
- 【Android开发】问答机器人,聊天类App的开发制作过程记录
- 手势冲突,设置优先级
- 《linux内核完全剖析》笔记03-进程创建
- Shell - 23
- SparkR (R on Spark)
- Android中的asset和raw文件夹
- Docker命令使用详解
- 【webbench】socket中close()和shutdown()区别
- 常用正则表达式