【问题标题】:Minimize Windows 8 Store App while tracking location with GPS使用 GPS 跟踪位置时最小化 Windows 8 Store App
【发布时间】:2013-09-18 21:37:43
【问题描述】:

我正在开发 Metro 应用程序,但无法找到不显示该应用程序的方法。

我们最近为我们的现场代表部署了平板电脑,并且需要添加 GPS 跟踪功能。 GPS 在 Metro 库中更容易处理(就像 4 行代码与非托管代码相比),因此我们希望能够推送 Metro 应用程序,而不是花时间编写 winforms/wpf 桌面应用程序(平板电脑是完整版的窗口,所以如果我们不能隐藏地铁应用程序,这是一个选项。我觉得应该可以,因为开始屏幕磁贴会自动更新而无需打开主程序)。

在 WPF 中,使窗口不可见是相当简单的。我正在 wpf 中创建 Metro 应用程序,但它使用的库与桌面应用程序不同,我可能只是不知道该怎么做。

在桌面程序中,这相当简单。您可以按照以下方式进行操作:

<Page
x:Class = xxxxxxxx
..
Visibility="Hidden">

不幸的是,对于 Metro,我唯一的选择是折叠和可见的。 Collapsed 似乎没有任何效果,除非它只是因为它没有部署并且 Visual Studio 无论如何都显示它......

所以基本上我想弄清楚是否有一种方法可以最小化或隐藏启动程序,这样它就不会在每次到达现场代表时中断他们的位置。

【问题讨论】:

    标签: c# xaml windows-8 microsoft-metro modern-ui


    【解决方案1】:

    如果您真的想制作 Metro 应用程序并希望它“最小化”地运行,您需要查看 background task。要启动后台任务,用户仍然需要至少启动一次应用程序,此外后台任务还限制了它们运行的​​频率和时间。如果您无法在商店中发布 Windows 商店应用程序,那么部署它也会受到很多限制。

    如果您的目标只是通过 C# api 访问 GPS,GPS 实际上是您可以从桌面使用的 winRT api 之一,您可以找到有关如何从桌面访问 winRT api 的教程here

    Here是桌面可访问的winRT api的完整列表(您可以在其中找到Geoposition类)。

    【讨论】:

    • 谢谢 Benoit。我最初尝试将其作为桌面应用程序进行。我打开清单文件并添加了“8.0 并导入了窗口。但我遇到了类型化委托的问题。当我运行程序时,我收到类似于“此选项不可用的错误在语言中”(我相信使用 typedeventhandler)。我还没有看过教程,我现在就去做,它可能有一种不同的方式来公开 RT api,而不仅仅是改变 TargetPlatform。
    • 我相信它确实解决了这个问题!再次感谢!!来自教程:“如果您使用 Windows 运行时事件处理程序等映射类型,您可能还需要添加对 System.Runtime.WindowsRuntime.dll 的引用:”:)
    • 工作完美!!我错过了 System.Runtime.WindowsRuntime.dll 参考。添加了这一点,无需进一步更改。标记为答案并投票。如果我能为你做更多,我会:)
    【解决方案2】:

    您是否考虑过创建传输 GPS 的后台任务?后台任务可以在应用不运行的情况下运行。

    【讨论】:

      【解决方案3】:

      我不完全确定您是否可以代表用户自愿最小化 Windows 应用商店应用程序。我在 IntelliSense 中没有看到任何关于它的信息,我也没有在网上找到任何东西,也没有看到任何应用程序这样做。

      但是,请注意,在不使用 Windows 应用商店(旁加载)的情况下部署应用程序需要加入域的 Windows 8 企业版计算机或带有旁加载密钥的 Windows 8 Pro(每个密钥 30 美元,以至少一包的形式购买100.) 也许一个带有非托管代码的 WPF 应用程序值得花钱和努力。

      【讨论】:

      • 我们能够在具有 targetplatformversion 8.0 的桌面应用程序中获取它,并在 framework 4.5 文件夹中引用 System.Runtime.WindowsRuntime.dll。我们已经在使用 Enterprise,所以这不是问题 :) 我今天开始测试。即使您将 Geolocator 设置为更快更新(1 秒、15 秒等),它似乎也仅每 5-6 分钟更新一次,所以我可能会稍后再调查。到目前为止,经纬度在相当长的一段时间内都是相同的(在更新之前我有大约 30 个条目完全相同。但我也没有移动平板电脑)。不过,我希望最后 2-3 位数字会经常变化。
      猜你喜欢
      • 2016-10-01
      • 1970-01-01
      • 1970-01-01
      • 2014-09-10
      • 2016-11-14
      • 1970-01-01
      • 2011-02-21
      • 1970-01-01
      • 2016-07-01
      相关资源
      最近更新 更多