如果没有,有没有办法在两个设备上构建它,独立于应用程序,然后从应用程序内部访问它?
我在这里看到的可能方法是拥有基于 API 的 2 部分基础设施。为此,您需要非常渴望至少学习一点网络,但它对未来有很多好处。
- Unity
- 应用程序作为网络客户端向后端服务器发送 API 调用(目前 Unity 支持 WebGL 和 UDP 低级传输 API https://docs.unity3d.com/Manual/UNetUsingTransport.html)。这些 API 调用可以采用数据交换格式的形式,如 JSON 或 XML。JSON 示例: ["signup", {"name": "SomeUser", "pass": "SomePass123"}]
- 接收呼叫的后端网络服务器客户端。用于写入和读取数据库的逻辑完全在此后端。它以某种数据交换格式的形式再次将结果发送回客户端。JSON 示例:["成功"]
这样,您的 Unity 应用程序将完全独立于任何类型的数据库。如果您将来想要更改数据库,您只需在后端重新处理数据库处理,同时重用相同的 API 调用!或者,你可以让多个基于不同技术的前端客户端应用访问同一 API。
现在,自定义后端的 Unity 和网络方法:
-
高级方法
对于纯粹的基于Unity的网络,您可以使用Photon(https://www.photonengine.com/en/PUN) 或 Unity 高级网络API(https://docs.unity3d.com/Manual/UNetUsingHLAPI.html)。
-
较低级别的方法
您可以基于完全不同的技术拥有后端太!在这种情况下,对于 Unity 客户端应用程序,请使用 Unity 的低级别网络传输层(https://docs.unity3d.com/Manual/UNetUsingTransport.html)和您的后端的网络层可以基于例如Python(例如Twisted),JavaScript(例如NodeJS)或任何其他。
-
甚至更低级别的方法
您可以更深入地使用 Unity 客户端的 .NET 套接字(但您需要拥有Unity Pro订阅,否则他们不会让您构建应用程序)和任何低级套接字库后端,例如 C# .NET 套接字,Python 套接字或位更高级别,套接字服务器。
警告!
请注意,如果要为浏览器移植应用,则必须使用 websocket,而不是 TCP/UDP。
不同后端的 Neo4j:
-
C# (.NET) - https://neo4j.com/developer/dotnet/
-
爪哇 - https://neo4j.com/developer/java/
-
JavaScript - https://neo4j.com/developer/javascript/
-
蟒蛇 - https://neo4j.com/developer/python/
不是真的,有一个旧版本的Neo4j移植到Android(Neo4j 1.5)。
否则,有一个适用于 Neo4j 的 Swift/iOS 驱动程序(当然还有 Java 驱动程序)。