Launcher.QueryUriSupportAsync() - 不工作 Windows 10 手机

Launcher.QueryUriSupportAsync() - Not Working Windows 10 mobile

我正在尝试查找 Facebook 应用程序是否安装在 Windows 10 移动设备上,以便可以通过 Facebook 应用程序而不是 WebAuthenticationBroker 处理身份验证。

下面这行代码总是returnsLaunchQuerySupportStatus.NotSupported

LaunchQuerySupportStatus uriAvailability = await Launcher.QueryUriSupportAsync(new Uri("fbconnect://authorize?client_id=.........", UriKind.Absolute), LaunchQuerySupportType.Uri);

如果我绕过此检查并直接转到 Launcher.LaunchUriAsync,那么它会按预期打开应用程序。但是,我需要执行上述检查以支持桌面版本,但除了不支持之外,它没有给我任何响应。

有什么想法吗???

UDPATE
使用我自己的应用程序协议 myapp://something/123/ 时,我已经能够获得 LaunchQuerySupportStatus.Available。我还发现我需要添加 UriKind.Absolute 才能使其正常工作。

但是,fbconnect:// 协议仍然没有变化

更新 - 2
我现在已经试过了

var apps = await Launcher.FindUriSchemeHandlersAsync("fbconnect");

仍然没有结果。如果将我自己的应用程序的协议放在那里,那么我确实会得到结果。

如果我错过了这个检查步骤,那么肯定会安装 Facebook,然后启动器会工作并打开 Facebook 应用程序。

经过更详细的研究,问题似乎在于当前的 Facebook 应用程序是为 Windows Phone 8 构建的,并且是用 Silverlight 编写的。

当尝试对我和其他人编写的通用应用程序执行相同的操作时,上述两种方法都有效。

因为我正在为预发布写作,所以我只能希望 Facebook 在发布后不久有一个官方的 Windows 10 移动应用程序,这样它就可以按我的计划工作。

更新
我刚刚从 Microsoft 那里得知这个问题已在内部版本中得到解决,应该很快就会提供给 public。祈祷它会在 RTM 中用于移动设备。一旦我看到修复程序可用,我将更新它 - 原始问题中显示的代码将是正确的。