2013-07-02 10 views
7

Come verificare se la versione di flashPlayer s pepeFlash su runtime?as3 pepperFlash controllo su runtime

voglio gestire Stage3D modo diverso per pepperflash e diverso per la versione standard di Flash Player

Aggiornamento:

ho trovato una funzione javascript, quindi se qualcuno mi può aiutare a chiamare con ExternalInterface:

var checkForPepper = function() { 
if (navigator.plugins) { 
    for (var i=0, count = navigator.plugins.length; i < count; i++) { 
     var filename = navigator.plugins[i].filename; 
     if (filename === 'pepflashplayer.dll' || filename === 'PepperFlashPlayer.plugin') return true; 
    } 
} 
return false; 

risposta

1

Basta aggiornamento e la vostra risposta per JS più leggibili in AS3:

var js:XML = <js> 
     <![CDATA[ 
      function() { 
       if (navigator.plugins) { 
        for (var i=0, count = navigator.plugins.length; i < count; i++) { 
         var filename = navigator.plugins[i].filename; 
         if (filename === 'pepflashplayer.dll' || filename === 'PepperFlashPlayer.plugin') 
          return true; 
        } 
       } 
       return false; 
      } 
     ]]>   
     </js> 

     if(ExternalInterface.available) 
     { 
      var isPepper:Boolean = ExternalInterface.call(js); 
      ExternalInterface.call("alert('isPepper = "+isPepper+"')"); 
     } 
+0

thx, cercherò subito – ThanksBro

0

ecco come:

 _hasPepperFlash = String(ExternalInterface.call("function() {if (navigator.plugins) {for (var i = 0, count = navigator.plugins.length; i < count; i++){var filename = navigator.plugins[i].filename; if (filename === 'pepflashplayer.dll' || filename === 'PepperFlashPlayer.plugin') return true; } } return false;} ")) 

Attenzione che deve essere in una linea tutto o non funzionerà. Almeno nel mio IDE IntelliJ