on_audio_query

Creator: coderz1093

Last updated:

Add to Cart

Description:

on audio query

on_audio_query #



Flutter Plugin used to query audios/songs 🎶 infos [title, artist, album, etc..] from device storage.
Any problem? Issues
Any suggestion? Pull request

Topics: #

Installation
Platforms
Overview
Examples
Gif Examples
License

Platforms: #




Methods
Android
IOS
Web




querySongs
✔️
✔️
✔️


queryAlbums
✔️
✔️
✔️


queryArtists
✔️
✔️
✔️


queryPlaylists
✔️
✔️



queryGenres
✔️
✔️
✔️


queryAudiosFrom
✔️
✔️
✔️


queryWithFilters
✔️
✔️
✔️


queryArtwork
✔️
✔️
✔️


createPlaylist
✔️
✔️



removePlaylist
✔️




addToPlaylist
✔️
✔️



removeFromPlaylist
✔️




renamePlaylist
✔️




moveItemTo
✔️




checkAndRequest
✔️
✔️



permissionsRequest
✔️
✔️



permissionsStatus
✔️
✔️



queryDeviceInfo
✔️
✔️
✔️


scanMedia
✔️





✔️ -> Supported
❌ -> Not Supported
See all platforms methods support
Installation: #
Add the following code to your pubspec.yaml:
dependencies:
on_audio_query: ^2.9.0
copied to clipboard
Request Permission: #
Android:
To use this plugin add the following code to your AndroidManifest.xml
<manifest>

<!-- Android 12 or below -->
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>

<!-- Android 13 or greater -->
<uses-permission android:name="android.permission.READ_MEDIA_IMAGES"/>
<uses-permission android:name="android.permission.READ_MEDIA_VIDEO"/>
<uses-permission android:name="android.permission.READ_MEDIA_AUDIO"/>

</manifest>
copied to clipboard
IOS:
To use this plugin add the following code to your Info.plist
<dict>

<key>NSAppleMusicUsageDescription</key>
<string>$(PROJECT_NAME) requires access to media library</string>

</dict>
copied to clipboard
Some Features: #

Optional and Built-in storage READ and WRITE permission request
Get all audios/songs.
Get all albums and album-specific audios.
Get all artists and artist-specific audios.
Get all playlists and playlists-specific audios.
Get all genres and genres-specific audios.
Get all query methods with specific keys [Search].
Create/Delete/Rename playlists.
Add/Remove/Move specific audios to playlists.
Specific sort types for all query methods.

Overview: #
All types of methods on this plugin:
Artwork Widget #
Widget someOtherName() async {
return QueryArtworkWidget(
id: <audioId>,
type: ArtworkType.AUDIO,
);
}
copied to clipboard
See more: QueryArtworkWidget
Examples: #
OnAudioQuery
final OnAudioQuery _audioQuery = OnAudioQuery();
copied to clipboard
Query methods:

queryAudios();
queryAlbums();
queryArtists();
queryPlaylists();
queryGenres().

someName() async {
// Query Audios
List<AudioModel> audios = await _audioQuery.queryAudios();

// Query Albums
List<AlbumModel> albums = await _audioQuery.queryAlbums();
}
copied to clipboard
scanMedia
You'll use this method when updating a media from storage. This method will update the media 'state' and
Android MediaStore will be able to know this 'state'.
someName() async {
OnAudioQuery _audioQuery = OnAudioQuery();
File file = File('path');
try {
if (file.existsSync()) {
file.deleteSync();
_audioQuery.scanMedia(file.path); // Scan the media 'path'
}
} catch (e) {
debugPrint('$e');
}
}
copied to clipboard
queryArtwork
someName() async {
// DEFAULT: ArtworkFormat.JPEG, 200 and false
Uint8List something = await _audioQuery.queryArtwork(
<audioId>,
ArtworkType.AUDIO,
...,
);
}
copied to clipboard
Or you can use a basic and custom Widget.
See example QueryArtworkWidget
Gif Examples: #

















Songs
Albums
Playlists
Artists



LICENSE: #

LICENSE



Back to top

License

For personal and professional use. You cannot resell or redistribute these repositories in their original state.

Customer Reviews

There are no reviews.