电台播放器
一个Flutter插件,用于播放流式音频内容,支持后台播放和锁屏控制。
安装
要使用此软件包,请在您的pubspec.yaml文件中将radio_player添加为依赖项。
dependencies:
radio_player: ^0.2.4
默认情况下,iOS禁止加载非https URL。要取消此限制,请编辑您的.plist并添加
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
</dict>
如有必要,添加在后台播放的权限
<key>UIBackgroundModes</key>
<array>
<string>audio</string>
<string>processing</string>
</array>
仅适用于iOS 14+的调试模式,您还需要以下内容
<key>NSBonjourServices</key>
<array>
<string>_dartobservatory._tcp</string>
</array>
用法
要创建RadioPlayer实例,只需调用构造函数即可。
RadioPlayer radioPlayer = RadioPlayer();
用您的数据配置它。
radioPlayer.setMediaItem(TITLE, URL, IMAGE?);
播放器控制
radioPlayer.play();
radioPlayer.pause();
状态事件
您可以使用它来显示播放器正在播放还是已暂停。
bool isPlaying = false;
//...
radioPlayer.stateStream.listen((value) {
setState(() { isPlaying = value; });
});
元数据事件
此事件返回当前元数据。
List<String>? metadata;
//...
radioPlayer.metadataStream.listen((value) {
setState(() { metadata = value; });
});
贡献
欢迎提交拉取请求。对于重大更改,请先打开一个问题来讨论您想更改的内容。请确保适当更新测试。
GitHub