我一直试图找到一种方法将视频从Android设备上传到API,但我还没有找到一种好办法。似乎我在网上发现的大部分信息已经过时了(很多都是去年)。他们中的大多数人都使用这样的方法:http://getablogger.blogspot.com/2008/01/android-how-to-post-file-to-php-server.html
使用多部分POST将内容上传到API的最简单/首选方法是什么?
答案 0 :(得分:0)
我有一个Android应用程序,我正在针对Campfire聊天服务的“API”进行开发。这里的代码通过多部分POST上传文件:
“dos.close()”行之后的所有内容都与检查响应以检测帖子是否成功有关。
每个多部分的帖子都不是必需的;例如,X-Requested-With标题特定于Campfire,User-Agent是可选的,Cookie是因为我必须保持登录。另外,关于间距的“OH MY GOD”评论可能是Campfire特定的
我听说Apache的最新版本的HttpClient库有更方便的内置多部分支持,但谷歌针对Android执行的最后一次同步不包括这些功能,所以我在这里做手动。
希望有所帮助。
答案 1 :(得分:0)
您可以使用Apache Software Foundation中的HttpClient。它是Android API的一部分:
HttpClient httpclient = new DefaultHttpClient();
HttpPost httppost = new HttpPost("www.somewebpage.com/site-that-can-handle-post");
try {
MultipartEntity entity = new MultipartEntity();
entity.addPart("timestamp", new StringBody("1311789946"));
entity.addPart("image", new FileBody(new File("/foo/bar/video.mpeg")));
httppost.setEntity(entity);
HttpResponse response = httpclient.execute(httppost);
} catch (Exception e) {
Log.v(MyActivity.TAG, "doh!", e);
}
希望有所帮助。 :)