新手求教各位:    我在使用手机拍摄图片后上传到服务器上时,上传的速度非常的慢,于是我牺牲了图片的质量,将图片固定为320*240大小,图片的大小大概为100KB左右,但上传的速度仍然不理想,无论是用WIFI还是3G网络都需要至少1分半的时间。    求教以下三个问题
     1.目前手机图片上传都会有那几种方式,他们之间有什么优缺点。
     2.在使用其他的一些应用的时候,比如像Q拍等上传的时候感觉就很快,不知道他们用的是什么方案。
     3.我试过像反编译其他应用的APK来找到图片上传的方案,我想问问我找的途径是否正确。

解决方案 »

  1.   

    1.1分半钟太久了点,我做的大概在10-15秒左右,这个速度除了大小之外,还和你的网速有关系
    2.图片上传我用的是://bm是bitmap baos是ByteArrayOutputStream
    bm.compress(Bitmap.CompressFormat.PNG, 100, baos);
    //photodata是String类型,然后将photodata上传,服务器端就是一个byte[] photodata的参数接收
    photodata = new String(Base64.encode(baos.toByteArray(),Base64.DEFAULT));但是这样会产生膨胀,大概会膨胀三分之一。
      

  2.   

    有两种方案,
    1.将图片变成BASE64编码方式进行上传。
    2.直接上传图片文件,使用HttpPost进行上传。