android上文件上传的Web服务器

android上文件上传的Web服务器,android,webserver,embeddedwebserver,Android,Webserver,Embeddedwebserver,我想在我的android应用程序中添加一个Web服务器,用于将小文件上传到手机上 用户可以通过点击按钮从手机启动Web服务器。然后,他将看到一个ip地址,任何浏览器都可以从pc上访问该地址。该ip地址后面的网站应显示一个文件上载机会 我的问题是:是否有类似于我需求的开源项目?或者你建议怎么做?你可以使用NanoHttpd,它是一款重量非常轻的android web服务器,可以很好地嵌入 package .....; import java.io.IOException; import java

我想在我的android应用程序中添加一个Web服务器,用于将小文件上传到手机上

用户可以通过点击按钮从手机启动Web服务器。然后,他将看到一个ip地址,任何浏览器都可以从pc上访问该地址。该ip地址后面的网站应显示一个文件上载机会

我的问题是:是否有类似于我需求的开源项目?或者你建议怎么做?

你可以使用NanoHttpd,它是一款重量非常轻的android web服务器,可以很好地嵌入

package .....;

import java.io.IOException;
import java.util.Map.Entry;
import java.util.Properties;

import android.app.Activity;
import android.net.wifi.WifiManager;
import android.os.Bundle;
import android.os.Handler;
import android.widget.TextView;

public class AndroidWebServerActivity extends Activity {
private static final int PORT = 8765;
private TextView hello;
private MyHTTPD server;
private Handler handler = new Handler();

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);

}

@Override
protected void onResume() {
super.onResume();

try {
server = new MyHTTPD();
} catch (IOException e) {
e.printStackTrace();
}
}

@Override
protected void onPause() {
super.onPause();
if (server != null)
server.stop();
}

private class MyHTTPD extends NanoHTTPD {
public MyHTTPD() throws IOException {
super(PORT, null);
}

@Override
public Response serve(String uri, String method, Properties header, Properties parms, Properties files) {
final StringBuilder buf = new StringBuilder();
for (Entry<Object, Object> kv : header.entrySet())
buf.append(kv.getKey() + " : " + kv.getValue() + "\n");
handler.post(new Runnable() {
@Override
public void run() {

}
});

final String html = "<html><head><head><body><h1>Hello, World</h1></body></html>";
return new NanoHTTPD.Response(HTTP_OK, MIME_HTML, html);
}
}
}
包。。。。。;
导入java.io.IOException;
导入java.util.Map.Entry;
导入java.util.Properties;
导入android.app.Activity;
导入android.net.wifi.WifiManager;
导入android.os.Bundle;
导入android.os.Handler;
导入android.widget.TextView;
公共类AndroidWebServerActivity扩展活动{
专用静态最终int端口=8765;
私人文本视图你好;
私有MyHTTPD服务器;
私有处理程序=新处理程序();
@凌驾
创建时的公共void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
@凌驾
受保护的void onResume(){
super.onResume();
试一试{
服务器=新的MyHTTPD();
}捕获(IOE异常){
e、 printStackTrace();
}
}
@凌驾
受保护的void onPause(){
super.onPause();
如果(服务器!=null)
server.stop();
}
私有类MyHTTPD扩展了NanoHTTPD{
public MyHTTPD()引发IOException{
超级(端口,空);
}
@凌驾
公共响应服务(字符串uri、字符串方法、属性头、属性参数、属性文件){
最终StringBuilder buf=新StringBuilder();
对于(条目kv:header.entrySet())
buf.append(kv.getKey()+”:“+kv.getValue()+”\n”);
handler.post(新的Runnable(){
@凌驾
公开募捐{
}
});
最后一个字符串html=“你好,世界”;
返回新的NanoHTTPD.Response(HTTP_OK,MIME_HTML,HTML);
}
}
}

这不是WebDAV已经在做的吗?。。你为什么需要另一份副本呢?需要你的帮助吗