J'ai essayé d'exécuter un exemple que j'ai obtenu de https://pub.flutter-io.cn/packages/webview_flutter/example pour utiliser la vue Web dans Flutter. Mais j'ai ce genre d'erreur:
lib / main.dart: 43: 48: Erreur: La méthode «SurfaceAndroidWebView» n'est pas définie pour la classe «_WebViewExampleState». - '_WebViewExampleState' provient du 'package: webview_test / main.dart' ('lib / main.dart'). Essayez de corriger le nom par le nom d'une méthode existante ou de définir une méthode nommée «SurfaceAndroidWebView». if (Platform.isAndroid) WebView.platform = SurfaceAndroidWebView (); ^^^^^^^^^^^^^^^^^^^^^^
Et mon code avait une erreur dans SurfaceAndroidWebView:
Voici mon pubspec.yaml:
name: webview_test description: A new Flutter application. publish_to: 'none' version: 1.0.0+1 environment: sdk: ">=2.7.0 <3.0.0" dependencies: flutter: sdk: flutter webview_flutter: cupertino_icons: ^0.1.3 dev_dependencies: flutter_test: sdk: flutter flutter: uses-material-design: true assets: - assets/sample_audio.ogg
Merci d'avance!
4 Réponses :
Vous devez importer la page SurfaceAndroidWebView
.
import './SurfaceAndroidWebView.dart';
Ça n'a pas marché. "La cible de l'URI n'existe pas: './SurfaceAndroidWebView.dart'."
Après plusieurs heures de contournement, j'ai finalement eu la réponse. Je dois mettre à jour mon flutter vers le dernier. Et puis mettez à jour mon pubspec.yaml.
Cela n'a pas fonctionné pour moi. Avez-vous fait autre chose? Êtes-vous sur Stable ou beta?
Sucré! J'ai eu les mêmes problèmes et je l'ai compris. J'avais une ancienne version de webview_flutter définie dans mon pubspec.yaml. Donc, quand j'ai essayé de faire un pub flutter, je pense que je ne recevais pas la dernière version de webview.
Dans pubspec.yaml j'avais ceci (ancienne version): webview_flutter: ^ 0.3.22 + 1
J'ai changé pour ceci (version la plus récente à partir de ce post): webview_flutter: ^ 1.0.7
Puis je suis allé sur console pour courir: flutter pub get
Et maintenant, mon application reconnaît SurfaceAndroidWebView!
Je suis un débutant dans ce domaine, alors peut-être que d'autres l'ont déjà essayé, mais peut-être que d'autres ne le savaient pas.
Android minSdkVersion doit être 19:
ajoutez ce qui suit à /android/app/build.gradle :
android { defaultConfig { // Required by the Flutter WebView plugin. minSdkVersion 19 } }
stackoverflow.com/a/64385852/10659482 Si vous l'avez fait, veuillez partager la page totale.