Unity4.3主题。
Unity iOS通过UnitySendMessage支持有限的本机到托管回调功能:
UnitySendMessage(“GameObjectName1”,“MethodName1”,“要发送的消息”);
已知限制:
2:对UnitySendMessage的调用是异步的,并且有一帧的延迟。
操作系统提示
从本机方法返回的字符串值应该是UTF-8编码并在堆上分配。对于像这样的字符串,Mono编组调用是免费的。
我很困惑。
它需要在堆上分配参数字符串,但第一个示例使用非堆字符串并且它在实际中工作。
而且,使用以下代码,单位接收器将获得"abc"
。
// native code, ran in sub thread
char* sz = (char*)malloc(4);
strcpy(sz, "abc");
UnitySendMessage("GameObjectName1", "MethodName1", sz);
strcpy(sz, "xyz");
同步消息是什么?
或者它是否在内部自动复制其参数(并且从不释放它们)?