我尝试使用快速语言在iOS Framework项目中调用UnitySendMessage方法,但显示此错误-
使用未解析的标识符'UnitySendMessage'
这是我的快速文件的代码片段-
import Foundation
@objc public class Example : NSObject{
@objc open static let shared = Example()
@objc open func printMsg(){
print("\(#function) is called with message:");
UnitySendMessage("CallbackTarget", "OnCallFromSwift", "Hello, Unity!");
}
}
被困在这里,你能告诉我我在想什么吗?
答案 0 :(得分:2)
选中答案here。
UnitySendMessage位于libiPhone-lib.a中,据我所知, Unity人员不包含任何声明它的标头。
我刚刚在代码中添加了以下内容
extern void UnitySendMessage(const char *,const char *,const char *);
如果您查看生成的AppController.mm,它们基本上会 各种UnitySendXXX函数的功能相同,而不是 包括标题。
话虽如此,您将能够建立一个调用 UnitySendMessage,除非链接,否则该库可能无法工作 进入Unity项目,因为UnitySendMessage将需要更多 不仅仅是libiPhone-lib.a真正起作用。
答案 1 :(得分:0)
只需将此代码添加到您的Bridging-Header.h文件中:
tts is null
确保您的文件位于从Unity构建的XCode项目中,因此存在由unity创建的实际UnityInterface文件。
为我工作:)