Unity 与 iOS 交互的方式

Unity 通过 C 与 iOS 进行交互。这种方式其实也是iOS的代码作为Plugins in 的形式加入到Unity中去。

Unity 不能直接调用 C++ 的原因是 C++ 编译会有 Name mangling 问题。

Objective-C 可以与 C/C++ 进行混编。使用 C 代码封装对应的 Objective-C 代码,提供给 Unity 使用。

注意:建议 C 函数名加有特定意义的前缀,避免函数名冲突。

Unity 调用 iOS

示例代码展示了通过 Objective-C 进行加法计算的程序。

iOS 部分

MyPluginBridge.h

Unity 与 iOS 交互的方式_第1张图片

MyPluginBridge.m

iOS自身方法中建议使用通知的方式,以及NSUserDefaults等的方式传值

Unity 与 iOS 交互的方式_第2张图片

Unity 部分

Unity 与 iOS 交互的方式_第3张图片

iOS 向 Unity 发送通知

/**

调用Unity方法,退出Unity

@param 参数一为unity脚本挂载的gameobject

@param 参数二为unity脚本中要调用的方法名

@param 参数三为传递的数据,注意:传递的数据只能是char *类型

*/

你可能感兴趣的:(Unity 与 iOS 交互的方式)