UIWebView のデフォルトのユーザー エージェントは、IIS が JavaScript をコンテンツ アイテムに送信しないようにしていました。解決策は、webview のユーザー エージェントをモバイル サファリのユーザー エージェントに手動で設定することです。
これを実現するコードは次のとおりです。
static public void SetUserAgent(UIWebView webview) {
var agent = "Mozilla/5.0 (iPad; CPU OS 6_0 like Mac OS X) AppleWebKit/536.26 (KHTML, like Gecko) Version/6.0 Mobile/10A403 Safari/8536.25";
var webDocumentView = new NSObject(Messaging.IntPtr_objc_msgSend(webview.Handle,
(new Selector("_documentView").Handle)));
var webView = webDocumentView.GetNativeField("_webView");
Messaging.void_objc_msgSend_IntPtr(webView.Handle,
(new Selector("setCustomUserAgent:")).Handle,
(new NSString(agent)).Handle);
}
この投稿は解決策を提供しました:
http://blog.reinforce-lab.com/2010/06/monotouchuiwebviewhowtochangeuseragent.html
次の投稿は機能しません。最初のリクエストのみをカスタマイズしますが、その後のブラウジングはカスタマイズしません。