搜索插件、代码仓与 APP 分类

chat_composer 封面
插件详情v1.0.3

chat_composer

一个用于轻松实现聊天输入框的 Flutter 包,允许用户通过文本、音频和其他媒体进行聊天。

AndroidiOS
近 30 天下载
69
喜欢数
47
Pub 分数
130

安装插件

flutter pub add chat_composer

插件介绍

基于插件公开信息、社区数据与项目使用情况整理的选型参考。

ChatComposer 是一个 Flutter 包,旨在简化应用程序中聊天输入功能的集成。它使用户能够通过文本、语音录制和其他媒体类型在统一且可自定义的界面中发送消息。该包注重易用性,支持 Android 和 iOS 平台,为开发者提供了一种简化通信体验的方法。该包提供了响应式且可扩展的基础架构,适用于实时消息应用,非常适合社交平台、客户支持工具或协作环境。

适合场景

  • 实时消息应用
  • 客户支持聊天界面
  • 社交媒体消息
  • 协作式工作区
  • 支持语音的聊天功能

主要特点

  • 短信输入
  • 音频录制支持
  • 媒体附件功能
  • 跨平台兼容性(Android 和 iOS)
  • 可自定义的 UI 组件

适合对象

  • 开发聊天应用的开发者
  • 需要丰富媒体消息的团队
  • 需要语音转文字通信的应用
  • 以移动设备为先的通信平台
  • 开发周期紧张的项目

使用建议

  • 需要平台特定权限才能进行音频录制
  • 可能需要额外的样式以实现品牌一致
  • 依赖外部媒体处理依赖项
  • 有限的开箱即用的分析或消息历史
  • 最适合简单到中等复杂度的聊天流程

原始 README

以下为关联源码仓库的 README 原文快照,最新内容请访问源码仓库。

chat_composer

pub package

A Flutter package for easy implementation of chat composer allows users to chat with Text, Audio, and Other Media.

Gif

Setup

Android

Permissions

    ...
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.RECORD_AUDIO" />
    ...
   <application

AndroidX

  1. Add the following to your "gradle.properties" file:
android.useAndroidX=true
android.enableJetifier=true
  1. Make sure you set the compileSdkVersion in your "android/app/build.gradle" file to 33 or higher:
android {
  compileSdkVersion 33
  ...
}
  1. Make sure you set the minSdkVersion in your "android/app/build.gradle" file to 18 or higher:
defaultConfig {
  minSdkVersion 18
  ...
}
  1. Make sure you replace all the android. dependencies to their AndroidX counterparts (a full list can be found here: https://developer.android.com/jetpack/androidx/migrate ).

IOS

I'm working on the iOS version until then you can support me by buying me a cup of coffee 🙂

Add dependency

dependencies:
  chat_composer: ^1.0.2 #latest version
Import
import 'package:chat_composer/chat_composer.dart';
Easy to use
ChatComposer(
    onReceiveText: (str) {
    print('TEXT : ' + str!);
    },
    onRecordEnd: (path) {
    print('AUDIO PATH : ' + path!);
    },
)
Attributes

leading: A widget to display before the [TextField].
actions: A list of Widgets to display in a row after the [TextField] widget.
onReceiveText: A callback when submit Text Message.
onRecordStart: A callback when start recording.
onRecordEnd: A callback when end recording, return the recorder audio path.
onRecordCancel: A callback when cancel recording.
onPanCancel: A callback when the user does not lock the recording or does not hold.
maxRecordLength: Audio max duration should record then return recorder audio path.

Buy Me A Coffee

所属分类

依赖

依赖清单 7 项

源码仓库

使用此插件的项目

暂无相关数据。