在Android远程上传以及下载图片---XFire框架

    有时我们可以看到,图片往往被提交到服务器端,这里我通过XFire框架来实现远程上传以及下载图片的功能。

首先我们来看看从服务器端下载图片的功能:

 

我用的是KSOAP框架,我之前的文章有讲述过。在这里不要多说,贴上代码。

 

首先我们看看Acitivity中的代码:

 

 

 

分别实现了远程上传和下载图片的功能。它的处理类集中在MyWebServiceHelper,它实现了远程获取和上传的细节功能。

这个功能都是通过KSOAP框架实现的。下面贴上它的代码,如下所示:

 

 

 

在第二个函数中有:

 

 

这个是android客户端传送服务器端的参数参数。

 

而里面有个FileOperate.java类,这个类负责对文件操作。我封装在这个类中,方便集中处理以及调用。

下面贴上代码。如下所示:

 

 

 

当然,我们还在看看这个Activity.java中的布局文件。

 

 

 

而服务器端用的是XFire框架,这在之前的文章中讲过。不必多说。

看下面的代码:

 

在AccountImp.java中实现IAccount.java方法。

 

 

 

IAccount.java

 

 

 

而这个XFIRE要在web.xml中注册.

 

 

 

这样Web服务就用去查找services目录下。所以还要在WebServices目录下(在该服务器端要目录下)创建

services.xml文件。如下所示:

 

 

最终实现效果如下所示:

 

点击上传按钮

 

 

 

点击下载按钮

 

 

package com.loopj.android.image; import android.content.Context; import android.graphics.Bitmap; import android.util.AttributeSet; import android.widget.ImageView; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; public class SmartImageView extends ImageView { private static final int LOADING_THREADS = 4; private static ExecutorService threadPool = Executors.newFixedThreadPool(LOADING_THREADS); private SmartImageTask currentTask; public SmartImageView(Context context) { super(context); } public SmartImageView(Context context, AttributeSet attrs) { super(context, attrs); } public SmartImageView(Context context, AttributeSet attrs, int defStyle) { super(context, attrs, defStyle); } // Helpers to set image by URL public void setImageUrl(String url) { setImage(new WebImage(url)); } public void setImageUrl(String url, SmartImageTask.OnCompleteListener completeListener) { setImage(new WebImage(url), completeListener); } public void setImageUrl(String url, final Integer fallbackResource) { setImage(new WebImage(url), fallbackResource); } public void setImageUrl(String url, final Integer fallbackResource, SmartImageTask.OnCompleteListener completeListener) { setImage(new WebImage(url), fallbackResource, completeListener); } public void setImageUrl(String url, final Integer fallbackResource, final Integer loadingResource) { setImage(new WebImage(url), fallbackResource, loadingResource); } public void setImageUrl(String url, final Integer fallbackResource, final Integer loadingResource, SmartImageTask.OnCompleteListener completeListener) { setImage(new WebImage(url), fallbackResource, loadingResource, completeListener); } // Helpers to set image by contact address book id public void setImageContact(long contactId) { setImage(new ContactImage(contactId)
评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值