Youtube_player_flutter: Exception non gérée : PlatformException(evaluateJavaScript_failed, Échec de l'évaluation de JavaScript...)

Créé le 15 avr. 2019  ·  29Commentaires  ·  Source: sarbagyastha/youtube_player_flutter

Salut!

Ce paquet semblait plutôt cool, alors je lui ai donné un coup de feu.
Malheureusement, j'obtiens cette erreur sous iOS (je n'ai pas encore testé Android) lorsque j'appuie sur le bouton de lecture.

19:22:03.079 282 info flutter.tools [VERBOSE-2:ui_dart_state.cc(148)] Exception non gérée : PlatformException(evaluateJavaScript_failed, Échec de l'évaluation de JavaScript, la chaîne JavaScript était : 'player.cueVideoById("secret-but-correct-video -id", 0)'

19:22:03.079 283 info flutter.tools Error Domain=WKErrorDomain Code=5 "L'exécution de JavaScript a renvoyé un résultat d'un type non pris en charge" UserInfo={NSLocalizedDescription=L'exécution de JavaScript a renvoyé un résultat d'un type non pris en charge})

J'ai exécuté pod install et aussi flutter clean . La vignette de la vidéo s'affiche dans ma vue, donc je suppose que c'est au moins un succès partiel.

fixed

Commentaire le plus utile

Je viens de commencer à utiliser youtube_player_flutter et à tester sur un iPhone XR, j'obtiens toujours l'erreur.

Sur l'émulateur Android la vidéo démarre automatiquement et non sur l'iPhone.

Quand je clique sur play sur la vidéo j'obtiens :

[VERBOSE-2:ui_dart_state.cc(148)] Exception non gérée : PlatformException (evaluateJavaScript_failed, Échec de l'évaluation de JavaScript, la chaîne JavaScript était : 'play()'
Error Domain=WKErrorDomain Code=1 "Une erreur inconnue s'est produite" UserInfo={NSLocalizedDescription=Une erreur inconnue s'est produite})

j'utilise

dépendances :
youtube_player_flutter : ^3.0.0+1

Que puis-je faire pour résoudre le problème ?

Merci

Tous les 29 commentaires

Je suis confronté à la même erreur :

[VERBOSE-2:ui_dart_state.cc(148)] Exception non gérée : PlatformException(evaluateJavaScript_failed, Échec de l'évaluation de JavaScript, la chaîne JavaScript était : 'player.loadVideoById("iLnmTe5Q2Qw", 0)'
Error Domain=WKErrorDomain Code=5 "L'exécution de JavaScript a renvoyé un résultat d'un type non pris en charge" UserInfo={NSLocalizedDescription=L'exécution de JavaScript a renvoyé un résultat d'un type non pris en charge})

0 StandardMethodCodec.decodeEnvelope (paquet : flutter/src/services/message_codecs.dart:564:7)

1 MethodChannel.invokeMethod (paquet : flutter/src/services/platform_channel.dart:302:33)

2 WebViewController.evaluateJavascript (package:ytview/ytview.dart:590:22)

Merci d'avoir signalé le problème 😊 . Le plugin est entièrement testé sur Android uniquement. Effectuer des tests sur iOS actuellement. Poussera la nouvelle version après les tests terminés, avant ce week-end.

J'ai le même problème, fonctionne très bien sur Android mais sur iOS, j'obtiens l'exception :

Exception non gérée : PlatformException (evaluateJavaScript_failed, Échec de l'évaluation de JavaScript, la chaîne JavaScript était : 'player.playVideo()'
Error Domain=WKErrorDomain Code=2 "Le processus de contenu Web s'est terminé" UserInfo={NSLocalizedDescription=Le processus de contenu Web s'est terminé})

+1 et merci d'avoir créé ce plugin @sarbagyastha

Testé la nouvelle version 1.1.0 sur un appareil iOS et cela fonctionne comme prévu, _mais dans le simulateur, la vidéo ne commence à jouer qu'après 4-5 minutes (bien que l'erreur mentionnée ci-dessus apparaisse) dans mon cas._
Pouvez-vous vérifier si cela fonctionne ou non sur un appareil iOS réel ainsi que sur un simulateur.

@sarbagyastha Obtient toujours la même exception sur l'iPhone 6s. Fonctionnement 12.1.4

Bonjour,

@sarbagyastha Obtient toujours la même exception sur iPhone 8. Exécution 12.1.2

Salut @sarbagyastha J'ai testé la v1.1.0 sur des simulateurs iOS 11 et 12 (iPhone X, iPhone 8, etc.) et sur un appareil physique (iPhone X) et cela ne semble pas être corrigé.

J'ai réussi à voir une vidéo en cours de lecture sur un simulateur iOS 11 à un moment donné, mais seulement après 4 à 5 minutes comme vous l'avez décrit. Lorsque j'ai redémarré le simulateur, j'ai de nouveau eu l'erreur:

[VERBOSE-2:ui_dart_state.cc(148)] Unhandled Exception: PlatformException(evaluateJavaScript_failed, Failed evaluating JavaScript, JavaScript string was: 'player.playVideo()'
Error Domain=WKErrorDomain Code=5 "JavaScript execution returned a result of an unsupported type" UserInfo={NSLocalizedDescription=JavaScript execution returned a result of an unsupported type})

Après un peu de débogage avec l'inspecteur Web de Safari, il semble que le problème soit dû aux fichiers liés aux publicités XHR. Je suppose qu'il faudra réécrire la partie iOS, cela prendra donc un certain temps. Si quelqu'un découvre une solution de contournement, un PR sera très apprécié. 😊

Message du compilateur :
file:///C:/src/flutter/.pub-cache/hosted/pub.dartlang.org/youtube_player_flutter-1.1.0/lib/src/youtube_player. dart:388 :53: Erreur : Le type d'argument 'Carte' ne peut pas être affecté au type de paramètre 'Set'.

  • 'Carte' provient de ' dart:core '.
  • 'Set' provient de ' dart:core '.
  • 'AudiovisualMediaTypes' provient de ' package:ytview/ytview.dart ' ('file:///C:/src/flutter/.pub-cache/hosted/pub.dartlang.org/ytview-0.0.7+3/lib /ytview.dart').
    Essayez de changer le type du paramètre ou de convertir l'argument en 'Set'.
    mediaTypesRequiringUserActionForPlayback : {},
    ^
    Le compilateur a échoué sur D:\AndroidStudioWorkspace\FlutterApps\my_smart_app\libmain.dart
    * * * * * * * * * * * * * * * * * *
    AVERTISSEMENT : Cette version d'image_picker cassera votre build Android si elle ou ses dépendances ne sont pas compatibles avec AndroidX.
    Voir https://goo.gl/CP92wY pour plus d'informations sur le problème et comment le résoudre.
    Cet avertissement s'imprime pour tous les échecs de build Android. La véritable cause première de l'erreur peut être sans rapport.
    * * * * * * * * * * * * * * * * * *
    Terminé avec une erreur : la tâche Gradle assembleDebug a échoué avec le code de sortie 1

Pouvez-vous vérifier quel est le problème, je ne peux pas exécuter l'application
j'utilise les plugins youtube_player_flutter : ^1.1.0

@pmrajani , pouvez-vous signaler avec une sortie flutter doctor -v .

Doctor summary (pour voir tous les détails, lancez flutter doctor -v) :
[√] Flutter (Channel beta, v1.1.8, sur Microsoft Windows [Version 10.0.17134.1], locale en-US)
[√] Chaîne d'outils Android - développer pour les appareils Android (Android SDK version 28.0.3)
[√] Android Studio (version 3.3)
[!] Appareil connecté
! Aucun appareil disponible

! Le médecin a trouvé des problèmes dans 1 catégorie.

@sarbagyastha Le voici

[√] Flutter (Channel beta, v1.1.8, sur Microsoft Windows [Version 10.0.17134.1], locale en-US)
• Flutter version 1.1.8 sur C:\src\flutter
• Révision du cadre 985ccb6d14 (il y a 4 mois), 2019-01-08 13:45:55 -0800
• Révision moteur 7112b72cc2
• Dart version 2.1.1 (version 2.1.1-dev.0.1 ec86471ccc)

[√] Chaîne d'outils Android - développer pour les appareils Android (Android SDK version 28.0.3)
• SDK Android dans C:\Users\Admin\AppData\Local\Android\sdk
• Emplacement Android NDK non configuré (facultatif ; utile pour la prise en charge du profilage natif)
• Plate-forme android-28, build-tools 28.0.3
• Binaire Java à : C:\Program Files\Android\Android Studio\jrebin\java
• Environnement d'exécution OpenJDK version Java (version 1.8.0_152-release-1248-b01)
• Toutes les licences Android acceptées.

[√] Android Studio (version 3.3)
• Android Studio dans C:\Program Files\Android\Android Studio
• Plug-in Flutter version 33.4.1
• Version du plug-in Dart 182.5215
• Environnement d'exécution OpenJDK version Java (version 1.8.0_152-release-1248-b01)

[!] Appareil connecté
! Aucun appareil disponible

! Le médecin a trouvé des problèmes dans 1 catégorie.
@sarbagyastha

Vous utilisez une ancienne version de dart.. exécutez flutter upgrade et le problème devrait être résolu.
Remarque : la notation d'ensemble n'a été introduite que dans Dart 2.1.2 pour Flutter.

@sarbagyastha ça marche maintenant merci.

Après un peu de débogage avec l'inspecteur Web de Safari, il semble que le problème soit dû aux fichiers liés aux publicités XHR. Je suppose qu'il faudra réécrire la partie iOS, cela prendra donc un certain temps. Si quelqu'un découvre une solution de contournement, un PR sera très apprécié.

@sarbagyastha Bonjour, qu'en est-il de ce problème ? J'attends votre mise à jour.

Veuillez corriger Échec de l'évaluation de JavaScript, la chaîne JavaScript était : problème 'player.playVideo()' dès que possible.

@dmazlum @abeeriqbal , ayant actuellement un emploi du temps serré, je travaillerai dessus dès que j'aurai suffisamment de temps pour cela.

@dmazlum @abeeriqbal , ayant actuellement un emploi du temps serré, je travaillerai dessus dès que j'aurai suffisamment de temps pour cela.

Toute mise à jour?

@abeeriqbal il n'y a pas de mise à jour. J'ai changé mon lecteur en webview. J'ai intégré le code youtube dans la vue Web. C'est une solution temporaire. à votre santé

Toute mise à jour ?

Ce bug m'affecte également. J'adore le plugin cependant!

Désolé les amis, faute de temps libre, je n'ai pas pu travailler sur le problème. J'y travaillerai à partir du week-end prochain.

Le problème est enfin résolu et mettra à jour le plugin ce soir. Cela fonctionne sur iOS maintenant.
https://imgur.com/L19WXgK

Je viens de commencer à utiliser youtube_player_flutter et à tester sur un iPhone XR, j'obtiens toujours l'erreur.

Sur l'émulateur Android la vidéo démarre automatiquement et non sur l'iPhone.

Quand je clique sur play sur la vidéo j'obtiens :

[VERBOSE-2:ui_dart_state.cc(148)] Exception non gérée : PlatformException (evaluateJavaScript_failed, Échec de l'évaluation de JavaScript, la chaîne JavaScript était : 'play()'
Error Domain=WKErrorDomain Code=1 "Une erreur inconnue s'est produite" UserInfo={NSLocalizedDescription=Une erreur inconnue s'est produite})

j'utilise

dépendances :
youtube_player_flutter : ^3.0.0+1

Que puis-je faire pour résoudre le problème ?

Merci

Je viens de commencer à utiliser youtube_player_flutter et à tester sur un iPhone XR, j'obtiens toujours l'erreur.

Sur l'émulateur Android la vidéo démarre automatiquement et non sur l'iPhone.

Quand je clique sur play sur la vidéo j'obtiens :

[VERBOSE-2:ui_dart_state.cc(148)] Exception non gérée : PlatformException (evaluateJavaScript_failed, Échec de l'évaluation de JavaScript, la chaîne JavaScript était : 'play()'
Error Domain=WKErrorDomain Code=1 "Une erreur inconnue s'est produite" UserInfo={NSLocalizedDescription=Une erreur inconnue s'est produite})

j'utilise

dépendances :
youtube_player_flutter : ^3.0.0+1

Que puis-je faire pour résoudre le problème ?

Merci

Bonjour,

@sarbagyastha Obtient toujours la même exception sur iPhone 8. Exécution 12.1.2

@sarbagyastha même erreur ici.
Version flottante : 1.7.8+hotfix-3
youtube_player_flutter : ^3.0.0+1
appareil : iPhone 8 et iPhone X avec iOS 12.3.1

@sarbagyastha j'ai eu le même problème. Dans mon cas, lorsque value.isReady est toujours faux, j'ai une erreur. J'ai donc modifié pour afficher l'indicateur et attendre que isReady change.
Il serait peut-être préférable d'afficher l'indicateur de progression jusqu'à ce que isReady devienne vrai.

@frgmt Fait dans la version 6.0.0

Cette page vous a été utile?
0 / 5 - 0 notes