首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >连接到Unity3d中的Unity3d集线器(用于Hololens)

连接到Unity3d中的Unity3d集线器(用于Hololens)
EN

Stack Overflow用户
提问于 2017-02-13 13:24:56
回答 1查看 1.9K关注 0票数 1

是否可以使用统一连接到SignalR服务器?

我正在制作一个Hololens应用程序(所以我构建到windows商店应用程序),它需要与SignalR集线器通信来发布信息。这个服务器已经制作好了,我只有URI、集线器名称和集线器接口端点。

当前问题:

  • SignalR框架需要统一当前的单一版本无法使用的.net 4.5。即使我设法获得引用,在.net将解决方案版本恢复到3.5统一子集(不包括.net 4.0中引入的异步功能)时,团结也无法将其构建到windows商店应用程序中。
  • https://github.com/robink-teleopti/SignalR在统一性上简单地爆发了错误。
  • https://github.com/jenyayel/SignalR.Client.20在线程、流、LongLength、HTTPWebRequest中缺乏很多定义。
  • Nivot.SignalR.Client.Net35使用了统一不理解的异步功能。
EN

回答 1

Stack Overflow用户

发布于 2017-02-13 14:03:16

您可以从UW应用程序连接到signalR,并使用网桥与团结应用程序进行通信:

(App/Web服务器)桥:

代码语言:javascript
复制
internal class UnityBridge
{
    private static UnityBridge _instance;

    private UnityBridge()
    {
        SelectHandler.SelectedHandler = CallExternal;
    }

    public static UnityBridge Create()
    {
        return _instance ?? (_instance = new UnityBridge());
    }

    private void CallExternal(string nameTag)
    {
        var conn = new HubConnection("http://xxx.azurewebsites.net");
        var proxy = conn.CreateHubProxy("MyHub");
        conn.Start().Wait();
        proxy.Invoke("Send", new EngineerAction {ExecutedAction = nameTag});
    }
}

(App/Web)在您的App.cs

代码语言:javascript
复制
    private AppCallbacks m_AppCallbacks;
    private UnityBridge _unityBridge;

    public App()
    {
        m_AppCallbacks = new AppCallbacks();

        // Allow clients of this class to append their own callbacks.
        AddAppCallbacks(m_AppCallbacks);
    }

    virtual protected void AddAppCallbacks(AppCallbacks appCallbacks)
    {
        _unityBridge = UnityBridge.Create();

    }

(统一游戏-客户机/服务器)和您的统一脚本:

代码语言:javascript
复制
public class SelectHandler : MonoBehaviour
{
    public delegate void SelectedHandlerDelegate(string nameTag);
    public static SelectedHandlerDelegate SelectedHandler;
    ....

        //call 
        UnityEngine.WSA.Application.InvokeOnUIThread(() => SelectedHandler("teststring"), false);
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42205155

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档