1 Star 0 Fork 0

huacaijia / sealtalk-android

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

SealTalk-Android

Android 应用 SealTalk 由 融云 RongCloud 出品。

特别注意

SealTalk 自从 1.3.14 版本起,CallLib 模块引用的音视频引擎已替换成 RTC 3.0,与之前的版本不互通。详细内容请参考官网的

特点

  • Android iOS Web 多端互通,如果需要你的产品也可以这样实现。
  • 音视频通话 功能
  • 地理位置,位置共享功能。
  • 随心的 消息自定义 , 功能模块自定义
  • 完整的好友体系代码示例。
  • 完整的群组功能代码示例。
  • 单聊,群组,聊天室多种社交场景满足你的需求,如果还想要 视频直播 都可以。
  • 一行代码搞定 客服? 你没有听错,比你想象的还要简单。

Gif

新增红包

image

强大的全局搜索

image

单人、多人音视频

image

客服/机器人服务

image

群组

image

APK

下载 Apk

SDK 集成说明

请参考官网 SDK 集成说明指南

关于 SealTalk 2.0

SealTalk 2.0 重构了内部逻辑实现,整体代码将更清晰易读。使用 LiveData + ViewModel + Retrofit 2.0 + Room 等框架基于 MVVM 模式进行开发。

由于 DataBinding 存在调试难, 并要在 XML 编写等问题, 所以经过讨论之后, 决定弃用DataBinding.

架构图

Ativity/Fragment 作为 View 层, 负责界面显示和事件交互.

UserInfoViewModel 等为 ViewModel 层. 连接 View 和 Model 的桥梁, 数据通过 LiveData 返回. ViewModel 可通过调用不同的 Task 来获取不同的数据源.

Task 层即为 Repository . 根据不同的接口或数据属性, 分别封装了不同的 Task, 例如关于 User 的数据操作就封装在了 UserTask 中. 这样功能模块职能清晰并复用性高. 所有数据请求等只需编写一次即可.

ServiceDao 是分别请求网络数据和数据库数据操作. 分别使用了 Retrofit 和 Room 的依赖库.

数据请求流程

在新版中也对数据的请求机制做了信息设计处理. 请求数据分为三种.

  • 网络请求需要缓存的
  • 网络请求且不需要缓存的
  • 数据库直接查询的

需要网络请求并需要缓存的

在 Task 层首先会查询数据库, 然后返回当前数据库中的缓存数据, 此数据用于请求网络时, 页面友好展示. 然后再请求服务器,获取最新数据, 获取数据成功后会把新数据保存至数据库, 最后再进行一次数据库查询, 获取数据库中的最新数据. 此机制虽然烦琐, 但极大的保证了界面展示的数据于最新数据的一致性.

网络请求且不需要缓存的

Task 直接进行网络请求并返回数据.

数据库直接查询的

运行环境

  • Android Studio 3.2 以上版本 SealMic 适配了 Android X,所以需要 使用 3.2 以上版本的 Android Studio 才能保证可以正常编译和使用。代码中有地方可能报红色错误, 不影响编译运行. 推荐使用真实 Android 设备 部分模拟器会存在功能缺失或运行环境不稳定等情况影响使用体验。
  • TargetVersion 版本需 26 及以上版本

支持

比你想象的更强大, 敬请期待更多精彩!

融云官网

空文件

简介

RongCloud Android SDK Demo 展开 收起
Java
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
Java
1
https://gitee.com/huacaijia/sealtalk-android.git
git@gitee.com:huacaijia/sealtalk-android.git
huacaijia
sealtalk-android
sealtalk-android
master

搜索帮助