我们知道在Unity中可以用AndroidJavaObject实例化Java类,并掉Java的方法。如果要Java异步返回消息可以使用UnitySendMessage。这里说明使用interface来异步返回消息。
1.在java类里声明个接口内部类,当然返在类外面也是可以的。
public interface DetailListener
{
void OnAppDetail(String infor);
}
2.在Unity里也声明个类,继承自AndroidJavaProxy.
public sealed class DetailListener : AndroidJavaProxy
{
public DetailListener() : base("<PACKAGE.CLASS>$DetailListener")
{
}
public void OnAppDetail(string infor)
{
Debug.Log("infor");
}
}
然后将Unity的DetailListener 实例传递到Java当中,当Java需要回调的时候就可以响应到Unity当中
if(mDetailListener!=null)mDetailListener.OnAppDetail("java to unity message.");