没有名称为&x27的静态方法;getMessage';签名=';()Ljava/lang/String';在Ljava.lang.Object类中;

没有名称为&x27的静态方法;getMessage';签名=';()Ljava/lang/String';在Ljava.lang.Object类中;,java,android,unity3d,plugins,Java,Android,Unity3d,Plugins,正在尝试将Unity插件写入Android Studio public class My_Plugin extends UnityPlayerActivity { private Context mContext; @Override protected void onCreate(Bundle bundle) { super.onCreate(bundle); mContext = this; TelephonyMan

正在尝试将Unity插件写入Android Studio

public class My_Plugin extends UnityPlayerActivity {

    private Context mContext;

    @Override
    protected void onCreate(Bundle bundle) {
        super.onCreate(bundle);
        mContext = this;
        TelephonyManager telephonyManager = ((TelephonyManager) mContext.getSystemService(Context.TELEPHONY_SERVICE));
        getMessage(telephonyManager.getSimOperatorName());
    }

   public static String getMessage(String message){
       return message;
   }
}
1类作为AAR库导入

在Unity中只有两行代码。见下

AndroidJavaClass pluginClass = new AndroidJavaClass("com.eppz.myplugin.My_Plugin");
        GetComponent<Text>().text = pluginClass.CallStatic<string>("getMessage");
AndroidJavaClass pluginClass=newandroidjavaclass(“com.eppz.myplugin.My_Plugin”);
GetComponent().text=pluginClass.CallStatic(“getMessage”);
和错误日志:

I/Unity: AndroidJavaException: java.lang.NoSuchMethodError: no static method with name='getMessage' signature='()Ljava/lang/String;' in class Ljava.lang.Object;
                                          java.lang.NoSuchMethodError: no static method with name='getMessage' signature='()Ljava/lang/String;' in class Ljava.lang.Object;
                                              at com.unity3d.player.ReflectionHelper.getMethodID(Unknown Source)
                                              at com.unity3d.player.UnityPlayer.nativeRender(Native Method)
                                              at com.unity3d.player.UnityPlayer.a(Unknown Source)
                                              at com.unity3d.player.UnityPlayer$c$1.handleMessage(Unknown Source)
                                              at android.os.Handler.dispatchMessage(Handler.java:98)
                                              at android.os.Looper.loop(Looper.java:135)
                                              at com.unity3d.player.UnityPlayer$c.run(Unknown Source)
                                            at UnityEngine.AndroidJNISafe.CheckException () [0x00000] in <filename unknown>:0 
                                            at UnityEngine.AndroidJNISafe.CallStaticObjectMethod (IntPtr clazz, IntPtr methodID, UnityEngine.jvalue[] args) [0x00000] in <filename unknown>:0 
                                            at UnityEngine.AndroidReflection.GetMethodMember (IntPtr jclass, System.String methodName, Syst
I/Unity:AndroidJavaException:java.lang.NoSuchMethodError:没有名为='getMessage'签名='()的静态方法Ljava/lang/String;'在Ljava.lang.Object类中;
java.lang.NoSuchMethodError:没有名为='getMessage'签名='()的静态方法Ljava/lang/String;'在Ljava.lang.Object类中;
位于com.unity3d.player.ReflectionHelper.getMethodID(未知源)
位于com.unity3d.player.UnityPlayer.nativeRender(本机方法)
在com.unity3d.player.UnityPlayer.a(未知来源)
在com.unity3d.player.UnityPlayer$c$1.handleMessage(未知来源)
位于android.os.Handler.dispatchMessage(Handler.java:98)
位于android.os.Looper.loop(Looper.java:135)
在com.unity3d.player.UnityPlayer$c.run(未知来源)
位于:0中的UnityEngine.AndroidJNISafe.CheckException()[0x00000]处
在:0中的UnityEngine.AndroidJNISafe.CallStaticObjectMethod(IntPtr clazz、IntPtr methodID、UnityEngine.jvalue[]args)[0x00000]处
在UnityEngine.AndroidReflection.GetMethodMember(IntPtr jclass,System.String methodName,Syst

来自Java的
getMessage
函数采用字符串参数。必须使用字符串参数调用它

pluginClass.CallStatic<string>("getMessage");
pluginClass.CallStatic(“getMessage”);
应该是:

pluginClass.CallStatic<string>("getMessage", "my parameter");
pluginClass.CallStatic(“getMessage”、“我的参数”);