consegui pegar um exemplo na internet com o zxing, instalei no meu S2 Lite
e ele abre mas a imagem fica embaçada...o engraçado que do proprio
barcode.apk da zxing funcionou legal....

esse é o código..:

<?xml version="1.0" encoding="utf-8"?>
<s:View xmlns:fx="http://ns.adobe.com/mxml/2009";
 xmlns:s="library://ns.adobe.com/flex/spark" title="Scanner">
 <fx:Script>
 <![CDATA[
import mx.core.BitmapAsset;
 import com.google.zxing.common.BitMatrix;
import com.google.zxing.BarcodeFormat;
 import com.google.zxing.BinaryBitmap;
import com.google.zxing.BufferedImageLuminanceSource;
 import com.google.zxing.DecodeHintType;
import com.google.zxing.MultiFormatReader;
 import com.google.zxing.Result;
import com.google.zxing.client.result.ParsedResult;
 import com.google.zxing.client.result.ResultParser;
import com.google.zxing.common.GlobalHistogramBinarizer;
 import com.google.zxing.common.flexdatatypes.HashTable;
//import com.google.zxing.oned.EAN13Reader;
 //import com.google.zxing.qrcode.QRCodeReader;
 import flashx.textLayout.tlf_internal;
 protected var camera:Camera;
private var videoDisplay:Video = new Video(300, 300);
 private var myReader:MultiFormatReader;
private var bmd:BitmapData;
 private var cameraStarted:Boolean = false;
  protected function start_camera(event:MouseEvent):void
 {
myReader = new MultiFormatReader();
 if(!cameraStarted){
 if(Camera.isSupported) {
camera = Camera.getCamera();
 camera.setMode(320, 240, 15);
 videoDisplay.x = 295;
sv.addChild(videoDisplay);
 videoDisplay.attachCamera(camera);
 videoDisplay.rotation = 90;
 btn.label = "Scan Now";
lbl.text = "";
 cameraStarted = true;
} else {
 lbl.text = "No camera found";
}
 } else {
decodeSnapshot();
 }
}
 public function decodeSnapshot():void {
 lbl.text = "Checking...";
bmd = new BitmapData(300, 300);
 bmd.draw(videoDisplay, null, null, null, null, true);
videoDisplay.cacheAsBitmap = true;
 videoDisplay.cacheAsBitmapMatrix = new Matrix;
decodeBitmapData(bmd, 300, 300);
 bmd.dispose();
bmd=null;
 System.gc();
}
 public function decodeBitmapData(bmpd:BitmapData, width:int,
height:int):void {
 var lsource:BufferedImageLuminanceSource = new
BufferedImageLuminanceSource(bmpd);
 var bitmap:BinaryBitmap = new BinaryBitmap(new
GlobalHistogramBinarizer(lsource));
 var ht:HashTable = null;
ht = this.getAllHints();
 var res:Result = null;
 try {
res = myReader.decode(bitmap, ht);
 }
 catch (event:Error) {
 }
 if (res == null) {
videoDisplay.clear();
 lbl.text = "Nothing decoded";
} else {
 var parsedResult:ParsedResult = ResultParser.parseResult(res);
lbl.text = parsedResult.getDisplayResult();
 sv.removeChild(videoDisplay);
cameraStarted = false;
 btn.label = "Start Camera";
}
 }
 private function getAllHints():HashTable {
 var ht:HashTable = new HashTable;
//ht.Add(DecodeHintType.POSSIBLE_FORMATS, BarcodeFormat.EAN_13);
 return ht;
}
 ]]>
</fx:Script>
 <fx:Declarations>
<!-- Place non-visual elements (e.g., services, value objects) here -->
 </fx:Declarations>
<s:VGroup height="100%" width="100%" top="0" right="0" bottom="0" left="0"
horizontalAlign="center">
 <s:VGroup width="100%" height="300" horizontalAlign="center" id="vg">
 <s:SpriteVisualElement id="sv" width="300" height="200" />
 </s:VGroup>
<s:VGroup horizontalAlign="center" >
 <s:Button id="btn" width="220" height="36" label="Start Camera"
   click="start_camera(event)"/>
<s:Label id="lbl" x="106" y="291" text=""/>
 </s:VGroup>
</s:VGroup>
</s:View>

Qualquer dúvida estou a disposição.

*Robinho*
*Analista/Programador de Sistemas*
*"A fé em Deus nos faz crer no incrível, ver o invisível e realizar o
impossível."*


Em 27 de agosto de 2013 12:12, [email protected] <
[email protected]> escreveu:

> sim, procura pela biblioteca zxing, tem codigo em AS3 la que da pra usar
> tranquilo, e exemplos tb...
>
>
> Em 27 de agosto de 2013 12:09, Robinho de Morais <
> [email protected]> escreveu:
>
> Boa tarde Pessoal,
>>
>> Tenho como fazer uma leitura de código de barra pelo flexMobile ?
>>
>> isso tanto para Android quanto para iOS ?
>>
>> alguém tem exemplos ?
>>
>> --
>> --
>> Você recebeu esta mensagem porque está inscrito na lista "flexdev"
>> Para enviar uma mensagem, envie um e-mail para [email protected]
>> Para sair da lista, envie um email em branco para
>> [email protected]
>> Mais opções estão disponíveis em http://groups.google.com/group/flexdev
>> ---
>> Você está recebendo esta mensagem porque se inscreveu no grupo "flexdev"
>> dos Grupos do Google.
>> Para cancelar a inscrição neste grupo e parar de receber seus e-mails,
>> envie um e-mail para [email protected].
>> Para obter mais opções, acesse https://groups.google.com/groups/opt_out.
>>
>
>  --
> --
> Você recebeu esta mensagem porque está inscrito na lista "flexdev"
> Para enviar uma mensagem, envie um e-mail para [email protected]
> Para sair da lista, envie um email em branco para
> [email protected]
> Mais opções estão disponíveis em http://groups.google.com/group/flexdev
> ---
> Você está recebendo esta mensagem porque se inscreveu no grupo "flexdev"
> dos Grupos do Google.
> Para cancelar a inscrição neste grupo e parar de receber seus e-mails,
> envie um e-mail para [email protected].
> Para obter mais opções, acesse https://groups.google.com/groups/opt_out.
>

-- 
-- 
Você recebeu esta mensagem porque está inscrito na lista "flexdev"
Para enviar uma mensagem, envie um e-mail para [email protected]
Para sair da lista, envie um email em branco para 
[email protected]
Mais opções estão disponíveis em http://groups.google.com/group/flexdev
--- 
Você está recebendo esta mensagem porque se inscreveu no grupo "flexdev" dos 
Grupos do Google.
Para cancelar a inscrição neste grupo e parar de receber seus e-mails, envie um 
e-mail para [email protected].
Para obter mais opções, acesse https://groups.google.com/groups/opt_out.

Responder a