使用MonoTouch访问WebScriptObject

时间:2012-03-22 22:02:29

标签: c# ios uiwebview webkit xamarin.ios

我正在使用MonoTouch& amp;构建一个像手机一样的解决方案。 UIWebView。我想通过Javascript公开一些C#方法。我知道您可以使用WebScriptObject在Objective C中执行此操作,但我无法看到MonoTouch API中显示的位置。

有没有办法访问WebScriptObject

3 个答案:

答案 0 :(得分:2)

  

有没有办法访问WebScriptObject?

不,WebScriptObject不是MonoTouch的一部分(就像它在MonoMac中的一部分),因为WebKit是一个框架,is not part的iOS。

UIWebView允许您评估JavaScript代码,但我不确定(从未尝试过,甚至没有查找过)如何从那里返回C#方法。

答案 1 :(得分:1)

正如Sebastian的答案的必然结果一样,您总是可以创建一个简单的绑定,允许您的UIWebView通过HttpListener与C#代码交互:

http://yobriefca.se/blog/2011/12/05/rolling-your-own-phonegap-with-monotouch/

你也可以使用iOS背景线程通过Javascript或C#与其他应用程序进行交互,使用HttpListener:

http://blog.devnos.com/remember-when-apps-didnt-talk-to-each-other

答案 2 :(得分:1)

作为对此的一些额外的答案......

  • 您可以访问javascriptcore - 但您必须解决此
  • 的绑定问题
  • 有些人设法使用Jint(0.9或更旧 - 没有Reflection.Emit JIT代码)