从c#调用JavaScript时出现UnathorizedException错误



我试图在PhoneGap (Cordova) Windows Phone 8应用程序中从c#调用JavaScript代码。如何从c#调用JavaScript - Cordova/PhoneGap

我应该能够访问Javascript部分的方法或执行硬编码的JS代码。但是,我遇到了这个错误:

System.IO类型的异常。在mscorlib.ni.dll中发生FileNotFoundException',并且在托管/本机边界之前未处理
类型为"System"的第一次机会异常。UnauthorizedAccessException'发生在System.Windows.ni.dll
类型为"System"的异常。unauthorizedaccesssexception '发生在System.Windows.ni.dll中,但未在用户代码中处理
类型为"System.Reflection"的第一次偶然异常。TargetInvocationException'在mscorlib.ni.dll中发生
System.Reflection类型的异常。TargetInvocationException'在mscorlib.ni.dll中发生,并且在托管/本机边界之前未处理
ProcessCommand中的ERROR:: Exception被调用的目标抛出。
在Object:: Example

上调用emethodnamed:: pluginMethod失败

我的代码是(是一个本地插件):

namespace WPCordovaClassLib.Cordova.Commands
{
    public class Example : Cordova.Commands.BaseCommand
    {
        public void pluginMethod(string options)
        {
          //The error is caused in this line
          PGWebBrowserHandler.getInstance().webView.CordovaBrowser
              .InvokeScript("eval", 
                            new string[] { "alert('Is it running?!');" });
        }
    }
}

PGWebBrowserHandler是前面提到的线程中给出的单例类的名称,以便从任何c#类访问CordovaBrowser

错误(FileNotFoundException,, UnauthorizedAccessException, TargetInvocationException)不是由InvokeScript()方法引起的,是之前获得webView,但调试时没有崩溃引起的,很多方法都导致了UnauthorizedAccessException.

我希望我的解释清楚。我一直在搜索它在谷歌,但我没有找到一个解决方案或变通的任何地方。有人知道这些问题的原因吗?从MainPage.cs调用invokeScript()方法也会导致异常。

试试下面的代码:

Dispatcher.BeginInvoke(
            () =>
            {
                PGWebBrowserHandler.getInstance().webView.CordovaBrowser
                    .InvokeScript("eval",
                      new string[] { "alert('Is it running?!');" });
            });

相关内容

  • 没有找到相关文章

最新更新