c# - 在浏览器中单击 URL 时打开 UWP 应用程序

标签 c# url browser webview win-universal-app

我正在开发一个带有 WebView 的简单UWP页面。我想知道当在浏览器中单击带有 https 协议(protocol)的 URL 时,如何打开我的应用程序。我已经尝试过这个:

Package.appmanifest

 <uap:Extension Category="windows.protocol">
      <uap:Protocol Name="https">
        <uap:Logo>Assets\Logo.png</uap:Logo>
        <uap:DisplayName>test</uap:DisplayName>
      </uap:Protocol>
 </uap:Extension>

App.xaml.cs

protected override void OnActivated(IActivatedEventArgs args)
    {
        if (args.Kind == ActivationKind.Protocol)
        {
            // Retrieves the activation Uri.
            var protocolArgs = (ProtocolActivatedEventArgs)args;
            var uri = protocolArgs.Uri;

            var frame = Window.Current.Content as Frame;

            if (frame == null)
                frame = new Frame();

            // Navigates to MainPage, passing the Uri to it.
            frame.Navigate(typeof(MainPage), uri);
            Window.Current.Content = frame;

            // Ensure the current window is active
            Window.Current.Activate();
        }
    }

但是,当单击浏览器中的链接时,我无法选择使用我的应用程序打开它。 有人有想法吗??

最佳答案

您无法将应用程序绑定(bind)到内部协议(protocol)(例如 http/https)。

关于c# - 在浏览器中单击 URL 时打开 UWP 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37027244/

相关文章:

java - Form Action属性错误struts2

浏览器跳过了 css 规则

browser - HTML5 地理定位如何工作?

c# - 从数据库获取值(value)并添加它的值(value)?

c# - 如何从 wpf 中的 Web 浏览器控件获取文档的标题

c# - 如何使用 c# 从 excel 文件中仅获取事件工作表名称?

python - Django Userena 更改 url 监护人错误

c# winform 在运行时检查对象

php - JSencodeURI() 和 PHP urldecode() 之间的不同结果

java - 如何使用 SWT 应用程序发送 XulRunner?