2011-02-03 8 views
4

私たちのMacデスクトップアプリケーションは、WebKitフレームワークからWebViewコンポーネントを埋め込みます。 WebViewの内部には、UIをレンダリングするFlash Playerがあります。SafariとWebViewコンポーネントでプラグインのセットが異なるのはなぜですか?

私の知る限り、SafariはWebKit/WebViewを使用してコンテンツを表示します。

私たちは、Safariがアプリケーションのホストと同じWebViewコンポーネントをホストすることを期待していました。 つまり、FlashプラグインがSafariにインストールされている場合、WebViewでFlashを使用できるようになります。

残念ながら、これは私たちのユーザーにとって間違っているようです。

Macでは、FlashはSafariで完璧に動作しますが、WebViewではFlash Playerの代わりに「Missing Plugin」メッセージが表示されます。

Mac OS X 10.5.8

これはどうしてですか?

私たちのアプリケーションが使用しているものとは異なるWebView(またはWebView設定)を使用することは可能ですか?

問題の原因を見つけるのに役立つアドバイスをいただきありがとうございます。

SafariとWebView用にインストールされた一連のプラグインを印刷する小さなスクリプトを実行するようユーザーに求めました。 Safariには、Flash Playerを含む約20個のプラグインがインストールされています。 WebViewには3つのプラグインしかインストールされていません。 ここで彼らは、次のとおりです。

Java Plug-In 2 for NPAPI Browsers 
Switchable Java Plug-In for WebKit 
RealPlayer Plugin.plugin 

パシャ

答えて

1

は、私たちのアプリケーションが使用しているとは異なるWebViewの(またはWebViewの設定)を使用することは可能Safariのですか?

はい、非常にそうです。 WebViewは単なるクラスであり、Safariはそのようなクラスのインスタンスを1つ使用しますが、これはプラグイン用に変更されません。ブラウザ用のFlashプラグインがインストールされています(Safariはインストールされている場所を追跡し、必要に応じてそれを探します)。プラグインがインストールされるたびにCocoaのWebViewが変更されることはなく、あらゆる種類の問題につながる可能性があります。

+0

RealPlayerでは何が行われているのかよく分かりませんが、Javaプラグインは下位レベルで統合されているため、CocoaのWebViewでこれらのプラグインが使用されます。 – FeifanZ

+0

正直言って、私はあなたがFlash-HTML5から離れることをお勧めします.HTML5ははるかに優れた選択肢であり、(この質問で証明されているように)はるかにサポートされています。消費者としては、Flashを利用するとすべてのサービスから離れることがわかります。私はすべてのブラウザにFlashブロッカーをインストールしています。しかし、それは私の個人的な意見です。 :) – FeifanZ

関連する問題