鸿蒙OS前端开发入门指南:网络图片_Image渲染网络图片 - HarmonyOS技术社区

Chase620 等级 801 0 0

目录:
1、开启明文传输
2、权限申请
3、引入http插件
4、案例展示
5、《鸿蒙OS前端开发入门指南》文章合集

开启明文传输 在config.json配置文件添加如下配置(如果不开启可以不配置)

 "deviceConfig": {
     "default": {
       "network": {
         "usesCleartext": true
       }
     }
  }, 

权限申请 在配置文件module中添加如下

 "reqPermissions": [{
      "name":"ohos.permission.INTERNET"
    }], 

引入zzr老师写的鸿蒙http插件

 implementation 'com.zzrv5.zzrhttp:ZZRHttp:1.0.1' 

案例1

使用方式,

 new ImageNetWork(”当前的abilitySlice“,“创件的Image组建”,"图片地址").start(); 

网络图片类

package com.example.shangjinlieren.compontents;

import com.zzrv5.mylibrary.ZZRCallBack;
import com.zzrv5.mylibrary.ZZRHttp;
import com.zzrv5.mylibrary.ZZRResponse;
import ohos.aafwk.ability.AbilitySlice;
import ohos.agp.components.Image;
import ohos.hiviewdfx.HiLog;
import ohos.hiviewdfx.HiLogLabel;
import ohos.media.image.ImageSource;
import ohos.media.image.PixelMap;

public class ImageNetWork {
    private final static HiLogLabel LABEL_LOG = new HiLogLabel(HiLog.LOG_APP, 0, "HmOSImageLoader");
    private  AbilitySlice abilitySlice;
    private  Image image;
    private  String url;

    public ImageNetWork(AbilitySlice abilitySlice, Image image, String url) {
        this.abilitySlice = abilitySlice;
        this.image = image;
        this.url = url;
    }

    public  void start() {
        ZZRHttp.get(url, new ZZRCallBack.CallBackString() {
            @Override
            public void onFailure(int code, String errorMessage) {
                //http访问出错了,此部分内容在主线程中工作;
                //可以更新UI等操作,请不要执行阻塞操作。
                System.out.println("errorMessage"+errorMessage);
            }
            @Override
            public String onParseResponse(ZZRResponse response) {
                //创建图片源
                ImageSource imageSource = ImageSource.create(response.inputStream, null);
                //根据图片源创建位图
                PixelMap pixelMap = imageSource.createPixelmap(null);
                //需要异步渲染UI
                abilitySlice.getUITaskDispatcher().asyncDispatch(new Runnable() {
                    @Override
                    public void run() {
                        //展示到组件上
                        System.out.println("挂载了");
                        image.setPixelMap(pixelMap);
                        pixelMap.release();

                    }
                });
                return super.onParseResponse(response);
            }
            @Override
            public void onResponse(String response) {

            }
        });
    }
} 

作者:BLUESKYHOST
想了解更多内容,请访问51CTO和华为合作共建的鸿蒙社区:https://harmonyos.51cto.com/

本文转自 https://www.cnblogs.com/HarmonyOS/p/14517871.html,如有侵权,请联系删除。

收藏
评论区

相关推荐

鸿蒙OS前端开发入门指南:网络图片_Image渲染网络图片 - HarmonyOS技术社区
目录: 1、开启明文传输(https://harmonyos.51cto.com/posts/3388bky) 2、权限申请(https://harmonyos.51cto.com/posts/3388bky) 3、引入http插件(https://harmonyos.51cto.com/posts/3388bky) 4、案例展
#2020征文
目录: [【开发板试用报告】HarmonyOS踩坑与开发日记](https://www.oschina.net/action/GoToLink?url=https%3A%2F%2Fharmonyos.51cto.com%2Fuser%2Fposts%2F12461317%23kyzg) [【开发板试用报告】HarmonyOS之HelloWorld,W
2020年HarmonyOS技术社区精彩回顾
2020年年终总结如约而至,感谢5个月的相伴。2021年,新的一年新的开始。#你好啊,2021# 2020年HarmonyOS技术社区精彩回顾—— 9.10,伴随着鸿蒙开源,HarmonyOS技术社区上线了。 10.10,我们整理出了四十四万字的《HarmonyOS入门宝典》,开始全网首发免费下载。[点此下载☞](https://www.
2020年HarmonyOS技术社区精彩回顾
2020年年终总结如约而至,感谢5个月的相伴。2021年,新的一年新的开始。#你好啊,2021# 2020年HarmonyOS技术社区精彩回顾—— 9.10,伴随着鸿蒙开源,HarmonyOS技术社区上线了。 10.10,我们整理出了四十四万字的《HarmonyOS入门宝典》,开始全网首发免费下载。[点此下载☞](https://www.
HarmonyOS 鸿蒙入门教程之01 基础环境和开发工具 (教程含源码)
HarmonyOS 鸿蒙入门教程之01 基础环境和开发工具 ============================= 鸿蒙系统是什么 ------- HarmonyOS是一款“面向未来”、面向全场景(移动办公、运动健康、社交通信、媒体娱乐等)的分布式操作系统。在传统的单设备系统能力的基础上,HarmonyOS提出了基于同一套系统能力、适配多种终端形态的
HarmonyOS2.0发布会现场回忆录
北京时间12月16日上午10点,华为在北京举行了HarmonyOS 2.0手机开发者Beta活动,在会上HarmonyOS 2.0在全场景方面带来的最新的创新体验。现场人头攒动,各展台也都模拟出人们生活、工作、出行场景的创新体验,可谓是空中楼阁变近水楼台,让在场众人大饱眼福。可见华为HarmonyOS在多场景、多设备协作方面更加符合用户的个性化和多元化需求。
HarmonyOS三方件开发指南(5)——Photoview组件
**PhotoView使用说明** **1\.  PhotoView功能介绍** **1.1 组件介绍:**         PhotoView是一个继承自Image的组件,不同之处在于:它可以进行图击放大功能,手势缩放功能(暂无真机,无法测试)。 **1.2 手机模拟器上运行效果:** 原始图片效果: ![【软通动力】HarmonyOS
HarmonyOS基础
**目录:** 1. [HarmonyOS应用项目结构](https://www.oschina.net/action/GoToLink?url=https%3A%2F%2Fharmonyos.51cto.com%2Fposts%2F2948%23kyzg) 2. [第一个HarmonyOS应用](https://www.oschina.net/act
HarmonyOS应用开发学习路线
  2020 HDC,HarmonyOS 2.0终于揭开神秘面纱,咱的自主操作系统又往前迈了一大步,可喜可贺!   值此激动人心的时刻,相信很多有基础的、没基础的开发者小伙伴早已经跃跃欲试,想对HarmonyOS一探究竟了,包括小编我在内!于是,勤劳的小编按捺不住激动到颤抖的手手,迫不及待整理了HarmonyOS应用开发的学习路线,伙伴们速来围观啦! 1
HarmonyOS开发者创新大赛
![](https://oscimg.oschina.net/oscnet/up-7965c5264afd5f1b95f3e95fd2f09173227.png) **大赛背景** HarmonyOS开发者创新大赛致力于挖掘优秀的应用创新人才及项目,通过学习HarmonyOS,创造性开发出具有全新体验,新的交互方式的终端应用,并为其链接生态资源,加速Ha
Linux下Oracle 12c的卸载
注:本文来源于:《[**Linux下Oracle 12c的卸载**](https://www.oschina.net/action/GoToLink?url=https%3A%2F%2Fblog.csdn.net%2Fu010257584%2Farticle%2Fdetails%2F50911347%2F)》 与Windows下Oracle
Python 下载图片的三种方法
https://blog.csdn.net/qq\_34504481/article/details/79716106 \*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\
Python3 比较两个图片是否类似或相同
  Python代码 #coding:utf8 import os from PIL import Image,ImageDraw,ImageFile import numpy import pytesseract import cv2 import imagehash import coll
Python实现bp神经网络识别MNIST数据集
### 前言 训练时读入的是.mat格式的训练集,测试正确率时用的是png格式的图片 ### 代码 #!/usr/bin/env python3 # coding=utf-8 import math import sys import os import numpy as np from PIL