451518849 / Flutter_lc_im
Licence: other
一个简单、轻量可用于正式项目的 flutter 聊天插件。
Stars: ✭ 94
Programming Languages
dart
5743 projects
Projects that are alternatives of or similar to Flutter lc im
Phonesploit
Using open Adb ports we can exploit a Andriod Device
Stars: ✭ 854 (+808.51%)
Mutual labels: andriod
Angular Chat
(IM App)Chat App built using Angular and Socket.io
Stars: ✭ 12 (-87.23%)
Mutual labels: im
Qtalk
Startalk is a high-performace IM software for business. It has been stably used in Qunar for more than 4 years, providing services as well as consultation after and before sales to business. Startalk is applicable to multiple scenarios, such as office automation, business services, and first-party SDKs for IM scenes
Stars: ✭ 980 (+942.55%)
Mutual labels: im
Jus
Flexible and Easy HTTP/REST Communication library for Java and Android
Stars: ✭ 55 (-41.49%)
Mutual labels: andriod
Easychatandroidclient
EasyChat是一个开源的社交类的App。主要包含消息、好友、群组等相关的IM核心功能。部分界面参照了QQ、微信等相关社交APP。EasyChat APP整体采用MVVM模式,基于JetPack(Lifecycle,LiveData,ViewModel,Room)构建
Stars: ✭ 64 (-31.91%)
Mutual labels: im
Netty Websocket Spring Boot Starter
🚀 lightweight high-performance WebSocket framework ( 轻量级、高性能的WebSocket框架)
Stars: ✭ 885 (+841.49%)
Mutual labels: im
Matrix Commander
simple but convenient CLI-based Matrix client app for sending and receiving
Stars: ✭ 90 (-4.26%)
Mutual labels: im
flutter_lc_im
More customizations, less code !
Introduction
超级简单、轻量的Flutter聊天插件,支持ios和android两个平台。强势推荐一波LeanCloud!!! LeanCloud的使用传送门。
Important
全面升级flutter_lc_im,彻底剥离原生界面,让界面定制更容易!在0.2.5版本以前聊天界面还是用的原生代码,使得维护起来非常麻烦,尤其是对UI的修改,更是繁琐。为此,在1.0.0以后的版中去除原生界面的代码,使用flutter编写界面,让用户可以根据自己的业务绘制界面。同时example中已经提供了一套聊天的基础UI,可以直接使用或基于它进行修改。目前还处于Beta版,还在升级中,如需更多功能请Star支持。
Support
-
[x] 一对一聊天
-
[x] 获取聊天列表(可自定义列表UI)
-
[x] 根据聊天情况刷新聊天列表
-
[x] 给出聊天列表上的未读消息数
-
[x] 发送图片消息
-
[x] 发送语音消息
-
[x] 发送视频消息
-
[x] 发送表情
-
[ ] 团组聊天
-
[x] 消息推送
-
[ ] ......
Flutter version
v1.12.13+hotfix.8
Install
Add this to your package's pubspec.yaml file:
dependencies:
flutter_lc_im: ^1.1.4
flutter packages get
Before Use
在使用插件之前,你需要到leancloud官网上去注册一个账号,然后获得AppId、AppKey和REST API如下图所示:
Use:
注册
FlutterLcIm.register("appId","appKey", "api",debug);
登陆
FlutterLcIm.login("clientId");
登出
FlutterLcIm.logout();
获取聊天列表
FlutterLcIm.queryHistoryConversations(_limit, _offset);
创建单聊
FlutterLcIm.createConversation(peerId,limit);
获取聊天记录
FlutterLcIm.queryHistoryConversationMessages()
发送文字消息
FlutterLcIm.sendTextMessage();
发送图片消息
FlutterLcIm.sendImageMessage();
发送语音消息
FlutterLcIm.sendVoiceMessage();
发送视频消息
FlutterLcIm.sendVideoMessage();
关于推送
ios推送
ios端的推送在AppDelegate.m文件中设置,已给参考代码。主要步骤为三步
- 通过UNUserNotificationCenter注册
- 通过AVInstallation设置deviceToken
- 处理推送
android推送
android端目前只支持后台线程推送,暂不支持混合推送。推送代码很简单,只要在项目中的MainActivity中的resume函数中设置几行代码,如下所示:
@Override
protected void onResume() {
super.onResume();
// 获取推送消息数据
String message = this.getIntent().getStringExtra("com.avoscloud.Data");
String channel = this.getIntent().getStringExtra("com.avoscloud.Channel");
if (message != null && FlutterLcImPlugin.notificationCallback != null){
FlutterLcImPlugin.notificationCallback.success(message);
}
}
More
详细使用请看example中的代码
QQ技术交流:
群聊号:853797155,欢迎交流问题和技术!
欢迎PR
Note that the project description data, including the texts, logos, images, and/or trademarks,
for each open source project belongs to its rightful owner.
If you wish to add or remove any projects, please contact us at [email protected].