簡體   English   中英

如何快速調用UnitySendMessage方法?

[英]How to call UnitySendMessage method in swift?

我嘗試使用快速語言在我的iOS Framework項目中調用UnitySendMessage方法,但它顯示此錯誤-

使用未解決的標識符“ UnitySendMessage”

這是我的swift文件的代碼段-

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!");
    }
}

卡在這里,你能告訴我我在想什么嗎?

在這里檢查答案。

UnitySendMessage在libiPhone-lib.a中,據我所知,Unity成員不包含任何聲明它的標頭。

我剛剛在代碼中添加了以下內容

extern void UnitySendMessage(const char *,const char *,const char *);

如果查看生成的AppController.mm,它們基本上對各種UnitySendXXX函數執行相同的操作,而不是包含標題。

話雖如此,雖然您將能夠構建一個調用UnitySendMessage的庫,但除非將其鏈接到Unity項目中,否則該庫可能無法工作,因為UnitySendMessage實際需要的不僅僅是libiPhone-lib.a。

只需將此代碼添加到您的Bridging-Header.h文件中:

#import "UnityInterface.h"

確保您的文件位於從Unity構建的XCode項目中,因此存在由unity創建的實際UnityInterface文件。

為我工作:)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM