如何确定我是否正在运行侧载应用程序或商店安装的应用程序?

时间:2013-02-28 20:12:21

标签: windows-store-apps

为了测试,知道我从Visual Studio运行会很好。我可以看到调试器是否已连接,但如果我使用CTRL + F5运行则这还不够。

以下是如何查看调试器的附件:

if (Debugger.IsAttached) Foo();

但我的问题是,我想知道是否有办法询问当前的应用是否来自商店。所以,我想到了安装文件夹,但它们完全相同。然后我想到了这个:

Windows.ApplicationModel.Package.Current.Id;

但即使对于正在调试的应用程序,这似乎也已完全实现。所以,我很难过。有谁知道我们是否可以确定该应用是否来自商店?

2 个答案:

答案 0 :(得分:2)

虽然肯定不是最优雅的解决方案,而且可能有更好的解决方案,但您可以查看

Package.Current.InstalledLocation.Path
如果您正在运行在本地计算机上开发的调试版本而不是侧面加载,那么您将在文件夹路径中使用/ debug /。

答案 1 :(得分:0)

在Windows 10应用程序中(这也应该在8.1中提供),您可以检查当前程序包上的IsDevelopmentMode属性。

Package.Current.IsDevelopmentMode

这应该告诉你包是否是以开发模式安装的(我相信它是' side-loaded'的代名词)。

参见https://msdn.microsoft.com/en-us/library/windows/apps/windows.applicationmodel.package.isdevelopmentmode.aspx 了解更多信息。