3

当用户单击我的应用程序中的按钮时,是否可以启动不同的 Windows 商店应用程序?

4

3 回答 3

4

是的,您可以从您的应用程序(例如 Bing 地图)启动其他 Windows 应用商店应用程序。Maps 应用程序支持协议激活,这意味着您可以使用特殊的 url 语法从您自己的 Windows Store 应用程序中以编程方式调用 Maps 应用程序。

Windows 允许应用注册成为某个 URI 方案名称的默认处理程序。桌面应用程序和 Windows 应用商店应用程序都可以注册为 URI 方案名称的默认处理程序。您可以查看http://devhammer.net/blog/w8wil-6-leverage-the-maps-app-for-location-based-features来了解这个想法。

地图应用程序 uri 方案的官方文档,包括所有可用参数,可在以下位置找到:http: //msdn.microsoft.com/en-us/library/windows/apps/jj635237.aspx

于 2012-11-19T09:46:17.033 回答
2

遗憾的是,这是不可能的,因为不允许 Win-RT 应用程序启动其他应用程序。

有一种解决方法可以让您打开特定应用程序,如果它已注册为使用特定 URL 打开:

http://msdn.microsoft.com/en-us/library/windowsphone/develop/jj206987(v=vs.105).aspx

我不确定它是否会有很大帮助,但您可以打开商店并使用以下命令转到特定的商店应用页面:

Launcher.LaunchUriAsync(new Uri("ms-windows-store:PDP?PFN=" + storeID), a);

storeID 看起来像 '30416[AppName].[AppName]_94hq21bnosq1p' 并且可以从网上商店源代码中获取:

http://apps.microsoft.com/webpdp/en-gb/app/Fhotoroom/4d91298a-07cb-40fb-aecc-4cb5615d53c1

于 2012-11-11T14:47:15.450 回答
1

是的,可以从您的应用程序启动任何现有的 Windows 商店应用程序,您只需导航到http://www.windowsphone.com/url-of-existing-app即可。这将首先在浏览器中打开应用程序,而不是自动在商店本身中打开。

在按钮单击事件中编写以下代码

private void AnotherApp(object sender, RoutedEventArgs e)
    {
        WebBrowserTask task = new WebBrowserTask();
        task.URL = "http://www.windowsphone.com/en-us/store/app/all-base-to-all-base-converter/869cea08-3a99-4218-8d4f-a631c2fb8f53";
        task.Show();
    }

应用程序将首先在浏览器中打开应用程序,然后自动将控件转发到它的商店。

于 2014-04-19T11:29:02.390 回答