mjl0602 / flutter_tiktok

Flutter tiktok short video app.
1.51k stars 435 forks source link

在不断的滑动加载新视频过程中,会出现以下错误,不再加载 #51

Closed sunyc1990 closed 2 years ago

sunyc1990 commented 2 years ago

[ERROR:flutter/lib/ui/ui_dart_state.cc(198)] Unhandled Exception: A VideoPlayerController was used after being disposed. E/flutter (31587): Once you have called dispose() on a VideoPlayerController, it can no longer be used.

mjl0602 commented 2 years ago

最新版本未重现,可更新下代码再看。

mjl0602 commented 2 years ago

若可以重现我会重新打开issue

leeyisoft commented 5 months ago

@mjl0602 我在Android真机上面没有出现该错误,在iPhone8 真机上出现了该错误,可复现 我的代码在这里
https://github.com/leeyisoft/flutter_tiktok/tree/master https://github.com/mjl0602/flutter_tiktok/pull/58

Performing hot restart... Syncing files to device iPhone 8... Restarted application in 682ms. flutter: 播放0 flutter: 预加载1 flutter: 释放3 flutter: 释放4 flutter: 释放5 flutter: 释放6 flutter: 释放7 flutter: 释放8 flutter: +++initialize 742332946 flutter: +++==initialize 742332946 flutter: +++initialize 97704552 flutter: +++==initialize 97704552 flutter: 暂停0 flutter: 播放1 flutter: 释放0 flutter: 预加载2 flutter: 释放4 flutter: 释放5 flutter: 释放6 flutter: 释放7 flutter: 释放8 flutter: +++dispose 742332946 flutter: +++==dispose 742332946 flutter: +++initialize 135377901 [ERROR:flutter/runtime/dart_vm_initializer.cc(41)] Unhandled Exception: A VideoPlayerController was used after being disposed. Once you have called dispose() on a VideoPlayerController, it can no longer be used.

0 ChangeNotifier.debugAssertNotDisposed. (package:flutter/src/foundation/change_notifier.dart:179:9)

1 ChangeNotifier.debugAssertNotDisposed (package:flutter/src/foundation/change_notifier.dart:186:6)

2 ChangeNotifier.notifyListeners (package:flutter/src/foundation/change_notifier.dart:412:27)

3 ValueNotifier.value= (package:flutter/src/foundation/change_notifier.dart:555:5)

4 VideoPlayerController._updatePosition (package:video_player/video_player.dart:746:5)

5 VideoPlayerController.seekTo (package:video_player/video_player.dart:638:5)

flutter: +++==initialize 135377901 flutter: 暂停1 flutter: 播放2 flutter: 释放0 flutter: 释放1 flutter: 预加载3 flutter: 释放5 flutter: 释放6 flutter: 释放7 flutter: 释放8 flutter: +++dispose 97704552 flutter: +++==dispose 97704552 flutter: +++initialize 967411027 [ERROR:flutter/runtime/dart_vm_initializer.cc(41)] Unhandled Exception: A VideoPlayerController was used after being disposed. Once you have called dispose() on a VideoPlayerController, it can no longer be used. #0 ChangeNotifier.debugAssertNotDisposed. (package:flutter/src/foundation/change_notifier.dart:179:9) #1 ChangeNotifier.debugAssertNotDisposed (package:flutter/src/foundation/change_notifier.dart:186:6) #2 ChangeNotifier.notifyListeners (package:flutter/src/foundation/change_notifier.dart:412:27) #3 ValueNotifier.value= (package:flutter/src/foundation/change_notifier.dart:555:5) #4 VideoPlayerController._updatePosition (package:video_player/video_player.dart:746:5) #5 VideoPlayerController.seekTo (package:video_player/video_player.dart:638:5) flutter: +++==initialize 967411027