我正在使用jakarta / slide项目在我的android设备上实现webDAV客户端。
我把所有必要的jar文件放到了外部库中,
我的代码:

package com.android.webdav;

import java.io.File;
import java.io.IOException;
import java.net.MalformedURLException;

import org.apache.commons.httpclient.HttpException;
import org.apache.util.HttpURL;
import org.apache.webdav.lib.WebdavResource;

import android.app.Activity;
import android.os.Bundle;

public class Webdav extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        try {
            HttpURL hrl = new HttpURL("serverUrl");
            hrl.setUserInfo("username", "password");
            WebdavResource wdr = new WebdavResource(hrl);
            File fn = new File("remote-file");
            wdr.getMethod(fn);
            File LocFile = new File("mnt/sdcard/test/");
            wdr.putMethod(LocFile);
            wdr.close();
        } catch (MalformedURLException e) {
            e.printStackTrace();
        } catch (HttpException e) {
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

    }
}


但我出错了

java.lang.NoClassDefFoundError: org.apache.webdav.lib.WebdavResource


上面的类已经在jar中添加了。
需要帮助。

谢谢

最佳答案

Sardine + http://code.google.com/p/httpclientandroidlib/不起作用,因为httpclientandroidlib已重命名了所有程序包名称。见android sardine + httpclientandroidlib -> new package names

关于android - WebDAV客户端在Android上的实现,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5581431/

10-12 02:34