【问题标题】:Invoking share charm programatically in a Unity game在 Unity 游戏中以编程方式调用分享魅力
【发布时间】:2015-04-06 14:16:52
【问题描述】:

我正在使用 Unity 4.6 为 windows 商店/手机开发游戏,并希望使用分享魅力在 facebook 和其他平台上分享分数。我的场景中有一个按钮,但我无法通过它以编程方式调用共享魅力。我尝试使用

DataTransferManager.ShowShareUI();

但它给了我以下错误:

activating a single-threaded class from mta is not supported

谁能告诉我如何实现我想要的功能?

【问题讨论】:

    标签: windows-phone-8 unity3d windows-store-apps


    【解决方案1】:

    对于 Windows 应用商店(包括 Windows Phone 8.1 运行时)应用,您可以使用 UnityEngine.WSA.ApplicationInvokeOnUIThreadTryInvokeOnUIThread 方法调用 UI 线程上的委托,您可以从中调用 Windows 运行时 UI 方法,例如作为 ShowShareUI:

    public void OnClick()
    {
        UnityEngine.WSA.Application.InvokeOnUIThread(() =>
        {
            Debug.Log("On UI Thread");
    #if NETFX_CORE
            Windows.ApplicationModel.DataTransfer.DataTransferManager.ShowShareUI();
    #endif
        }, false);
    }
    

    如果您专门针对 Windows Phone 8,您可能需要一个插件来编组到 UI 线程,因为 UnityEngine.WSA 不可用。

    【讨论】:

      猜你喜欢
      • 2012-04-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-08-15
      • 2016-08-09
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多