一些 windows 应用程序,如电报,可以通过浏览器使用自定义架构 url 打开。 当我在我的 windows 电脑上安装电报并在浏览器中输入
tg://
,它可以最大化电报应用程序或运行电报应用程序,如果它尚未启动。
在 flutter 应用程序中,我们可以在 its 文档的帮助下使用 android 和 iOS 的深度链接
但是如何打开带有深度链接的 flutter windows 应用程序?
如果有人仍在寻找解决方案,这里是:https://pub.dev/packages/uni_links_desktop构建并运行示例项目。您将了解如何为您的应用配置主机。
我发现 Flutter Windows 应用程序中的深度链接支持很复杂。
您应该创建自定义注册表条目以将您的 URI 方案与您的应用相关联。您需要将此library 添加到Windows 应用程序。这个 instruction 可以帮助你。为了在你的 flutter 应用程序中处理它,你应该编写一些 c++ 代码来移植你需要 flutter 的数据。
这个包将这个 sdk 移植到手机和网络上:flutter-branch-sdk
在通用 Windows 应用程序 (UWP) 中处理深度链接要容易得多,但它在 flutter dev 通道中并且不稳定并且还没有被其他 3rd 方包支持。
你可以通过这个instruction激活uwp
并通过运行此命令在现有项目中创建 uwp:
颤振创建 --platforms=winuwp
为了在“winuwp/runner_uwp/appxmanifest.in”中添加深层链接,请进行以下更改:
<Packages
...
xmlns:uap2="http://schemas.microsoft.com/appx/manifest/uap/windows10/2"
xmlns:uap3="http://schemas.microsoft.com/appx/manifest/uap/windows10/3"
IgnorableNamespaces="uap uap2 uap3 mp">
<Application>
<Application Id="App" ...
<Extensions>
<uap3:Extension Category="windows.appUriHandler">
<uap3:AppUriHandler>
<uap3:Host Name="flungoportfolio.com" />
</uap3:AppUriHandler>
</uap3:Extension>
</Extensions>
</Application>
</Application>
这个包对我来说非常有用:https://pub.dev/packages/protocol_handler