Unity调用安卓中的方法遇到的问题

时间:2023-12-25 13:25:55

最近在用U3D做一个简单的迷宫游戏,在项目中利用Unity制作游戏场景,在android中调用游戏场景,并在游戏结束后调用安卓方法,传递参数,退出游戏场景

查找网上资料,基本上Unity调用安卓的写法都是:

AndroidJavaClass jc = new AndroidJavaClass("com.unity3d.player.UnityPlayer");

AndroidJavaObject jo = jc.GetStatic<AndroidJavaObject>("currentActivity");

jo.Call("Method",arg);

参考这段代码,将android的包名和类型已经方法名修改成自己的之后,调用的时候发现报错:

AndroidJavaException: java.lang.NoSuchFieldError: no "Ljava/lang/Object;" field "currentActivity" in class "Lcom/xqlh/maze/activity/PlayActivity;" or its superclasses
java.lang.NoSuchFieldError: no "Ljava/lang/Object;" field "currentActivity" in class "Lcom/xqlh/maze/activity/PlayActivity;" or its superclasses

问题出现在“currentActivity” 但是网上很多资料都没有提及currentActivity是干嘛的,怎么来的,后来参考文章http://blog.csdn.net/m0_38096376/article/details/69567409

尝试在android中自己定义了一个currentActivity,解决了问题