iOS与Unity 3D的交互
2016-12-17 本文已影响174人
走向菜鸟的菜鸟
前言: 新手接触,大神勿喷,希望多多指教.
iOS与Unity 3D的交互有两种方式:
第一种:iOS调用Unity 3D提供的方法UnitySendMessage.第一个参数是 unity脚本挂载的gameobject 第二个参数是 unity提供的方法名 第三个参数是参数
UnitySendMessage(<#const char *obj#>, <#const char *method#>, <#const char *msg#>)
第二种:Unity 3D调用iOS的方法.此时需将OC配置成C作为中间桥梁(此代码写可在.m的最下部@end之后)
@interface SpeechRecognizer ()
{
IFlySpeechRecognizer *_iflySpeechRecognizer;
}
@end
@implementation SpeechRecognizer
// 方法内写unity调用的时候应该走的代码
- (void)initalVoice {
_iflySpeechRecognizer = [[IFlySpeechRecognizer alloc] init];
}
@end
SpeechRecognizer *speech = NULL;
#if defined (__cplusplus)
extern "C"
{
#endif
// 初始化 InitalSpeechRecognition为提供给Unity调用的方法名
// initalVoice为自己定的需要unity去调用的方法
void InitalSpeechRecognition() {
if (speech == NULL) {
speech = [[SpeechRecognizer alloc] init];
}
[speech initalVoice];
}
#if defined (__cplusplus)
}
#endif