使用json从PHP-MySql服务器到Android获取图像
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了使用json从PHP-MySql服务器到Android获取图像,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1736字,纯文字阅读大概需要3分钟。
内容图文
![使用json从PHP-MySql服务器到Android获取图像](/upload/InfoBanner/zyjiaocheng/887/65d85d9222754b339c1e7bb5e8a09305.jpg)
我正在开发一个从php服务器下载图像并在图像视图中显示图像的应用程序.但是当我从php页面接收图像时
if (!empty($result)) {
if (mysql_num_rows($result) > 0) {
$result = mysql_fetch_array($result);
$user = array();
$user["image"] = base64_encode($result["image"]);
$response["success"] = 1;
$response["image_table"] = array();
array_push($response["image_table"], $user);
echo json_encode($response);
} else {
$response["success"] = 0;
$response["message"] = "No Image found";
echo json_encode($response);
}
它给了我这样的json响应
03-30 04:43:44.013: D/Image:(2770): {"success":1,"image_table": [{"image":"\/9j\/4VeRRXhpZgAASUkqAAgAAAAMAAABBAABAAAA..........
03-30 04:43:44.253: D/skia(2770): --- decoder->decode returned false
我正在像这样将图像字符串解码为位图….
json= jsonParser.makeHttpRequest(url_img_address, "GET", params);
Log.d("Image: ", json.toString());
try {
int success = json.getInt(TAG_SUCCESS);
if (success == 1) {
address = json.getJSONArray(TAG_IMAGE_TABLE);
for (int i = 0; i < address.length(); i++) {
JSONObject c = address.getJSONObject(i);
image = c.getString(TAG_IMAGE);
byte[] dwimage = Base64.decode(image.getBytes());
System.out.println(dwimage);
bmp = BitmapFactory.decodeByteArray(dwimage, 0, dwimage.length);
}
} else {
}
} catch (JSONException | IOException e) {
e.printStackTrace();
}
我正在使用这个bm来onotherclass,将bmp设置为imageview
ivProperty.setImageBitmap(bmp);
但是它什么也没显示……我的异步任务活动尚未完成并且正在继续运行…
我的问题是如何将bmp显示到imageview以及为什么我的asyncktask未完成…….. thx提前….
解决方法:
您需要使用使用base64解码的二进制解码,并且您将获得图像作为位图.
byte[] decodedString = Base64.decode(encodedImage, Base64.DEFAULT);
Bitmap decodedByte = BitmapFactory.decodeByteArray(decodedString, 0, decodedString.length);
内容总结
以上是互联网集市为您收集整理的使用json从PHP-MySql服务器到Android获取图像全部内容,希望文章能够帮你解决使用json从PHP-MySql服务器到Android获取图像所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。