我正在使用Lidgren,并且对于我制作的每种新类型的消息,我最终都编写了相同类型的代码.我正在创建一个实例NetOutgoingMessage,在其上运行各种赋值调用,然后在完成后发送它.创建和发送是一样的,所以我想写一个包装器来为我做这个,但它是一个sealed类,它不是IDisposable.我正在做的是:
NetOutgoingMessage om = server.CreateMessage();
om.Write(messageType);
om.Write(data1);
om.Write(data2);
server.SendMessage(om, server.Connections, NetDeliveryMethod.UnreliableSequenced, 0);
Run Code Online (Sandbox Code Playgroud)
我想做的事情如下:
using(AutoNetOutgoingMessage om(server, messageType, NetDeliveryMethod.UnreliableSequenced))
{
om.Write(data1);
om.Write(data2);
}
Run Code Online (Sandbox Code Playgroud)
显然我不能这样using做是否有另一种常见的方法,如果实现这样的功能?我不是在寻找一个非常复杂的解决方案,因为这只是关于我的可维护性,所以我没有问题为每条消息重复我的代码.但我很好奇是否有一个有趣的C#技巧我不知道为此.
我有一个Unity项目,我正在从APK切换到AAB(应用程序捆绑包)。以前,当我将其构建为APK时,Google Play控制台告诉我该APK是64位兼容的。
现在,我正在建立一个aab,我得到警告:
此版本不符合Google Play 64位要求。以下APK或应用捆绑包可用于64位设备,但它们只有32位本机代码
这里有许多类似的话题都在谈论如何遵循“学习更多”链接。在切换到应用程序捆绑包之前,我已经完成了所有工作以使我的应用程序符合64位标准。
其他线程讨论了Android Studio解决方案,我无法使用它,因为我的自动构建过程涉及从命令行使用Unity进行构建,因此它必须是Unity配置或崩溃。
我的期望是,应用程序捆绑应该是让Google为您构建更好的APK的热门新方法,但是似乎对aabs是否实际上符合64位标准感到困惑,这似乎使整个目标无法实现。
这是Unity问题吗?Google在应用程序捆绑方面是否存在系统错误,还是我缺少其他步骤?
64-bit unity-game-engine android-gradle-plugin google-play-console android-app-bundle