deepmusicfinder 0.0.1 copy "deepmusicfinder: ^0.0.1" to clipboard
deepmusicfinder: ^0.0.1 copied to clipboard

outdated

Plugin To Fecth Songs And Songs MetaData From Storage

example/lib/main.dart

import 'package:flutter/material.dart';
import 'dart:async';

import 'package:flutter/services.dart';
import 'package:deepmusicfinder/deepmusicfinder.dart';

import 'package:permission_handler/permission_handler.dart';
void main() => runApp(MyApp());

class MyApp extends StatefulWidget {
  @override
  _MyAppState createState() => _MyAppState();
}

class _MyAppState extends State<MyApp> {

  Map<dynamic,dynamic> albumArt = {};
  List<Map<dynamic,dynamic>>  songsList = [];
  @override
  void initState() {
    super.initState();
    initPlatformState();
  }


  Future<void> initPlatformState() async {

    this.per();
    try {
      dynamic data = await Deepmusicfinder.pp;
      print(data);
      setState(() {
      albumArt = Map.from(data["AlbumsData"]);
      songsList = List.from(data["SongsData"]);
      });

    } on PlatformException {
      print("Error");
    }


  }


  void per() {

      PermissionHandler()
          .checkPermissionStatus(PermissionGroup.storage)
          .then((checkPermissionStatus) {
        if (checkPermissionStatus == PermissionStatus.granted) {
          // FetchSongs fetch = new FetchSongs(setSongs);
          // fetch.start(path);

        } else {
          PermissionHandler().requestPermissions(
              [PermissionGroup.storage]).then((reqPermissions) {
            // FetchSongs fetch = new FetchSongs(setSongs);

            if (reqPermissions[PermissionGroup.storage] ==
                PermissionStatus.granted) {
              // fetch.start(path);

            }
          });
        }
      });
  }

  Widget buildLeading(id) {

    String url = albumArt[int.parse(id)];
    print(url);
    if(url == null) {
      return Icon(Icons.library_music);
    }
    return Image.asset(url);
  }

  Widget songBuilder(BuildContext context,int index) {

    return ListTile(
      title: Text(songsList[index]["title"]),
      leading: buildLeading(songsList[index]["albumArtColumn"]),
    );

  }

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        appBar: AppBar(
          title: const Text('Plugin example app'),
        ),
        body: Center(
          child: ListView.builder(itemBuilder: songBuilder,itemCount: songsList.length,),
        ),
      ),
    );
  }
}
2
likes
0
pub points
0%
popularity

Publisher

unverified uploader

Plugin To Fecth Songs And Songs MetaData From Storage

Repository (GitHub)
View/report issues

License

unknown (LICENSE)

Dependencies

flutter

More

Packages that depend on deepmusicfinder