C# 注册URI关联的应用程序(Windows Phone 8.1 RT)

C# 注册URI关联的应用程序(Windows Phone 8.1 RT),c#,windows-runtime,windows-phone-8.1,windows-phone,C#,Windows Runtime,Windows Phone 8.1,Windows Phone,您好,我想创建一个方案URI,以便从另一个应用程序启动我的应用程序。 我搜索了很多,我找到了这个教程,它展示了如何为URI关联注册你的应用,但它是针对WindowsPhone8的。我正在为Windows Phone开发一个应用程序8.1 RT,我发现所有教程都不管用。至少我想知道WP 8.1 RT是否支持它。您要查找的术语是协议激活。你可以去看看那位官员 简而言之:您可以在appxmanifest中配置协议,并在App.xaml.cs代码中处理激活 protected override void

您好,我想创建一个方案URI,以便从另一个应用程序启动我的应用程序。
我搜索了很多,我找到了这个教程,它展示了如何为URI关联注册你的应用,但它是针对WindowsPhone8的。我正在为Windows Phone开发一个应用程序8.1 RT,我发现所有教程都不管用。至少我想知道WP 8.1 RT是否支持它。

您要查找的术语是协议激活。你可以去看看那位官员

简而言之:您可以在appxmanifest中配置协议,并在App.xaml.cs代码中处理激活

protected override void OnActivated(IActivatedEventArgs args)
{
    if (args.Kind == ActivationKind.Protocol)
    {
        ProtocolActivatedEventArgs protocolArgs =
           args as ProtocolActivatedEventArgs;
        var rootFrame = new Frame();
        rootFrame.Navigate(typeof(BlogItems), args);
        Window.Current.Content = rootFrame;
    }
    Window.Current.Activate();
}

您要查找的术语是协议激活。你可以去看看那位官员

简而言之:您可以在appxmanifest中配置协议,并在App.xaml.cs代码中处理激活

protected override void OnActivated(IActivatedEventArgs args)
{
    if (args.Kind == ActivationKind.Protocol)
    {
        ProtocolActivatedEventArgs protocolArgs =
           args as ProtocolActivatedEventArgs;
        var rootFrame = new Frame();
        rootFrame.Navigate(typeof(BlogItems), args);
        Window.Current.Content = rootFrame;
    }
    Window.Current.Activate();
}

这对我真的很有帮助,而且效果很好,非常感谢!)还有一个问题。我从手机浏览器中访问的网站启动该应用程序,它使用scheme URI将我重定向到该应用程序。现在,当调用OnActivate(…)方法时,我试图传递一个带有页面Uri的参数,该页面Uri用于启动应用程序。ProtocolActivatedEventArgs没有.Uri属性,因此我无法获取所需的信息,是否仍要执行此操作,我必须将其强制转换到另一个对象?在使用断点进行调试时,我可以看到args有一个.Uri属性,但在编码时我没有访问权限。我找到了它。我使用的是args,而不是具有Uri属性的protocolArgs。这对我很有帮助,工作起来很有魅力,非常感谢!)还有一个问题。我从手机浏览器中访问的网站启动该应用程序,它使用scheme URI将我重定向到该应用程序。现在,当调用OnActivate(…)方法时,我试图传递一个带有页面Uri的参数,该页面Uri用于启动应用程序。ProtocolActivatedEventArgs没有.Uri属性,因此我无法获取所需的信息,是否仍要执行此操作,我必须将其强制转换到另一个对象?在使用断点进行调试时,我可以看到args有一个.Uri属性,但在编码时我没有访问权限。我找到了它。我使用的是args,而不是具有Uri属性的protocolArgs。