解析UWP统一脚本

问题描述:

之间复杂的数据类型,我一直试图找到一种UWP应用程序和统一的脚本之间发送复杂数据类型的解决方案。具体来说,我有我的初创app.xaml.cs,即保存在设备和通信Azure的应用服务在不同的数据的初始化,但我似乎无法使团结的可用信息。我如何在统一脚本中访问这些数据?解析UWP统一脚本

找遍四周,我来最接近的是ApplicationUri但不知道该如何分享UWP的信息。由于它与我在UWP并访问Windows.Storage.ApplicationDataContainer时似乎不是相同的文件夹。

任何人都可以解释我是如何从UWP特定的代码,以统一的脚本共享数据?

于任团结你的C#脚本,这样做:

public class MyBridge 
{ 
    public static object MyThingToStore; 
} 

现在,在App.xaml.cs,这样做:

MyBridge.MyThingToStore = ....; 

虽然我的例子显示了该怎么办呢对于基本的对象类型,它应该适用于大多数的东西。您也可以调用任何公共方法,但请注意,默认情况下您位于App.xaml.cs文件中的另一个线程中。如果你想在App.xaml.cs统一线程上执行代码,这样做:

appCallbacks.InvokeOnAppThread(() => 
{ 
    // Code to execute on Unity's main thread. 
}, false); 
+0

是,将工作,但需要静态变量。这不可能像使用appressources或seralize对象并在脚本中反序列化? 是否有可能去的脚本参考,以不使用静态变量 – JTIM

+0

有什么不好静,到底是什么?你可以使用GameObject.Find找到你的游戏对象,但对我来说这似乎是不必要的开销。 – Sunius

+0

静是在全球范围内,当多个用户访问代码,他们可以改变它,因此我对对象的状态没有保证。 'GameObject.Find'我认为这只能在统一脚本中使用,而不能在UWP代码中使用,因为'GameObject'永远不会被实例化。但有可能使用它? (我会尝试当我再次做这个项目时)。 – JTIM