Dash Bubble
? 概述
一个 Flutter 插件,允许您在屏幕上创建一个浮动气泡,该气泡基于 Floating-Bubble-View 库,由 TorryDo 开发 ?
该插件目前 **仅支持 Android**。
此 GIF 来自 示例项目
? 设置
将 `android/app/build.gradle` 文件中的最低 SDK 版本设置为 21 或更高
android {
defaultConfig {
...
minSdkVersion 21 // Set this to 21 or higher
...
}
}
该插件使用以下两个权限,但您无需将它们添加到 `AndroidManifest.xml` 文件中,因为插件会自动添加它们
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
? 用法
导入包
import 'package:dash_bubble/dash_bubble.dart';
使用 DashBubble 的单例实例来访问所有可用的方法,例如
DashBubble.instance.requestPermission()
DashBubble.instance.startBubble()
? 您可以查看完整的 API 参考 此处
? 可用方法
注意:所有方法都是异步的,返回类型为 Future<bool>。
| 方法 | 描述 | 参数 | 行为 | 注意事项 |
|---|---|---|---|---|
requestPermission() |
请求在其他应用程序上绘制的权限 | – | 如果授予了权限,则返回 true,否则返回 false |
如果权限已授予,此方法将返回 true 而不询问用户。在 Android 6.0 (M) 之前的 Android 版本中,此方法将返回 true 而不询问用户。 |
hasPermission() |
检查是否授予了在其他应用程序上绘制的权限 | – | 如果授予了权限,则返回 true,否则返回 false |
– |
isRunning() |
检查气泡当前是否正在运行 | – | 如果气泡正在运行,则返回 true,否则返回 false |
如果气泡在屏幕上可见,则认为气泡正在运行 |
startBubble() |
启动气泡 | BubbleOptions? optionsFunction()? onBubbleTap | 如果气泡成功启动,则返回 true,否则返回 false |
如果气泡已在运行或未授予权限,此方法将返回 false |
stopBubble() |
停止气泡 | – | 如果气泡成功停止,则返回 true,否则返回 false |
如果气泡未运行,此方法将返回 false |
? 气泡自定义选项
注意:所有选项都是可选的,您可以仅传递您想自定义的选项。
| 选项 | 描述 | 默认值 |
|---|---|---|
notificationTitle |
服务通知的标题 | 空 |
notificationText |
服务通知的文本 | 空 |
notificationIcon |
服务通知的图标 | 空 |
bubbleIcon |
气泡的图标 | 空 |
closeIcon |
关闭按钮的图标 | 空 |
startLocationX |
气泡在 x 轴上的初始起始位置 | 0 |
startLocationY |
气泡在 y 轴上的初始起始位置 | 200 |
bubbleSize |
气泡的大小 | 60 |
enableClose |
是否显示关闭按钮 | 真 |
enableAnimateToEdge |
当气泡被拖动到屏幕边缘时,是否将其动画到屏幕边缘 | 真 |
enableBottomShadow |
是否在气泡关闭按钮下方显示阴影 | 真 |
keepAliveWhenAppExit |
当应用关闭时是否保持气泡活动 | 假 |
✅ 路线图
- 添加测试 ?
- 实现一个即用型
AppBubble,它会在应用在后台运行时自动启动,在应用在前台运行时停止,并且在点击气泡时能够将应用带到前台 ? - 能够将
Widget作为bubbleIcon和closeIcon传递 ?? - 在原始库中实现
ExpandableView功能 ⚡
?? 贡献指南
我很乐意接受您的贡献 ?
如果您发现错误或想要一个新功能,但不知道如何修复/实现它,请填写一个 Issue。如果您修复了错误或实现了新功能,请发送一个 Pull Request。
使用 contrib.rocks 制作。

