使用JS xamarin中的参数调用C#方法

时间:2017-03-22 17:49:37

标签: javascript c# android xamarin android-jsinterface

我试图用JS从参数中调用C#方法,但是我遇到了错误。

我正在使用Xamarin Android(不是Xamarin.Forms)

C#代码:

[JavascriptInterface]
[Export("test")]
public Java.Lang.String Test(Java.Lang.String hello)
{
    return hello;
}

JS代码:

var foo = GameBridge.test('foo');

错误:System.InvalidOperationException: Specified managed method 'Test' was not found. Signature: (Ljava/lang/String;)Ljava/lang/String;

Error screenshot

1 个答案:

答案 0 :(得分:0)

问题是c#方法的返回类型。它适用于返回类型为' void'。 下面的代码对我有用。

[JavascriptInterface]
[Export("test")]
public void Test(string hello)
{
    //to do work
}

我也在寻找处理Export / JavascriptInterface中的返回类型。