我有两个 swf 文件。第一个(我们称之为A)一个是一种带有登录UI等的宿主应用程序。第二个(B)是由Unity生成的。因此,A 在用户加载并启动 B 的一些操作之后。此时我可以轻松地从 A (C#) 调用 B (AS3) 方法并且它可以工作,但我不能从 B (AS3) 调用 A (C#) 方法. 官方文档页面上没有关于这个方向通信的任何信息。
所以,我试过这种方式,但它对我不起作用。所以我做了什么:
在 C#(项目 A)方面,我创建了 FlashCB.cs:
using UnityEngine;
using System.Collections;
[NotRenamed]
public class FlashCB {
public static int Func() {
Debug.Log("Unity function called with message. ");
return 10;
}
}
在 AS3(项目 B)端 NetTest.as:
import global.FlashCB;
[...]
public function onLoadComplete( evt : Event ) : void
{
[...]
var res:int = FlashCB.Func();
}
最后,它因以下错误而崩溃:
[Fault] exception, information=ReferenceError: Error #1065: Variable FlashCB is not defined.
难道我做错了什么?