2011-05-18 4 views
6

Je développe une application Adobe Flex.Flex, obtention de l'identifiant USB du périphérique USB branché

Je dois détecter les dispositifs GPS lorsqu'ils sont branchés. Actuellement, c'est une mauvaise détection basée sur l'heuristique qui est utilisée (elle essaie de trouver des fichiers/répertoires spécifiques). Il utilise StorageVolumeInfo pour découvrir les périphériques connectés. Par conséquent, j'aimerais savoir s'il existe un moyen d'obtenir l'identifiant USB avec Flex.

Thx à l'avance

Répondre

5

En ce moment, non, vous ne pouvez pas le faire en mode natif dans l'air. Vous pouvez cependant utiliser une application utilitaire tierce pour communiquer avec le périphérique (Java, C++, etc.). Les commandes de périphériques USB Air arriveront éventuellement après Adobe a fait une démonstration de l'utilisation d'un contrôleur Xbox pour jouer à un jeu.

J'ai essayé de chercher une date de sortie, mais en vain.

+0

Thx :) (Même si c'est une mauvaise nouvelle.) – Tangui

+0

Je ne dirais pas de mauvaises nouvelles. Ce n'est pas impossible, ce n'est pas facile actuellement et sera rendu disponible nativement plus tard :) –

1

Je crois que la fonctionnalité que vous recherchez est disponible uniquement dans AIR. L'exemple suivant montre tous les noms de périphériques actuellement connectés au démarrage et ajoute également un écouteur d'événements pour les périphériques connectés au moment de l'exécution.

 import mx.events.FlexEvent; 

     private function onCreationComplete(e:FlexEvent):void{ 
      StorageVolumeInfo.storageVolumeInfo.addEventListener(StorageVolumeChangeEvent.STORAGE_VOLUME_MOUNT,onMount); 
      showCurrentlyConnectedVolumes(); 

     } 

     private function onMount(event:StorageVolumeChangeEvent):void{ 
      trace(event.storageVolume.name); 
     } 

     private function showCurrentlyConnectedVolumes():void{ 
      for each(var volume:StorageVolume in StorageVolumeInfo.storageVolumeInfo.getStorageVolumes()){ 
       trace(volume.name); 
      } 
     } 

Vive

+0

Comme indiqué, j'ai déjà accès aux périphériques branchés. Pourtant, j'ai besoin d'obtenir l'identifiant USB (comme lorsque vous tapez lsusb sous Linux). – Tangui

+1

Dans ce cas, je suppose que vous devrez recourir à des solutions plus drastiques. Je ne connais pas beaucoup de c/C++ mais vous pouvez essayer d'obtenir plus d'informations via Alchemy http://labs.adobe.com/technologies/alchemy/ C'est une solution particulièrement intéressante parce que le code d'alchimie sera compilé à fichier .swc que vous pouvez intégrer dans votre application. –

Questions connexes