Open wwdmbvbb opened 5 years ago
Consider the following code
import 'package:flutter/material.dart'; import 'package:flutter_html_view/flutter_html_view.dart'; void main() => runApp(MyApp()); class MyApp extends StatelessWidget { final String html1 = '<a href="https://de.wikipedia.org/wiki/Taubenschwänzchen">Taubenschwänzchen</a>'; final String html2 = '<a href="https://de.wikipedia.org/wiki/Taubenschw%C3%A4nzchen">Taubenschwänzchen Replaced</a>'; @override Widget build(BuildContext context) { return MaterialApp( title: 'Flutter Demo', theme: ThemeData( primarySwatch: Colors.blue, ), home: Scaffold(body: SafeArea(child: HtmlView(data: '$html1\n$html2')) )); } }
Clicking on both links works fine in Android. Clicking on the first link causes a crash in iOS with the following exception:
2018-12-19 11:16:30.135686+0100 Runner[42605:280162] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'The specified URL has an unsupported scheme. Only HTTP and HTTPS URLs are supported.' *** First throw call stack: ( 0 CoreFoundation 0x000000010340d1bb __exceptionPreprocess + 331 1 libobjc.A.dylib 0x00000001029ab735 objc_exception_throw + 48 2 CoreFoundation 0x000000010340d015 +[NSException raise:format:] + 197 3 SafariServices 0x00000001169e6356 -[SFSafariViewController initWithURL:configuration:] + 107 4 SafariServices 0x00000001169e6900 -[SFSafariViewController initWithURL:] + 94 5 url_launcher 0x0000000102350028 -[FLTUrlLauncherPlugin launchURLInVC:result:] + 152 6 url_launcher 0x000000010234f7f4 -[FLTUrlLauncherPlugin handleMethodCall:result:] + 996 7 Flutter 0x0000000100b5f9a2 __45-[FlutterMethodChannel setMethodCallHandler:]_block_invoke + 115 8 Flutter 0x0000000100b7c616 _ZNK5shell21PlatformMessageRouter21HandlePlatformMessageEN3fml6RefPtrIN5blink15PlatformMessageEEE + 166 9 Flutter 0x0000000100b7ffbe _ZN5shell15PlatformViewIOS21HandlePlatformMessageEN3fml6RefPtrIN5blink15PlatformMessageEEE + 38 10 Flutter 0x0000000100bd08e9 _ZNSt3__110__function6__funcIZN5shell5Shell29OnEngineHandlePlatformMessageEN3fml6RefPtrIN5blink15PlatformMessageEEEE4$_26NS_9allocatorIS9_EEFvvEEclEv + 57 11 Flutter 0x0000000100b8b4fa _ZN3fml15MessageLoopImpl15RunExpiredTasksEv + 922 12 Flutter 0x0000000100b8e832 _ZN3fml17MessageLoopDarwin11OnTimerFireEP16__CFRunLoopTimerPS0_ + 26 13 CoreFoundation 0x0000000103372f34 __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 20 14 CoreFoundation 0x0000000103372b32 __CFRunLoopDoTimer + 1026 15 CoreFoundation 0x000000010337239a __CFRunLoopDoTimers + 266 16 CoreFoundation 0x000000010336ca1c __CFRunLoopRun + 2252 17 CoreFoundation 0x000000010336be11 CFRunLoopRunSpecific + 625 18 GraphicsServices 0x0000000107c0e1dd GSEventRunModal + 62 19 UIKitCore 0x000000010cefd81d UIApplicationMain + 140 20 Runner 0x000000010085f3d4 main + 68 21 libdyld.dylib 0x0000000106e7b575 start + 1 22 ??? 0x0000000000000001 0x0 + 1 ) libc++abi.dylib: terminating with uncaught exception of type NSException
Consider the following code
Clicking on both links works fine in Android. Clicking on the first link causes a crash in iOS with the following exception: