0

私はこのページをロードしようとしていますUIWebView

http://www.usopenofsurfing.com/on-demand/dvr

デスクトップブラウザでFlashを使用して動作しますが、iOSを検出するときの実装は異なります。Mobile Safariでは問題なく動作しますが、では動作しませんUIWebView

なぜですか?

実際のモバイルSafariとの間で報告されたユーザーエージェントを見てきましたUIWebView

UIWebView: iPad; CPU OS 5_1_1 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) Mobile/9B206
Safari: iPad; CPU OS 5_1_1 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) Version/5.1 Mobile/9B206 Safari/7534.48.3

フラッシュとiOSの機能を切り替えるjavascriptは、単に文字列ipad、iphone、またはipodを検索します。

var deviceAgent = navigator.userAgent.toLowerCase();
var is_iOS = deviceAgent.match(/(iphone|ipod|ipad)/);

したがって、ユーザーエージェントは、FlashとiOSのどちらかを選択した場合にのみ機能し、適切に実行されているように見えます。

4

1 に答える 1

0

ここでは Cookie が問題になる可能性があります。

私の理解では、Webview からの最初のリクエストで Cookie を送信することはできませんが、最初のリクエストが成功した場合に限り、同じ URL への後続のリクエストで Cookie を送信できます。

これにより、URL への最初の要求で認証するために Cookie を必要とする認証サービスで問題が発生します。

このスタックの記事とこのアップルのドキュメントも参照してください。

于 2013-01-22T20:00:12.750 に答える