我用类似的标题检查了这个问题:如何在启动器主屏幕上放置应用程序图标?
但在这个问题中,提问者想在安装过程中自动添加应用程序快捷方式,这不是我的问题。我正在尝试使用flutter构建一个基本的web浏览器。我想在主屏幕和启动器菜单(列出所有安装的应用程序(中添加网站快捷方式。有什么办法我能做到吗?
您可以使用动态链接(https://pub.dev/packages/firebase_dynamic_links)。
通过这种方式,您可以使用生成的链接来获取参数,如要打开的URL、是否为全屏、是否为新选项卡或窗口,等等。它的工作方式与'mailto:asd@asd.com'发送电子邮件。您可以将动态链接设置为"yourappname/openUrl"=http://google.com"。然后,在你的Flutter应用程序中,你会检测到与你的应用程序id匹配的动态链接,你将能够获得参数并据此采取行动。
看看这个Firebase动态链接库的下一个例子:
final ShortDynamicLink shortenedLink = await DynamicLinkParameters.shortenUrl(
Uri.parse('https://example.page.link/?link=https://example.com/&apn=com.example.android&ibn=com.example.ios'),
DynamicLinkParametersOptions(ShortDynamicLinkPathLength.unguessable),
);
通过这种方式,您可以解析多个查询并实现您的目标。