更多信息请访问:https://harmonyos.51cto.com,与华为官方战略合作共建的鸿蒙技术社区。Android不仅提供了很多API,还提供了很多第三方库。这为我们的开发者降低了开发难度,提高了开发效率,让应用开发变得更简单、更高效。众所周知,HarmonyOS除了提供16000多个API外,还支持组件库调用,那么HarmonyOS应用开发如何对接第三方库呢?加载图片是每个应用程序都需要的一个功能,在Android平台上是有提供的。有Glide、ImageLoader、Picasso,其中Glide最为开发者所熟知,所以我将以Glide为例,验证在HaronyOS开发中如何使用图片加载库。以后我们要引入我厂搭建的鸿蒙版ZEGOExpressSDK时,可以按照下面的依赖方式。在开发过程中,我们需要加载图片,也可以参考下面的图片加载过程。1、组件库的依赖方式(Glide)HarmonyOS应用开发提供了三种常用的组件库导入方式。下面三个依赖方法都是在build.grade中操作的。1、Maven仓库的依赖方式这是下面验证过程中图片加载库Glide使用的方式。第一步:allprojects{repositories{maven{url'https://repo.huaweicloud.com/repository/maven/'}jcenter()mavenCentral()}}第二步:dependencies{implementationfileTree(dir:'libs',include:['*.jar','*.har'])实现'io.openharmony.tpc.thirdlib:glide:1.1.2'}2。模块依赖dependencies{implementationfileTree(dir:'libs',include:['*.jar','*.har'])implementationproject(path:':glidelibrary')}如果在setting.gradle中没有配置glidelibrary,必须手动添加,如下:include':entry',':glidelibrary'3.har包依赖dependencies{implementationfileTree(dir:'libs',include:['*.jar','*.har'])}2.组件库的使用(Glide)1.开发中的配置你需要做的配置之前在config.json中工作。允许HTTP请求:"deviceConfig":{"default":{"network":{"cleartextTraffic":true}}}网络权限设置:"module":{"reqPermissions":[{"name":"ohos.permission.互联网"}]}2。加载图片图片的来源可以是网上的图片,也可以是工程文件中的图片。两种方法的加载方式如下。要加载的图片来自网络load()中选择的imagePath,本地图片选择的是imageResourceId。调用方法:Imageimage=(Image)findComponentById(ResourceTable.Id_img);//LoadImagefromInternet(图片来源于Zego官网网络图)StringimagePath="https://www.zego.im/_nuxt/img/53992d2.png";//LoadImagefromResourceFolder(本地图片)intimageResourceId=ResourceTable.Media_zego_img;Glide.with(this).load(imagePath).diskCacheStrategy(DiskCacheStrategy.NONE).skipMemoryCache(true).into(image);运行结果显示:3.加载GIF动画加载的GIF图片可以是网络图片,也可以是本地图片。调用方式:DraweeViewdraweeView=(DraweeView)findComponentById(ResourceTable.Id_draweeView);StringimagePath="loadgifffromnetwork";intimageResourceId="loadgiffromnative";Glide.with(this).asGif().load(imageResourceId).into(draweeView);HarmonyOSImage不支持gif加载,因为Image和Element是独立的,不能用Element重绘。所以Glide需要借助DraweeView才能使用gif的能力。
