A flutter plugin for music playback, including notification handling.
This plugin is developed for iOS based on AVPlayer, while android is based on mediaplayer
Add the following permissions in the info.plist
file
<key>UIBackgroundModes</key>
<array>
<string>audio</string>
</array>
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
</dict>
Since Android9.0 (API 28)
, the application disables HTTP plaintext requests by default. To allow requests, add android:usesCleartextTraffic="true"
in AndroidManifest.xml
<application
...
android:usesCleartextTraffic="true"
...
>
Android minimum support version 23 (build.gradle -> minSdkVersion: 23)
The audio_manager
plugin is developed in singleton mode. You only need to getAudioManager.instance
in the method to quickly start using it.
assets
resources or network
resources
// Initial playback. Preloaded playback information
AudioManager.instance
.start(
"assets/audio.mp3",
// "network format resource"
"title",
desc: "desc",
cover: "assets/ic_launcher.png",
// cover: "network cover image resource")
.then((err) {
print(err);
});
// Play or pause; that is, pause if currently playing, otherwise play
AudioManager.instance.playOrPause()
// events callback
AudioManager.instance.onEvents((events, args) {
print("$events, $args");
}