在一个传输中将数据/文件发送到android中的服务器的最佳方式

我在工作中使用的应用程序使用GPS数据将文件标记到用户可以返回并稍后在该位置查看的位置.但是我仍然坚持如何将数据发送到服务器,我希望用户以后能够看到.

我在社区里很想知道的是哪种方式最好的方法.我已经拥有了位置管理器及其相关类的GPS数据,但我不确定如何将它与图像,声音文件或视频一起发送到服务器,然后可以存储在那里稍后由设备根据用户权限检索.

在服务器上,数据将保存在postgresql数据库中,我希望将与每次上传相关联的所有数据绑定到某种类型的json数组中,因为我有应用程序在json数组中提取数据职位和他们的分数.

那么我应该将GPS数据发送为服务器上的脚本可以解析成json格式的文字字符串,如果是这样的话,也可以将附加到它的图像这样做……..我知道它可能,但我想我还没想到它.

或者我应该使用某种类型的库或某些东西将图像/文件绑定到gps数据并将它们作为存储在json数组中的数据发送.

最佳答案 如果以
JSON的形式完成,我总是发现发送文本数据(比如gps值)最简单.如果你必须将图像/声音文件放入其中,你可以通过base64编码数据并将结果字符串放在JSON中来完成.

我个人不喜欢base64有两个原因:

>它增加了大约37%的数据大小
>如果连接出现问题,则必须再次发送所有内容,而不仅仅是乱搞的文件.

另一种方法是使用UDID链接图像/声音.您首先使用引用发送JSON,然后将每个文件分别发送到服务器上的处理程序,该处理程序接受UDID作为参数,以便它知道正在接收哪个文件.这样当出现连接问题时,您只需要重新发送一个文件.

点赞