首页 > 解决方案 > 当我尝试用颤振构想音乐播放器时,数据源无效

问题描述

我正在尝试用颤振制作音乐播放器;但是当我尝试玩游戏时,我得到了 Invalid resource 错误。这是我在计算机上本地获取音乐的代码的一部分。

import 'package:flutter/material.dart';
import 'music.dart';
import 'package:audioplayer2/audioplayer2.dart';
import 'package:volume/volume.dart';
import 'package:flutter/services.dart';
import 'dart:async';

...

List<Musique> musiques = [
    new Musique("Je benirai", "Anna TEKO", "assets/anaTeko.jpg", "assets/anna_teko.mp3"),
    new Musique("Victory", "Eben Victory", "assets/ebenVictory.jpg", "assets/EbenVictory1.mp3"),
    new Musique("Tramadole", "Tony X", "assets/trama1.jpg", "assets/tramadole.mp3")
  ];

还有我的日志

E/MediaPlayerNative(30743): stop called in state 1, mPlayer(0x0)
E/MediaPlayerNative(30743): error (-38, 0)
V/MediaPlayer(30743): resetDrmState:  mDrmInfo=null mDrmProvisioningThread=null mPrepareDrmInProgress=false mActiveDrmScheme=false
V/MediaPlayer(30743): cleanDrmObj: mDrmObj=null mDrmSessionId=null
W/MediaPlayer(30743): mediaplayer went away with unhandled events
W/bz.rxla.flutter/audio(30743): Invalid DataSource
W/bz.rxla.flutter/audio(30743): java.io.IOException: setDataSource failed.
W/bz.rxla.flutter/audio(30743):     at android.media.MediaPlayer.setDataSource(MediaPlayer.java:1191)
W/bz.rxla.flutter/audio(30743):     at android.media.MediaPlayer.setDataSource(MediaPlayer.java:1164)
W/bz.rxla.flutter/audio(30743):     at android.media.MediaPlayer.setDataSource(MediaPlayer.java:1131)
W/bz.rxla.flutter/audio(30743):     at bz.rxla.audioplayer.AudioplayerPlugin.play(AudioplayerPlugin.java:117)
W/bz.rxla.flutter/audio(30743):     at bz.rxla.audioplayer.AudioplayerPlugin.onMethodCall(AudioplayerPlugin.java:49)
W/bz.rxla.flutter/audio(30743):     at io.flutter.plugin.common.MethodChannel$IncomingMethodCallHandler.onMessage(MethodChannel.java:230)
W/bz.rxla.flutter/audio(30743):     at io.flutter.embedding.engine.dart.DartMessenger.handleMessageFromDart(DartMessenger.java:85)
W/bz.rxla.flutter/audio(30743):     at io.flutter.embedding.engine.FlutterJNI.handlePlatformMessage(FlutterJNI.java:692)
W/bz.rxla.flutter/audio(30743):     at android.os.MessageQueue.nativePollOnce(Native Method)
W/bz.rxla.flutter/audio(30743):     at android.os.MessageQueue.next(MessageQueue.java:326)
W/bz.rxla.flutter/audio(30743):     at android.os.Looper.loop(Looper.java:160)
W/bz.rxla.flutter/audio(30743):     at android.app.ActivityThread.main(ActivityThread.java:6669)
W/bz.rxla.flutter/audio(30743):     at java.lang.reflect.Method.invoke(Native Method)
W/bz.rxla.flutter/audio(30743):     at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
W/bz.rxla.flutter/audio(30743):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)
I/flutter (30743): Invalid Datasource

但是第一次我没有使用资产路径来访问音乐,比如

List<Musique> musiques = [
    new Musique("Je benirai", "Anna TEKO", "assets/anaTeko.jpg", "/home/mediasoft/AndroidStudioProjects/musicApp/musics/anna_teko.mp3"),
    new Musique("Victory", "Eben Victory", "assets/ebenVictory.jpg", "/home/mediasoft/AndroidStudioProjects/musicApp/musics/EbenVictory1.mp3"),
    new Musique("Tramadole", "Tony X", "assets/trama1.jpg", "/home/mediasoft/AndroidStudioProjects/musicApp/musics/tramadole.mp3")
  ];

需要帮忙。谢谢

标签: flutter

解决方案


推荐阅读