我将如何在Unity项目中实现此服务/ dll?

时间:2019-05-01 22:13:19

标签: c# unity3d jnbridge

我正在使用名为JNBridge的服务,该服务用于为C#中使用的Java文件创建代理。该服务运行良好,我可以在Visual Studio 2017中轻松创建C#解决方案并从创建的代理中调用Java文件。我想在Unity项目中使用它,但是我不确定如何实现。

为了使其在Visual Studio 2017中正常工作,我首先创建了我要使用的代理并将其构建为dll。之后,我创建一个控制台应用程序并添加.dll作为引用(+服务需要的另一个.dll)。该服务还需要使用应用程序配置文件和非.NET .dll。这两个文件必须复制到build文件夹才能运行该应用程序。

当我尝试在Unity中重新创建此文件时,我将两个.NET .dll文件添加到Assets文件夹中,由于脚本从.dlls自动完成代码,因此似乎可以正常工作。但是,在Unity控制台中,我得到了FileNotFoundException。我也不知道如何处理非.NET dll和配置文件。

System.IO.FileNotFoundException: Could not load file or assembly 'DotNetToJavaProxies, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies.
File name: 'DotNetToJavaProxies, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null'
UnityEditor.EditorAssemblies:ProcessInitializeOnLoadAttributes()

我对Unity不那么熟悉,所以我问我能做到这一点吗?使用配置文件和.dll,并修复错误。

1 个答案:

答案 0 :(得分:1)

JNBridgePro不支持Unity,因此这不太可能起作用,尽管我不得不说我们从未尝试过。从新版本10开始,JNBridgePro确实支持.NET Framework以及.NET Core 3.0(在Windows和Linux上)。也许其中一种情况适合您。如果您还有其他问题,请联系JNBridge支持。