Xamarin Android comunicação bidirecional entre Javascript e C #

Estou desenvolvendo um aplicativo usando o Xamarin Android, que possui um WebView exibindo uma página da web. Eu quero implementar uma comunicação bidirecional entre Javascript do WebView para c #. Eu poderia chamar C # de Javascript usando esteligação. No entanto, não consegui encontrar uma maneira de enviar dados de volta de C # para Javascript. Existe uma maneira de enviar e receber dados nessa abordagem. Eu pensei que escrever um retorno de chamada em Javascript funcionaria, mas como acioná-lo a partir do código C #.

Agora, meu problema é como chamar o WebView a partir de uma classe de interface javascript. Eu tenho uma classe de interface Javascript conforme mencionadohttps://developer.xamarin.com/recipes/android/controls/webview/call_csharp_from_javascript/ namespace ScannerAndroid {classe pública JSInterface: Java.Lang.Object {Contexto de contexto; WebView webView;

    public JSInterface (Context context, WebView webView1)
    {
      this.context = context;
      this.webView = webView1;
    }

    [Export]
    [JavascriptInterface]
    public void ShowToast()
    {
      Toast.MakeText (context, "Hello from C#", ToastLength.Short).Show ();
      this.webView.LoadUrl ("javascript:callback('Hello from Android Native');");

    }   
  }
}

O código lança uma exceção na linha LoadUrl. java.lang.Throwable: Um método WebView foi chamado no thread 'Thread-891'. Todos os métodos do WebView devem ser chamados no mesmo encadeamento. (Looper Looper esperado (principal, número 1) {42ce58a0} chamado nulo, o Looper principal para o FYI é Looper (principal, número 1) {42ce58a0})

Agora estou lutando como referenciar o WebView a partir desta classe de interface de script Java

questionAnswers(1)

yourAnswerToTheQuestion