最后我会给出项目源码
1.首先要明白unity与java之间的通信
unity调用java
// 直接调用java的静态方法, 我比较喜欢这种,简单明了
AndroidJavaClass klass = new AndroidJavaClass("com.unity.player.UnityInvokeAndroid");// 这是包名加你要调的类名
klass.CallStatic ("java方法名", "参数");
// 这种是调用非静态的方法, 参数是固定的
AndroidJavaClass klass = new AndroidJavaClass("com.unity3d.player.UnityPlayer");// 这里的这个包名必须要这样写
AndroidJavaObject jo = klass.GetStatic<AndroidJavaObject>("currentActivity");
jo.CallStatic ("java方法