4

ブラウザをホストするプラットフォームで Flash がサポートされているかどうかを確認したいと思います。インストールされているかどうかを確認したくありません(その方法は知っています)。ユーザーに Flash プラグインのインストールを提案することが合理的かどうかを知りたいだけです。Flash をサポートしていない iOS デバイスからページを表示した場合、「Flash をインストールしてください」というメッセージを表示したくありません。その場合、コントロールの HTML5 バージョンを表示します。

ユーザーエージェントで iPad/iPhone/iPod をチェックして Apple を検出することが 1 つの解決策であることはわかっていますが、Apple 以外のものをチェックするライブラリはありますか?

4

2 に答える 2

3

次に、「Flash をインストールしてください」というテキストを表示する代わりに、コントロールの HTML5 バージョンを表示します。その HTML5 コードを「Flash をインストールしてください」の場所に配置します。


さらに、最初に HTML5 を使用してから、サポートされていない場合は Flash にフォールバックする方が簡単です (より推奨されます)。このようなもの:

<video src="html5_video_url">

    <!-- contents in here are only shown when video is not supported -->
    <embed src="flash_video_url"/>

</video>

また、UA 検出は変更できるため、お勧めできません。

于 2012-07-20T13:18:41.883 に答える
1

iThings とは別に、プレーヤーのバージョンとブラウザー、バージョンとシステムの一致、またはプレーヤーのバージョンとそれが実行されるシステムのバージョンにいくつかの問題があります。

問題は次のとおりです。Linux 用の 64 ビット バージョンはありません (デバッガーは存在せず、プレーヤのコードネームは Square でした。私の知る限り、これは 32 ビット アプリケーションのラッパーにすぎません)。

ベンダーがインストールを許可されていないソフトウェアを教えてくれないフリーシステムでは... 技術的には、NPAPI (Netscape Plugin API) とやり取りできるアプリケーションであれば、これらの API を実装するブラウザのプラグインとして使用できます。これらの API には、Netscape が実装したくない新しいバージョンがあります (実際には、Google Chrome 以外は実装していません)。このバージョンは Pepper Plugin API としても知られています。

残念ながら、JavaScript を使用して NPAPI の可用性をテストする方法はないようです。これがあれば、技術的にプラグインを表示できないすべてのブラウザー (Flash を含む) を取り除くことができます。それを行うための間接的な方法、インターフェイスが存在する場合に存在するブラウザ機能などがあるに違いないと思いますが、現時点では何も考えられません... もちろん、ActiveXもあります。したがって、アクションのコースは、最初に NPAPI をテストすることです。そうでない場合は、おそらく AX をテストし、そうでない場合は、ブラウザーで Flash を実行する方法はありません (残念ながら、Flash を保証するものではありません)。実際に動作します)。

于 2012-07-22T09:59:16.730 に答える