野火IM解决方案
特别注意
com.android.tools.build:gradle:3.5.0
可能存在bug,会导致音视频crash,请勿升级到次版本,若已升级到此版本,请降级到3.4.2
,对应gradle版本为5.1.1
- 待修复这问题之后,野火IM会升级所使用的
gradle
和Android Gradle plugin
的版本
野火IM是一套跨平台、核心功能开源的即时通讯解决方案,主要包含以下内容。
仓库 | 说明 | 备注 |
---|---|---|
android-chat | 野火IM Android SDK源码和App源码 | 可以很方便地进行二次开发,或集成到现有应用当中 |
ios-chat | 野火IM iOS SDK源码和App源码 | 可以很方便地进行二次开发,或集成到现有应用当中 |
pc-chat | 基于Electron开发的PC平台应用 | |
proto | 野火IM的协议栈实现 | |
server | IM server | |
app server | 应用服务端 | |
robot_server | 机器人服务端 | |
push_server | 推送服务器 | |
docs | 野火IM相关文档,包含设计、概念、开发、使用说明 |
说明
本工程为野火IM Android App,开发过程中,充分考虑了二次开发和集成需求,可作为SDK集成到其他应用中,或者直接进行二次开发,详情可以阅读docs.
开发一套IM系统真的很艰辛,请路过的朋友们给点个star,支持我们坚持下去
开发调试说明
我们采用最新稳定版Android Studio及对应的gradle进行开发,对于旧版本的IDE,我们没有测试,编译之类问题,需自行解决。
二次开发说明
野火IM采用bugly作为日志手机工具,大家二次开发时,务必将MyApp.java
中的 bugly id
替换为你们自己的,否则错误日志都跑我们这儿来了,你们收集不到错误日志,我们也会收到干扰。
另外,如果可以请告知我们,我们会在案例参考把项目加上。
联系我们
商务合作请优先采用邮箱和我们联系。技术问题请到野火IM论坛发帖交流。
- heavyrain.lee 邮箱: heavyrain.lee@wildfirechat.cn 微信:wildfirechat
- imndx 邮箱: imndx@wildfirechat.cn 微信:wfchat
问题交流
- 微信交流群(请先加我们好友,我们再邀请您进群)
- 如果大家发现bug,请在GitHub提issue
- 其他问题,请到野火IM论坛进行交流学习
- 微信公众号
强烈建议关注我们的公众号。我们有新版本发布或者有重大更新会通过公众号通知大家,另外我们也会不定期的发布一些关于野火IM的技术介绍。
体验Demo
我们提供了体验demo,请使用微信扫码下载安装体验
应用截图
协议栈的编译
工程中已经包括了编译好的协议栈,你也可以自己编译协议栈,编译方法请参考协议栈工程。
集成
- client部分,自行下载代码,并将client module引入你们自己的项目。
- UI(chat)部分,需要你自行下载,并将代码移动到你自己的项目,且必须是application module,不能作为library module引入的原因是注解中使用了R.xx.yyyy, 而library module中,R.xx.yyy并不是一个常量。后续会采用butterKnife的方式,引入R2.xx.yyyy。
贡献
欢迎提交pull request,一起打造一个更好的开源IM。
鸣谢
- LQRWeChat 本项目中图片选择器、表情基于此开发
- butterKnife
- OKHttp等一些其他优秀的开源项目
- 本工程使用的Icon全部来源于icons8,对他们表示感谢。
- Gif动态图来源于网络,对网友的制作表示感谢。
如果有什么地方侵犯了您的权益,请联系我们删除
案例参考
todo