接入概览
星河岛 SDK 让应用把自身正在进行的事项显示在星河岛上。应用提供内容并处理用户操作,排版、动效与显示时机由星河岛负责。
工作方式
应用通过 SDK 与用户设备上的星流建立连接,之后可以随时发送、更新与结束事项。每个事项称为一条内容(IslandActivity),由一个胶囊(Capsule)和一张展开卡片(IslandCard)组成:胶囊显示在屏幕顶端,卡片在用户点按胶囊后展开;内容不在主岛时以副岛显示。
| 阶段 | 应用的工作 | 对应接口 |
|---|---|---|
| 连接 | 创建客户端、设置回调并连接,等待状态变为已连接 | IslandClient.connect() |
| 开始 | 事项开始时,选择卡片模板并填写内容后发送 | start() |
| 更新 | 事项状态变化时,以同一内容编号发送新内容 | update() |
| 响应 | 处理用户点按按钮、回复消息、拖动进度与收起内容 | IslandCallback |
| 结束 | 事项完成时结束内容,可附带一句收尾 | end() |
开放的能力
九套卡片模板
按内容选择通用、进度、强调、明细、状态、大图、音乐、消息或对称卡片。
胶囊与副岛
左侧图像与标签,右侧文字、数值、倒计时、正计时、进度环、加载指示或波形。
按钮与开关
文字按钮、圆形图标按钮、底部图标按钮与开关,点按结果回传给应用。
交互回调
消息回复、音乐进度拖动、卡片展开与收起、用户收起内容、内容被结束。
提醒
事项开始或更新时自动展开卡片片刻,结束时在胶囊上显示收尾。
与通知协同
声明内容对应的应用通知,避免同一事项在星河岛上重复显示。
使用边界
- 导航与通话模板不开放,应用内容不能冒充导航或来电。
- 应用内容的优先级最高与「未到点的计时」相同,不高于来电、通话、新消息与导航。
- 用户开启「显示应用来源」时,卡片顶部的来源栏由星河岛写入应用图标与名称,应用不能修改。该开关位于星流「显示规则」页,默认关闭。
- 应用在前台时,其内容默认不在星河岛显示;是否隐藏由用户在星流中设置,应用不能更改。
- 每个应用同时最多 3 条内容,每秒最多提交 10 次。
完整规则见限制与规则。
环境要求
| 项目 | 要求 |
|---|---|
| 接入应用 | Android 8.0(API 26)及以上;compileSdk 26 及以上;Java 17;Kotlin 工程需 Kotlin 2.1 及以上 |
| 用户设备 | Android 15 及以上,已安装并启用星流;OPPO、一加、realme 手机上还需安装并启用星流官方插件「流体云事件接入」 |
| 依赖 | 仅 Kotlin 标准库;无需额外混淆规则 |