Categories
不学无术 木有技术

PHP/ANDROID JSON传二进制数据 BASE64编码

来自以下两篇文章:
http://www.cnblogs.com/sqzzy/p/3291791.html
http://hi.baidu.com/xxfaxy/item/4c44f6fd4539dd5cc8f33705
 
今天在做手机项目中的表情模块。   后台:表情包的上传自动解压缩->各种封面的替换->表情的详细资料,提供表情包和单张表情的下载->统计表情下载的人数和人次  前台:开放下载 api接口。  难点:后台表情的图片二进制流和ios/安卓的交互。二进制流传递的问题  获取图片二进制流方法:$str  = file_get_contents(‘http://www.baidu.com/logo.gif’); //可以直接获取图片的二进制流,而且还是字符串类型  我们采用的是json传递的方式:如果json_encode($str); //会显示一个null  这时候的解决方案是:采用可逆的编码base64对二进制字节流进行编码转换  $base64 = base64_encode($str);  然后把这个组合成想要的格式进行json_encode();  和前台交互。所以在进行二进制流传递的时候,最好进行编码转换一下。首选 base64编码转换
 
============
首先导入包
import android.util.Base64;
String 变量=android.util.Base64.encodeToString(字符串.getBytes(),Base64.DEFAULT);
也可简写为
String 变量=Base64.encodeToString(字符串.getBytes(),Base64.DEFAULT);
至于解码
byte b[]=android.util.Base64.decode(字符串,Base64.DEFAULT);
String 变量=new String(b);

byte b[]=android.util.Base64.decode(字符串,Base64.DEFAULT);

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.