开源 Arkts 鸿蒙应用 开发(二)封装库.har制作和应用

文章的目的为了记录使用Arkts 进行Harmony app 开发学习的经历。本职为嵌入式软件开发,公司安排开发app,临时学习,完成app的开发。开发流程和要点有些记忆模糊,赶紧记录,防止忘记。

相关链接:

开源 Arkts 鸿蒙应用 开发(一)工程文件分析-CSDN博客

开源 Arkts 鸿蒙应用 开发(二)封装库.har制作和应用-CSDN博客

开源 Arkts 鸿蒙应用 开发(三)Arkts的介绍-CSDN博客

开源 Arkts 鸿蒙应用 开发(四)布局和常用控件-CSDN博客

推荐链接:

开源 java android app 开发(一)开发环境的搭建-CSDN博客

开源 java android app 开发(二)工程文件结构-CSDN博客

开源 java android app 开发(三)GUI界面布局和常用组件-CSDN博客

开源 java android app 开发(四)GUI界面重要组件-CSDN博客

开源 java android app 开发(五)文件和数据库存储-CSDN博客

开源 java android app 开发(六)多媒体使用-CSDN博客

开源 java android app 开发(七)通讯之Tcp和Http-CSDN博客

开源 java android app 开发(八)通讯之Mqtt和Ble-CSDN博客

开源 java android app 开发(九)后台之线程和服务-CSDN博客

开源 java android app 开发(十)广播机制-CSDN博客

开源 java android app 开发(十一)调试、发布-CSDN博客

开源 java android app 开发(十二)封库.aar-CSDN博客

推荐链接:

开源C# .net mvc 开发(一)WEB搭建_c#部署web程序-CSDN博客

开源 C# .net mvc 开发(二)网站快速搭建_c#网站开发-CSDN博客

开源 C# .net mvc 开发(三)WEB内外网访问(VS发布、IIS配置网站、花生壳外网穿刺访问)_c# mvc 域名下不可訪問內網,內網下可以訪問域名-CSDN博客

开源 C# .net mvc 开发(四)工程结构、页面提交以及显示_c#工程结构-CSDN博客

开源 C# .net mvc 开发(五)常用代码快速开发_c# mvc开发-CSDN博客

本章节主要讲述鸿蒙开发环境时封装库.har的制作和应用

内容如下:

  1. .har模块的制作

  2. .har编写测试代码

  3. .har的工程应用

一、 .har模块的制作,在程序开发中需要将sdk提供给第三方,不让对方开到源码的情况。又或者代码不需要修改,为了加快编译速度,把代码封装为模块。这个时候就需要制作.har模块。

1.1 创建模块

选择静态库

生成了library模块

二、.har编写测试代码

2.1 需要注意library模块中的oh-package.json5配置文件,Index.ets文件是HAR导出声明文件的入口,HAR需要导出的接口,统一在Index.ets文件中导出。Index.ets文件是DevEco Studio默认自动生成的,用户也可以自定义,在模块的oh-package.json5文件中的main字段配置入口声明文件。

添加文件test.ets

复制代码
// library/src/main/ts/test.ets
export class classTest {
  public info(msg: string) {
    console.info(msg);
  }
}

export function funTest():string{
  return 'har func';
}

修改MainPage.ets文件的width和height,让这个组件可以被调用显示

复制代码
@Component
export struct MainPage {
  @State message: string = 'Hello World';

  build() {
    Row() {
      Column() {
        Text(this.message)
          .fontSize($r('app.float.page_text_font_size'))
          .fontWeight(FontWeight.Bold)
          .onClick(() => {
            this.message = 'Welcome';
          })
      }
      .width('200')
    }
    .height('80')
  }
}

修改Index.ets,将类和函数引出

生成library.har

三、 .har文件的应用

3.1 将library.har文件拷贝到测试工程中

3.2 修改配置文件oh-package.json5添加依赖,并点击工程同步。

3.3 在Index.ets中修改代码,引入library可以使用MainPage组件

复制代码
import  {MainPage} from 'library'
@Entry
@Component
struct Index {
  @State message: string = 'Hello World';

  build() {
      Row(){
        MainPage();
      }
  }
}

效果为

3.4 在entryablity.ets中引入 classTest类,就可以调用它的函数了,从而实现封装库.har的应用。

3.5 点击.info函数,显示如图,只能看到函数接口,无法看到实际内容,封装有效。

相关推荐
贾伟康11 小时前
【口算王|20】HarmonyOS ArkTS AppGallery 发布复查实战:核对包名、版本、设备、素材和离线声明
harmonyos·arkts·appgallery·应用发布·发布审核
ChinaDragon14 小时前
HarmonyOS:Web使用Dsbridge与JavaScript完成交互
harmonyos
徐小黑ACG15 小时前
nginx配置文件
linux·服务器·nginx
新时代牛马15 小时前
Linux VFS 完整篇:从path_openat、dentry/inode 到page cache 与挂载排障
linux·运维·服务器
java_logo15 小时前
Docker 部署 Rocky Linux:轻松搭建 RHEL 兼容企业级基础镜像平台
linux·docker·容器·rocky linux·基础镜像·轩辕镜像·rhel 兼容
拂拉氏15 小时前
【知识讲解】 Linux虚拟地址空间认识
linux·虚拟地址空间
冬奇Lab17 小时前
一天一个开源项目(第210篇):herdr - AI 编程 Agent 的运行时底座
人工智能·开源·资讯
新时代牛马17 小时前
Linux 驱动中断与定时完整篇:从 request_threaded_irq 到hrtimer 选型与排障
linux·运维·服务器
a11177618 小时前
Shirone 二次元博客主题 开源
前端·开源
思录Echo18 小时前
自助易AI数字人外挂技术剖析|如何解决政企智能客服的多端适配难题?
人工智能·华为·harmonyos