Windows 8 平台是否有与 iOS 平台上的自定义 url 方案类似的东西?
我在 MSDN 上找到了有关应用程序 URI 方案的信息。这不是答案。
在我的 iPad 应用程序中,用户会收到一封带有几个长键的电子邮件。用户单击 url,我的应用程序打开到正确的页面,其中填充了这些值。我错过了适用于 Windows 8 的类似功能吗?
Windows 8 平台是否有与 iOS 平台上的自定义 url 方案类似的东西?
我在 MSDN 上找到了有关应用程序 URI 方案的信息。这不是答案。
在我的 iPad 应用程序中,用户会收到一封带有几个长键的电子邮件。用户单击 url,我的应用程序打开到正确的页面,其中填充了这些值。我错过了适用于 Windows 8 的类似功能吗?
您正在寻找协议激活。
Package.appxmanifest
您可以通过在Declarations
选项卡上添加支持的协议来添加Protocol
. 这会将以下块添加到您的Package.appxmanifest
文件中:
<Extensions>
<Extension Category="windows.protocol">
<Protocol Name="alrt" />
</Extension>
</Extensions>
您需要App.xaml.cs
通过覆盖来处理协议激活OnActivated
:
protected override void OnActivated(IActivatedEventArgs args)
{
base.OnActivated(args);
if (args.Kind == ActivationKind.Protocol)
{
var protocolArgs = args as ProtocolActivatedEventArgs;
var rootFrame = new Frame();
rootFrame.Navigate(typeof(MainPage), protocolArgs.Uri.AbsoluteUri);
Window.Current.Content = rootFrame;
Window.Current.Activate();
}
}
查看此页面以获取更详细的说明。
看看协议激活。协会启动示例应该提供一个您可以根据自己的需要进行调整的示例。
例如,Bing Maps 应用程序有一个相当广泛的 URI 方案(当然,你不能看到他们是如何实现它的 :))