我在使用Template 10的二级瓷砖时遇到了一些问题。
首先是我在我正在使用的版本(1.1.12)中找不到SecondaryTileService,即使源位于GitHub存储库中并且看起来很旧。我尝试过搜索模板10服务nuget包但找不到。
为了使用辅助磁贴服务,我已将源代码复制到我的应用程序..
我遇到的第二个问题是如何处理辅助磁贴的启动。我似乎没有找到任何关于此的文件。
在非Template 10应用程序中,我可以覆盖App.xaml.cs中的OnLaunched方法,并使用LaunchActivatedEventArgs参数的TileId和Arguments属性来处理相关视图的导航。
但是Template 10 BootStrapper密封了OnLaunched方法,并没有提供明显提供启动参数的任何内容。
答案 0 :(得分:1)
GitHub中的模板10服务未包含在任何Nuget包中,原因不明。
在模板10中处理从辅助磁贴启动是一个相当模糊的过程。
首先,在OnStartAsync
方法中,使用DetermineStartCause
的{{1}}方法获取Bootstrapper
枚举值。如果值为AdditionalKinds
,则应用程序是从辅助磁贴启动的。然后,您可以将AdditionalKinds.SecondaryTile
参数转换为IActivatedEventArgs
,其中包含TileId和启动参数。
示例实施:
LaunchActivatedEventArgs
答案 1 :(得分:0)
为了使用辅助磁贴服务,我已将源代码复制到我的应用程序..
我认为您使用此SecondaryTileService
做了正确的事情,还有其他服务,例如LocationService
,它们只是不包含在模板10的Nuget包中。< / p>
我遇到的第二个问题是如何处理辅助磁贴的启动。我似乎没有任何关于此的文件。
您可以参考&#34;引导程序&#34;本博客的一部分:Template10: a new template to create Universal Windows apps – The basics。
在OnStartAsync()
方法中,您可以从辅助磁贴处理启动。
核心是OnStartAsync()方法,它是应用程序的起点,无论激活方案如何。无论是使用主磁贴,辅助磁贴还是吐司通知打开应用程序,都将始终调用OnStartAsync()方法,让您作为开发人员处理主导航。