diff --git a/wgshare/lib/pages/loginPage/agreement/agreement_read_view.dart b/wgshare/lib/pages/loginPage/agreement/agreement_read_view.dart index 9a1b08c..f7d2df2 100644 --- a/wgshare/lib/pages/loginPage/agreement/agreement_read_view.dart +++ b/wgshare/lib/pages/loginPage/agreement/agreement_read_view.dart @@ -2,9 +2,9 @@ import 'dart:io'; import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; +import 'package:flutter_inappwebview/flutter_inappwebview.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:get/get.dart'; -import 'package:webview_flutter/webview_flutter.dart'; import 'agreement_read_logic.dart'; import 'agreement_read_state.dart'; @@ -17,14 +17,12 @@ class AgreementReadPage extends StatefulWidget { } class AgreementReadPageState extends State { - final AgreementReadLogic logic = Get.put(AgreementReadLogic()); final AgreementReadState state = Get.find().state; @override void initState() { super.initState(); - if (Platform.isAndroid) WebView.platform = AndroidWebView(); } @override @@ -64,16 +62,14 @@ class AgreementReadPageState extends State { 'assets/images/agreement_back.png', ), ), - onTap: (){ + onTap: () { Get.back(); }, ), Text( "隐私政策", - style: TextStyle( - fontSize: 16.sp, - fontWeight: FontWeight.w500 - ), + style: + TextStyle(fontSize: 16.sp, fontWeight: FontWeight.w500), ), SizedBox( width: 50.w, @@ -84,13 +80,16 @@ class AgreementReadPageState extends State { ), /// 中间布局 - const Expanded( - child: WebView( - initialUrl: 'https://static.23544.com/WGShare-PrivacyPolicy.html', - ), - ), + Expanded( + child: InAppWebView( + initialUrlRequest: + URLRequest(url: WebUri("https://static.23544.com/WGShare-PrivacyPolicy.html")), + initialSettings: InAppWebViewSettings( + transparentBackground: true, + safeBrowsingEnabled: true, + isFraudulentWebsiteWarningEnabled: true), + )), ], - ) - ); + )); } } diff --git a/wgshare/macos/Flutter/GeneratedPluginRegistrant.swift b/wgshare/macos/Flutter/GeneratedPluginRegistrant.swift index 6cdef6b..ac5210e 100644 --- a/wgshare/macos/Flutter/GeneratedPluginRegistrant.swift +++ b/wgshare/macos/Flutter/GeneratedPluginRegistrant.swift @@ -7,6 +7,7 @@ import Foundation import agora_rtc_engine import device_info_plus +import flutter_inappwebview_macos import geolocator_apple import iris_method_channel import package_info_plus @@ -16,6 +17,7 @@ import sqflite_darwin func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) { AgoraRtcNgPlugin.register(with: registry.registrar(forPlugin: "AgoraRtcNgPlugin")) DeviceInfoPlusMacosPlugin.register(with: registry.registrar(forPlugin: "DeviceInfoPlusMacosPlugin")) + InAppWebViewFlutterPlugin.register(with: registry.registrar(forPlugin: "InAppWebViewFlutterPlugin")) GeolocatorPlugin.register(with: registry.registrar(forPlugin: "GeolocatorPlugin")) IrisMethodChannelPlugin.register(with: registry.registrar(forPlugin: "IrisMethodChannelPlugin")) FPPPackageInfoPlusPlugin.register(with: registry.registrar(forPlugin: "FPPPackageInfoPlusPlugin")) diff --git a/wgshare/pubspec.lock b/wgshare/pubspec.lock index b94ccc1..a9d7c01 100644 --- a/wgshare/pubspec.lock +++ b/wgshare/pubspec.lock @@ -331,6 +331,70 @@ packages: url: "https://pub.flutter-io.cn" source: hosted version: "0.20.5" + flutter_inappwebview: + dependency: "direct main" + description: + name: flutter_inappwebview + sha256: "80092d13d3e29b6227e25b67973c67c7210bd5e35c4b747ca908e31eb71a46d5" + url: "https://pub.flutter-io.cn" + source: hosted + version: "6.1.5" + flutter_inappwebview_android: + dependency: transitive + description: + name: flutter_inappwebview_android + sha256: "62557c15a5c2db5d195cb3892aab74fcaec266d7b86d59a6f0027abd672cddba" + url: "https://pub.flutter-io.cn" + source: hosted + version: "1.1.3" + flutter_inappwebview_internal_annotations: + dependency: transitive + description: + name: flutter_inappwebview_internal_annotations + sha256: "787171d43f8af67864740b6f04166c13190aa74a1468a1f1f1e9ee5b90c359cd" + url: "https://pub.flutter-io.cn" + source: hosted + version: "1.2.0" + flutter_inappwebview_ios: + dependency: transitive + description: + name: flutter_inappwebview_ios + sha256: "5818cf9b26cf0cbb0f62ff50772217d41ea8d3d9cc00279c45f8aabaa1b4025d" + url: "https://pub.flutter-io.cn" + source: hosted + version: "1.1.2" + flutter_inappwebview_macos: + dependency: transitive + description: + name: flutter_inappwebview_macos + sha256: c1fbb86af1a3738e3541364d7d1866315ffb0468a1a77e34198c9be571287da1 + url: "https://pub.flutter-io.cn" + source: hosted + version: "1.1.2" + flutter_inappwebview_platform_interface: + dependency: transitive + description: + name: flutter_inappwebview_platform_interface + sha256: cf5323e194096b6ede7a1ca808c3e0a078e4b33cc3f6338977d75b4024ba2500 + url: "https://pub.flutter-io.cn" + source: hosted + version: "1.3.0+1" + flutter_inappwebview_web: + dependency: transitive + description: + name: flutter_inappwebview_web + sha256: "55f89c83b0a0d3b7893306b3bb545ba4770a4df018204917148ebb42dc14a598" + url: "https://pub.flutter-io.cn" + source: hosted + version: "1.1.2" + flutter_inappwebview_windows: + dependency: transitive + description: + name: flutter_inappwebview_windows + sha256: "8b4d3a46078a2cdc636c4a3d10d10f2a16882f6be607962dbfff8874d1642055" + url: "https://pub.flutter-io.cn" + source: hosted + version: "0.6.0" flutter_lints: dependency: "direct dev" description: @@ -1151,38 +1215,6 @@ packages: url: "https://pub.flutter-io.cn" source: hosted version: "2.4.0" - webview_flutter: - dependency: "direct main" - description: - name: webview_flutter - sha256: "392c1d83b70fe2495de3ea2c84531268d5b8de2de3f01086a53334d8b6030a88" - url: "https://pub.flutter-io.cn" - source: hosted - version: "3.0.4" - webview_flutter_android: - dependency: transitive - description: - name: webview_flutter_android - sha256: "8b3b2450e98876c70bfcead876d9390573b34b9418c19e28168b74f6cb252dbd" - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.10.4" - webview_flutter_platform_interface: - dependency: transitive - description: - name: webview_flutter_platform_interface - sha256: "812165e4e34ca677bdfbfa58c01e33b27fd03ab5fa75b70832d4b7d4ca1fa8cf" - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.9.5" - webview_flutter_wkwebview: - dependency: transitive - description: - name: webview_flutter_wkwebview - sha256: a5364369c758892aa487cbf59ea41d9edd10f9d9baf06a94e80f1bd1b4c7bbc0 - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.9.5" win32: dependency: transitive description: diff --git a/wgshare/pubspec.yaml b/wgshare/pubspec.yaml index b15369d..07324ee 100644 --- a/wgshare/pubspec.yaml +++ b/wgshare/pubspec.yaml @@ -86,7 +86,8 @@ dependencies: preload_page_view: ^0.2.0 # webview - webview_flutter: ^3.0.4 + #webview_flutter: ^3.0.4 + flutter_inappwebview: ^6.1.5 dev_dependencies: flutter_test: diff --git a/wgshare/windows/flutter/generated_plugin_registrant.cc b/wgshare/windows/flutter/generated_plugin_registrant.cc index b495d7a..388caa0 100644 --- a/wgshare/windows/flutter/generated_plugin_registrant.cc +++ b/wgshare/windows/flutter/generated_plugin_registrant.cc @@ -7,6 +7,7 @@ #include "generated_plugin_registrant.h" #include +#include #include #include #include @@ -14,6 +15,8 @@ void RegisterPlugins(flutter::PluginRegistry* registry) { AgoraRtcEnginePluginRegisterWithRegistrar( registry->GetRegistrarForPlugin("AgoraRtcEnginePlugin")); + FlutterInappwebviewWindowsPluginCApiRegisterWithRegistrar( + registry->GetRegistrarForPlugin("FlutterInappwebviewWindowsPluginCApi")); GeolocatorWindowsRegisterWithRegistrar( registry->GetRegistrarForPlugin("GeolocatorWindows")); IrisMethodChannelPluginCApiRegisterWithRegistrar( diff --git a/wgshare/windows/flutter/generated_plugins.cmake b/wgshare/windows/flutter/generated_plugins.cmake index 4e8db44..3f27852 100644 --- a/wgshare/windows/flutter/generated_plugins.cmake +++ b/wgshare/windows/flutter/generated_plugins.cmake @@ -4,6 +4,7 @@ list(APPEND FLUTTER_PLUGIN_LIST agora_rtc_engine + flutter_inappwebview_windows geolocator_windows iris_method_channel permission_handler_windows