fix: uni links failed to be invoked with --cm running on macOS

This commit is contained in:
Kingtous
2023-02-07 01:31:11 +08:00
parent b2afde4b27
commit 1426771ec9
3 changed files with 21 additions and 5 deletions

View File

@@ -1292,14 +1292,24 @@ Future<bool> initUniLinks() async {
}
}
StreamSubscription? listenUniLinks() {
if (!(Platform.isWindows || Platform.isMacOS)) {
/// Listen for uni links.
///
/// * handleByFlutter: Should uni links being handled by Flutter.
///
/// Returns a [StreamSubscription] which can listen the uni links.
StreamSubscription? listenUniLinks({handleByFlutter = true}) {
if (Platform.isLinux) {
return null;
}
final sub = uriLinkStream.listen((Uri? uri) {
debugPrint("A uri was received: $uri.");
if (uri != null) {
callUniLinksUriHandler(uri);
if (handleByFlutter) {
callUniLinksUriHandler(uri);
} else {
bind.sendUrlScheme(url: uri.toString());
}
} else {
print("uni listen error: uri is empty.");
}