Je travaille sur webview en flutter. Je ne peux pas ouvrir l'URL http dans IOS. Cela fonctionne sur https. Quelqu'un peut-il suggérer comment surmonter cela?

Je mets info.plist

 <key>io.flutter.embedded_views_preview</key>
    <string>YES</string>
     <key>NSAllowsArbitraryLoads</key>
    <true/>

Cordialement, Sathish

1
sathish kumar 4 nov. 2019 à 06:08

2 réponses

Dans iOS, UIWebview est obsolète, vous devriez donc utiliser votre WKWebview.

Pour Flutter, vous devez utiliser la dépendance ci-dessous:

webview_flutter: 0.3.15+1

Importez cette classe:

import 'package:webview_flutter/webview_flutter.dart';

Ajoutez ce widget:

@override
Widget build(BuildContext context) {
return Scaffold(
  appBar: new AppBar(
      title: Text(this.title,centerTitle: true
  ),
  body: WebView(
  initialUrl: url,
  onPageFinished:(value){
    setState(() {
      print("====your page is load");
    });
  },
  )
);
}
1
Sanjayrajsinh 6 nov. 2019 à 17:16

Apple Transport Security doit être désactivé.

  1. Ouvrez le projet dans Xcode.
  2. Ouvrez Info.plist
  3. Ajoutez une nouvelle ligne à Information Property List (vérifiez que l'id est déjà là)

enter image description here

  1. Sélectionnez App Transport Security Settings
  2. Assurez-vous que Allow Arbitrary Loads est défini sur YES
1
ILYAS_Kerbal 4 nov. 2019 à 07:57