【问题标题】:Flutter web: uncaught exception for getTemporaryDirectory (path_provider) when using just_audioFlutter web:使用just_audio时getTemporaryDirectory(path_provider)未捕获的异常
【发布时间】:2021-07-02 08:31:11
【问题描述】:

我正在使用新的实验性LockCachingAudioSourcejust_audio。它似乎适用于 Android 和 iOS,但是当我在网络上运行我的应用程序时,我收到以下未捕获的错误:

Error: MissingPluginException(No implementation found for method getTemporaryDirectory on channel plugins.flutter.io/path_provider)
    at Object.throw_ [as throw] (http://localhost:49168/dart_sdk.js:5041:11)
    at platform_channel.MethodChannel.new._invokeMethod (http://localhost:49168/packages/flutter/src/services/system_channels.dart.lib.js:943:21)
    at _invokeMethod.next (<anonymous>)
    at http://localhost:49168/dart_sdk.js:37403:33
    at _RootZone.runUnary (http://localhost:49168/dart_sdk.js:37274:59)
    at _FutureListener.thenAwait.handleValue (http://localhost:49168/dart_sdk.js:32530:29)
    at handleValueCallback (http://localhost:49168/dart_sdk.js:33057:49)
    at Function._propagateToListeners (http://localhost:49168/dart_sdk.js:33095:17)
    at _Future.new.[_completeWithValue] (http://localhost:49168/dart_sdk.js:32943:23)
    at async._AsyncCallbackEntry.new.callback (http://localhost:49168/dart_sdk.js:32964:35)
    at Object._microtaskLoop (http://localhost:49168/dart_sdk.js:37526:13)
    at _startMicrotaskLoop (http://localhost:49168/dart_sdk.js:37532:13)
    at http://localhost:49168/dart_sdk.js:33303:9

这是我的代码:

_playlist = ConcatenatingAudioSource(
  children: mediaItemList
      .where((item) => item.extras?['url'] is String)
      .map((item) {
    final String url = item.extras?['url'];
    return LockCachingAudioSource(Uri.parse(url));
  }).toList(),
);
await _player.setAudioSource(_playlist);

我找到了解决方案,所以我将其发布在下面。

【问题讨论】:

    标签: flutter dart just-audio


    【解决方案1】:

    目前just_audio 不支持网络上的LockCachingAudioSource。解决方案是在网络上运行时使用受支持的 AudioSource 之一:

    if (kIsWeb) {
      return AudioSource.uri(Uri.parse(url));
    }
    return LockCachingAudioSource(Uri.parse(url));
    

    【讨论】:

      猜你喜欢
      • 2021-05-26
      • 2021-08-22
      • 2021-02-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-04-23
      • 2017-12-30
      相关资源
      最近更新 更多