android客户端向服务器发送图片和文字,类似于发微博。能用json格式发送吗?

============问题描述============

能的话,请问怎么将图片转成json格式。最好有源码。谢谢

============解决方案1============

显然可以,把图片和语音byte 数据打成base64当字符串发出去,组装成json是可以的。

只是这样流量太耗了,一般图片和语音都用byte精简指令发送也就是用tcp socket通信,不用HTTP。

============解决方案2============

引用 3 楼 u010665680 的回复:

Quote: 引用 2 楼 birdsaction 的回复:

显然可以,把图片和语音byte 数据打成base64当字符串发出去,组装成json是可以的。

只是这样流量太耗了,一般图片和语音都用byte精简指令发送也就是用tcp socket通信,不用HTTP。

好的,谢谢。我把图片转成String,然后再用JSONObject封装。然后再转换成byte写入输出流。这样可以吗

当然可以。图片也好,文字也好,本质上都是二进制数据,只要接收端接收后能够还原成原始数据即可。

时间: 2024-10-16 06:55:27

android客户端向服务器发送图片和文字,类似于发微博。能用json格式发送吗?的相关文章

Android客户端向服务器传递图片(使用Http协议)

使用Http协议向服务器传递图片,那么就要首先了解Http协议这个报文里边的信息格式: web端传递图片一般都是使用表单的形式来传递的,通过post的形式传递的,在这里要使用到两个jar包,分别是:commons-fileupload.jar和commons-io.jar这俩jar包. 下边来说一说Http协议上传文件头文件的格式: 其实我们这种前后台的交互是用的HTTP协议.而http协议默认是传的字符串.所以我们上传文件的话要加enctype = "multipart/form-data&q

Android客户端与服务器交互方式-小结

最近的Android项目开发过程中一个问题困扰自己很长时间,Android客户端与服务器交互有几种方式,最常见的就是webservices和json.要在Android手机客户端与pc服务器交互,需要满足下面几种条件:跨平台.传输数据格式标准.交互方便. 为了与服务器通讯其实无非就两种协议HTTP和TCP,TCP的学习Socket,HTTP的话熟悉一下HTTP协议和相关Java API.而下面的几种方式就是从这两种协议扩展出来的:webservices soap.SSH的JSON(可参考:该链接

android客户端与服务器交互数据(基于SAOP协议的远程调用标准,通过webservice可以将不同操作系统平台,不同语言,不同技术整合)

在PC机器java客户端中,需要一些库,比如XFire,Axis2,CXF等等来支持访问WebService,但是这些库并不适合我们资源有限的android手机客户端,做过JAVA ME的人都知道有KSOAP这个第三方的类库,可以帮助我们获取服务器端webService调用,当然KSOAP已经提供了基于android版本的jar包 首先下载KSOAP包:ksoap2-android-assembly-2.5.2-jar-with-dependencies.jar包 然后新建android项目 以

Socket 通信原理(Android客户端和服务器以TCP&&UDP方式互通)

ZERO.前言 有关通信原理内容是在网上或百科整理得到,代码部分为本人所写,如果不当,还望指教. 一.Socket通信简介 Android与服务器的通信方式主要有两种,一是Http通信,一是Socket通信.两者的最大差异在于,http连接使用的是“请求—响应方式”,即在请求时建立连接通道,当客户端向服务器发送请求后,服务器端才能向客户端返回数据.而Socket通信则是在双方建立起连接后就可以直接进行数据的传输,在连接时可实现信息的主动推送,而不需要每次由客户端想服务器发送请求. 那么,什么是s

android 客户端与服务器 保持同一会话的session

最近在开发项目的过程中,遇到android与web服务器要在同一session下通信的问题. 在解决问题前先回顾下Session与Cookie: Cookie和Session都为了用来保存状态信息,都是保存客户端状态的机制,它们都是为了解决HTTP无状态的问题而所做的努力. Session可以用Cookie来实现,也可以用URL回写的机制来实现. Cookie和Session有以下明显的不同点: 1)Cookie将状态保存在客户端,Session将状态保存在服务器端: 2)Cookies是服务器

Android客户端与服务器交互中的token

学习Token Token是什么? Token是服务端生成的一串字符串,以作客户端进行请求的一个令牌,当第一次登录后,服务器生成一个Token便将此Token返回给客户端,以后客户端只需带上这个Token前来请求数据即可,无需再次带上用户名和密码. Token的引入-- Token是在客户端频繁向服务端请求数据,服务端频繁的去数据库查询用户名和密码并进行对比,判断用户名和密码正确与否,并作出相应提示,在这样的背景下,Token便应运而生 使用Token的目的-- Token的目的是为了减轻服务器

使用HttpURLConnection实现在android客户端和服务器之间传递对象

一般情况下,客户端和服务端的数据交互都是使用json和XML,相比于XML,json更加轻量级,并且省流量,但是,无论我们用json还是用xml,都需要我们先将数据封装成json字符串或者是一个xml字符串然后传输,那么有没有可能我们直接在android客户端上传递一个Object给服务器端呢?答案是肯定的. 我们看一个简单的App注册页面,如下图: 当我们点击注册按钮的时候,将用户的注册信息通过一个Object对象传递到服务器,好,下来我们看看怎么样来传递对象: 首先我们要把用户的注册信息封装

Android ListView从网络获取图片及文字显示

从网络获取图片以及文本来显示.事实上,一般是先获取Josn或sml数据,然后解释显示.我们先从网上获取xml,然后对其进行解析,最后显示在ListView上.具体步骤: 客户端发出请求,获取xml 客户端异步解析xml ListView将解析完的数据显示 一.Android客户端 (1)xml布局文件         mainxml,就是一个ListView. [java] view plaincopy <?xml version="1.0" encoding="utf

android 使用Intent.ACTION_SEND分享图片和文字内容(新浪微博,短信等)

下面的方法只能实现普通的文字分享: 1 2 3 4 5 6 7 8 9 10 11 private void shareContent() {         Intent share = new Intent(android.content.Intent.ACTION_SEND);         share.setType("text/plain");         String title = "标题";         String extraText=&