java-将图像和视频文件从android发送到服务器并接收处理

java-将图像和视频文件从android发送到服务器并接收处理,第1张

概述我想将视频/图像从android手机发送到服务器,并接收处理过的视频/图像.(例如,我发送一个图像并将该图像接收为二进制图像或灰度或调整大小等)什么是最好的,最简单的方式做到这一点的家伙?Http?插座?XML?以及如何做?我试图通过流(SharedLibrarynotfounderroronandroidLogCat)

我想将视频/图像从android手机发送到服务器,并接收处理过的视频/图像. (例如,我发送一个图像并将该图像接收为二进制图像或灰度或调整大小等)
什么是最好的,最简单的方式做到这一点的家伙? http?插座? XML?以及如何做?

我试图通过流(Shared Library not found error on android LogCat)来执行此 *** 作,但我也无法管理该如何执行.

提前致谢

解决方法:

首先,在回答问题的特定部分之前,这里有一些一般性建议:

尝试在设备上做一些琐碎的事情.仅在图像上放置遮罩或对其旋转/调整大小非常简单,可以在设备上执行.这样,用户无需上传任何内容(并等待),并且服务器的负载也不会那么重.

视频和图片可能会变得很大.考虑到这一点.我想到的一个想法是,用户应该仅上传一次图像/视频,但是应该能够执行多种 *** 作,然后再下载最终结果.否则,您将面临漫长的等待时间和高流量.

告诉您的用户!如果您真的开始将(也许是个人的)图片/视频上传到自己的服务器,请确保您使用的是可获得的最大安全性(SSL应该是必须的),并告诉用户您要将其内容上传到您的服务器.另外,您应该给他们选择拒绝的选择,否则,您可能会面临诉讼.

现在,到技术部分:

从服务器上载文件/从服务器上载文件的工作流程几乎总是相同的:

>使用Socket打开与服务器的连接
>在文件上获取流(对于您的情况,为FileInputStream)
>读取字节数组中的二进制数据块
>将读取的块从套接字写入输出流
>完成后,关闭流,然后关闭套接字

在您的服务器上,您可以进行其他 *** 作并从inputStream中读取内容,并将内容写入FileOutputStream.

这是一个看起来如何的小例子:

Socket server = new Socket("192.168.178.32", 1337);OutputStream outputStream = server.getoutputStream();fileinputStream in = null;try {    in = new fileinputStream("/some/path/to/gras.jpeg");    // Write to the stream:    byte[] buffer = new byte[1024]; // 1KB buffer size    int length = 0;    while ( (length = in.read(buffer, 0, buffer.length)) != -1 ){        outputStream.write(buffer, 0, length);    }    outputStream.flush();} finally {    if (in != null) in.close();    socket.close(); // Will close the outputStream, too.}

这段代码消除了这里可能抛出异常的事实.您需要以适当的方式处理这些问题.

您应该考虑的一点是,用户可能会通过移动互联网连接上传其内容,该内容可能会被拦截(例如,通过隧道时).在这种情况下,您将希望将up / download实现为可恢复.

总结

以上是内存溢出为你收集整理的java-将图像和视频文件从android发送到服务器并接收处理全部内容,希望文章能够帮你解决java-将图像和视频文件从android发送到服务器并接收处理所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1085932.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-27
下一篇 2022-05-27

发表评论

登录后才能评论

评论列表(0条)

保存