【问题标题】:Unity Crash on MacOS when the join method is invoked (Agora.io)调用 join 方法时,MacOS 上的 Unity 崩溃 (Agora.io)
【发布时间】:2020-04-16 17:07:01
【问题描述】:

我从资产商店下载了 agora.io 视频 sdk 资产,并将其导入到一个新项目中。在演示“SceneHome”场景中,我输入了 api id。单击播放,一旦我单击“加入”按钮,Unity 就会崩溃。据我所知,崩溃发生在

app.join(field.text);

TestHome.cs 脚本中的行(第 86 行)。

我在 2019.3.2f1 和 2020.1.0b5 测试过。结果是一样的。 操作系统为 Catalina 10.15.4。

该演示适用于 Windows。

我遵循本教程:https://medium.com/@jake_agora.io/mac-run-video-chat-within-your-unity-application-e001091db62f,但使用 x86_64 dll 而不是 x86

有人知道这是怎么回事吗?或者我应该从哪里开始?

另一个教程,这个来自 Agora:

https://www.agora.io/en/blog/run-video-chat-within-your-unity-application-mac

【问题讨论】:

  • 为什么有人会否决这个关键问题?
  • @Fattie 根本没有投票,但添加相应的代码可能会很好,这样我们就不必为了查看它而导入包;)
  • 你好@derHugo!希望你一切都好。嗯,代码行就在那儿(我刚刚编辑了它,所以它被突出显示)
  • @Fattie yes thx ;) 但我的意思是例如app 是什么? join 是做什么的?还有什么是field(虽然它看起来像UI.InputField)?
  • @derHugo 这个问题是关于一个特定的资产,Agora.io。代码来自资产中的示例。我可能应该指定资产的确切版本,以便人们可以下载并参考...

标签: macos unity3d agora.io


【解决方案1】:

这可能是由于在 Unity Editor 项目设置中缺少摄像头和麦克风使用情况造成的。如果是这种情况,请告诉我们。 (我看到你也在 Slack 频道,让我们继续对话吧。)。

对于不知道的人,Agora Developer Community - Unity Chat channel is here :)

【讨论】:

  • 嗨 Rick,感谢您的关键提示。你真的需要在教程中添加它:agora.io/en/blog/…
  • 该指令包含在与 SDK 捆绑的 README 文件中。希望你能利用它。
  • 好一个瑞克 - 这是有用的信息。 (我第一次阅读自述文件 :))我发送了超过 250 个赏金点 :)
  • 这应该是市场的正确答案,非常感谢
【解决方案2】:

正如herve nau 指出的那样,问题在于Unity 没有使用摄像头或麦克风的权限。解决方案应该有效。或者,这是添加 launzone 所述权限的另一种方法:

1) 禁用 SIP:进入恢复模式(当您使用时按住 CMD+R

重新启动您的 Mac)不要害怕,我们没有做任何疯狂的事情。

2) 之后打开终端(应该可以从其中一个访问 顶部的菜单)输入“csrutil disable”并回车。然后重启 你的 Mac 正常。

3) 打开终端并输入:“sqlite3 ~/Library/Application\ Support/com.apple.TCC/TCC.db”并回车

4) 对于麦克风访问,输入:“INSERT INTO access VALUES('kTCCServiceMicrophone','com.unity3d.unityhub',0,1,1,NULL,NULL,NULL,'UNUSED',NULL,0,1541440109);" 然后按回车

对于相机,输入:“INSERT INTO 访问 VALUES('kTCCServiceCamera','com.unity3d.unityhub',0,1,1,NULL,NULL,NULL,'UNUSED',NULL,0,1541440109);" 然后按回车

6) 检查您的 SystemPreferences/Security&Privacy > unity hub 应该 现在出现在麦克风和摄像头中

7) 再次以恢复模式重新启动 (CMD+R),再次打开终端,输入 在:“csrutil enable”并回车,再次启用 SIP

8) 正常重启即可享受!

Here is the full thread。我希望它可以帮助某人:)

【讨论】:

  • 哇,这太老套了。感谢分享信息!
【解决方案3】:

检查是否与运行 Unity Hub 的 macOS 上的网络摄像头注册问题无关。修复相机,不确定是否与您的问题有关:删除 Unity Hub 应用程序,然后直接从 Unity 应用程序打开项目。将 Unity 应用程序重新定位到另一个文件夹以强制网络摄像头使用安全注册也可能很有用。

在这里进行了测试,Unity 2019.3.11.f1,使用演示应用程序,集线器处于活动状态 -> 按下加入按钮时崩溃,是否如上所述移除集线器,重新运行相同的演示,并且在此级别不再崩溃.在 Catalina 10.15.2 上运行。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-02-20
    • 2021-08-09
    • 2018-09-04
    • 2020-02-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多