因此对于我们的项目,我们在Windows应用商店中提供了此应用.这是一个Unity UWP应用.在某个时候,我们要检查程序X是否已安装在用户的计算机上.如果是,我们要启动它,如果不是,我们想为用户提供下载链接(或其他).
但是,我们要启动的应用程序是Unity独立应用程序.用户可以从我们的网站下载它.
我尝试了很多事情. PlayerPrefs,注册检查等.所有这些都不起作用.事实证明,注册检查可以很好地工作,但仅在独立应用程序之间有效. UWP应用似乎无权访问该注册器.
这让我想到了URI等.但是,对于所有这些,我是一个完全的菜鸟,而且我不知道如何开始或在哪里开始.任何帮助或指导都将受到高度赞赏.
理想方案:
用户从Windows应用商店下载我们的应用
>用户单击我们应用程序中的按钮
>我们的应用检查用户系统中的App X
>如果已安装App X,我们将启动它,否则,我们将执行其他操作
> App X打开.
解决方法:
UWP应用程序不能直接与独立的Unity应用程序交互.
您可以编写另一个独立的桌面“帮助程序”应用程序,该应用程序执行检查注册表并启动Unity应用程序的实际工作,然后将该“帮助程序”应用程序作为UWP软件包的一部分并将该软件包重新提交给Windows应用商店.
保持“助手”应用程序尽可能简单,使其没有其他依赖项.
用户单击按钮时,请使用FullTrustProcessLauncher启动帮助程序.
为了使用FullTrustProcessLauncher,UWP应用程序需要具有runFullTrust功能.
runFullTrust是受限制的容量,当您将应用程序提交到Windows应用商店时,需要您指定为什么需要该功能的原因.有关更多详细信息,请参见this answer.