スポンサードリンク


Flash PlayerがインストールされているかJavaScriptで判定する実験まとめ!

    Flash Player インストール

    利用しているブラウザにAdobe Flash Playerのプログラム、
    もしくはアドオンなどが有効になっているかチェックできるJavaScriptを調べてみました。

    フラッシュを媒体に運営しているサイトの場合、
    もしAdobe Flash Playerを導入していない閲覧者が訪問した際に通知してあげたいときがあるかもしれません。

     

    Adobe Flash Playerのインストール判定スクリプト

    以下のコードを実装することでFlash Playerのインストール有無のチェックが可能です。

     

    スポンサードリンク

     

    サンプルコードではhasFlashという変数にフラグを持たせて、
    各ブラウザに組み込まれているFlash Playerのプラグイン情報を取得し判定させています。

    IE以外のブラウザは基本的にActiveXObjectクラスから‘ShockwaveFlash.ShockwaveFlash’を取得できるので簡単に判定が行えます。

    問題はIEです。
    仕様が異なる為、まずActiveXObjectクラスを呼び出す時点でコンパイルエラーになります。

    そこでtry-catchを実装し、IEだけ別処理を行ないます。

    といってもファイル拡張子のMIME情報を利用しているだけで、
    navigator関数にmimeTypesを指定してFlash専用のMIMEを入れて呼び出しています。

    クライアントPCにアプリケーションとしてFlash Playerが登録されていればMIMEには値が返ってきます。

    もしここでundefinedになってしまった場合はFlash Playerがインストールされていないと見なせます。

     

    実験のまとめ

    JavaScriptで操作するFlashPlayerインストール判定のプログラムとなりますが、
    ブラウザ依存の大きいAPIでクライアント情報を取得するのはやや抵抗があります。

    一般的なブラウザなら動作するとは思いますが、
    Windowsパソコンでしか検証していないので他の環境では思わぬバグが出る可能性もあります。

    可能な限りスクリプトで強引に判定する処理を用いるのは現実的ではありません。
    ところがブラウザ上で判定する方法はこれくらいしかないのでご容赦を。

    なるべくJavaScriptでは処理を書きたくなかったりしますよね。

     

      The following two tabs change content below.
      よっき プロフィール画像
      パソコンが大好きな青年。職業はプログラマ/SE。 フリーランスとしてウェブサイトの構築・保守の業務に従事。専門学校とパソコンスクールで講師も担当。幼少期からパソコンが大好きで、趣味がそのまま仕事に転じた。自作PCの魅力に惹かれたのは学生時代の頃。自作PC専門ブログで、お得な情報を紹介しています。

      スポンサードリンク


      コメントを残す




      CAPTCHA


      このページの先頭へ