Flex编写安卓实现上传图片到服务器

来源:互联网 发布:华东电脑旗下华讯网络 编辑:程序博客网 时间:2024/04/30 09:39


imageupload.mxml:

<?xml version="1.0" encoding="utf-8"?>

<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" 
  xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx" applicationDPI="160">

<fx:Script>
<![CDATA[
import mx.core.FlexBitmap;
import mx.graphics.codec.JPEGEncoder;
import mx.messaging.FlexClient;
import mx.printing.FlexPrintJob;
import mx.rpc.events.FaultEvent;
import mx.rpc.events.ResultEvent;
import mx.utils.Base64Encoder;
private var filePath:String;

protected function button1_clickHandler(event:MouseEvent):void
{
// TODO Auto-generated method stub
//filePath="C:\\image\\PZ5YHR@S[2}A@WAI${BLMPU.jpg";
  //var _bitmap:Bitmap=new Bitmap(filePath);
 //var bitmapdata:BitmapData=new BitmapData(450,500);
//var bitmapData:BitmapData = new BitmapData(620,420);  
  var bitmapData:BitmapData = new BitmapData(image.width,image.height);  
var mat:Matrix=new Matrix(); 
//mat.scale(620/Flow.flowDesignerArea.width,420/Flow.flowDesignerArea.height); 
//mat.scale(1,1);
//bitmapData.draw(Flow.flowDesignerArea,mat); 
bitmapData.draw(image,mat);
var bitmap : Bitmap = new Bitmap(bitmapData);   

var jpg:JPEGEncoder = new JPEGEncoder();   
//var bitmapdata:BitmapData= new BitmapData(image.width,image.height); 
var ba:ByteArray = jpg.encode(bitmapData);  
var obj:Object= new Object(); 
var base64:Base64Encoder=new Base64Encoder();

obj.image= encodeURIComponent(filePath); 
var data:String= ba.toString(); 
//对流进行解码 

       
base64.encodeBytes(ba); 
   
obj.data= base64.toString();
var str:String=base64.toString();
webservice1.FileUploadImage (obj.data);
           
}

protected function webservice1_resultHandler(event:ResultEvent):void
{
// TODO Auto-generated method stub
lable1.text="上传成功";
}

protected function webservice1_faultHandler(event:FaultEvent):void
{
// TODO Auto-generated method stub
lable1.text="上传失败";
}

]]>
</fx:Script>

<fx:Declarations>
<!-- 将非可视元素(例如服务、值对象)放在此处 -->
<mx:WebService id="webservice1" result="webservice1_resultHandler(event)" fault="webservice1_faultHandler(event)" wsdl="http://218.201.156.93:6666/Service1.asmx?wsdl"/>
</fx:Declarations>
<s:Button x="11" y="193" width="72" height="28" label="上传" click="button1_clickHandler(event)"/>

<s:Label x="217" y="204" id="lable1"/>
<s:Image id="image" x="11" y="10" width="184" height="156" source="assets/1aef84585fc80cf29d8204eb.jpg"/>
<s:Button x="105" y="195" width="76" height="28" label="取消"/>

</s:Application>

java实现同样功能及webservice写法请参照:

http://blog.csdn.net/yu491290710/article/details/7900830

原创粉丝点击