0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

方舟開發(fā)框架新增開源組件及其使用方法介紹

海闊天空的專欄 ? 來源:HarmonyOS開發(fā)者 ? 作者:HarmonyOS開發(fā)者 ? 2022-05-07 17:43 ? 次閱讀

2021年的華為開發(fā)者大會(HDC2021)上,我們發(fā)布了新一代的聲明式UI框架——方舟開發(fā)框架(ArkUI)。ArkUI框架引入了基于TS擴展的聲明式開發(fā)范式。自此,越來越多的開發(fā)者加入到JS/eTS的開發(fā)隊伍中,我們也收到不少開發(fā)者對JS/eTS組件的需求。

在廣大組件貢獻者的共同努力下,我們又迎來了新一批組件開源,其中就有很多JS/eTS組件。趕緊來一睹為快吧!

一、新增開源組件概覽

本次上新,共計新增94個開源組件。組件涉及工具、網(wǎng)絡(luò)、UI、圖形、音視頻等多種功能。

按開發(fā)語言分類,新增組件的分布詳情如下

pYYBAGJ2O3qAM80XAABbcdtGJZ4719.png

從上圖可知,上新的組件大部分采用JS/TS/eTS語言,這為JS/eTS開發(fā)者的開發(fā)之旅增添很大助力。

二、典型組件效果展示

下面為大家介紹四個典型的組件,也期待大家自己去發(fā)現(xiàn)更多好用的組件~

1. zxing

接觸過二維碼相關(guān)開發(fā)的開發(fā)者應(yīng)該對zxing庫不陌生。zxing庫是一個開源的條形碼處理類庫,用于解析多種格式的1D/2D條形碼。

我們之前只開源了Java版的zxing庫(Zxing-Embedded),此次上新TS版的zxing庫,讓eTS開發(fā)者也能使用zxing庫進行二維碼相關(guān)的應(yīng)用開發(fā)。

zxing庫支持解析以下1D/2D條形碼格式:

poYBAGJ2O46AQkOeAAE1HXnycI0660.png

圖3展示了使用此zxing庫生成和解析二維碼的開發(fā)示例。此示例中,解析二維碼時還展示了jsQr庫的解析結(jié)果,對比驗證zxing庫解析二維碼的正確性。

poYBAGJ2O72AAPcdABfpWmD31MM255.png圖3 zxing

源碼下載地址:https://gitee.com/openharmony-tpc/zxing

2. VCard

VCard,即電子名片,是互聯(lián)網(wǎng)中一種規(guī)范的文件傳播格式,它主要是將傳統(tǒng)紙質(zhì)商業(yè)名片上的信息以一種標準格式在互聯(lián)網(wǎng)上傳播。VCard應(yīng)用范圍非常廣泛,可作為各種應(yīng)用或系統(tǒng)之間的交換格式。用戶在互聯(lián)網(wǎng)上直接利用電子郵件等途徑,就可以輕松轉(zhuǎn)發(fā)和閱讀VCard中的信息。

本次上新的是eTS版本的VCard組件,支持VCard標準2.0和3.0,提供的接口有:昵稱、名字、電話、郵件、地址、社交工具、網(wǎng)站地址、組織、照片地址、備注、群組、事件和關(guān)系。

通過此VCard組件可以輕松解析和生成VCard文件,如下圖所示:

pYYBAGJ2PGWAZo16AJUrhYtDS1Y819.png圖4 VCard

(注意:使用此VCard組件,需配套OpenHarmony API version 8及以上版本。)源碼下載地址:https://gitee.com/openharmony-tpc/VCard

3. CommonsCompressEts

CommonsCompressEts是基于eTS語言開發(fā)的API庫,提供十多種文件格式的壓縮和解壓縮功能。文件格式包括:zip、gzip、xz、z、zstd、ar、brotli、bzip2、lz4、lzma(seven7)、tar、snappy、dump、deflate、cpio。

以zip格式為例,演示壓縮和解壓縮功能如下:

pYYBAGJ2PLKAYx4JABN2TcI13l4863.png圖5 CommonsCompressEts

源碼下載地址:https://gitee.com/openharmony-tpc/CommonsCompressEts

4. httpclient

httpclient(即HTTP客戶端),以人們耳熟能詳?shù)膐khttp為基礎(chǔ),整合android-async-http、AutobahnAndroid、OkGo等庫的功能特性,致力于打造一款高效易用、功能全面的網(wǎng)絡(luò)請求庫。使用此httpcilent,可以使您的內(nèi)容加載更快,且節(jié)省帶寬。

當前,httpclient依托系統(tǒng)提供的網(wǎng)絡(luò)請求能力和上傳下載能力,已完成如下功能:

全局配置調(diào)試開關(guān)、超時時間、公共請求頭和請求參數(shù)等,支持鏈式調(diào)用。

配合okio庫優(yōu)化IO,配合retrofit使用注解定義接口。

支持自定義任務(wù)調(diào)度器維護任務(wù)隊列來處理同步異步請求,還支持tag取消請求。

支持設(shè)置自定義攔截器。

支持重定向。

支持客戶端gzip解壓縮。

支持文件上傳和下載。

支持cookie管理等。

圖6、圖7、圖8為使用httpclient實現(xiàn)的三個開發(fā)示例,分別實現(xiàn)了文件上傳、圖片預(yù)覽以及網(wǎng)絡(luò)請求(GET和POST)的功能。

poYBAGJ2PRmAD2waAAVeNnOXx7A139.png圖6 文件上傳

pYYBAGJ2PS2ANqmzABEXRvK_drg271.png圖7 圖片預(yù)覽poYBAGJ2PUGAPF5SAAOmLDD9NBM977.png圖8 網(wǎng)絡(luò)請求

源碼下載地址:https://gitee.com/openharmony-tpc/httpclient

除了上面介紹的四個典型組件,還有其他很多組件,比如:功能強大的eTS圖表視圖庫ohos-MPChart,提供豐富多樣的選擇器的ohos-PickerView等等。更多好用的組件等你去發(fā)現(xiàn)哦,下面我們就來看看如何獲取這些組件。

三、如何獲取開源組件?

開發(fā)者可以直接通過OpenHarmony三方組件庫(OpenHarmony-TPC)下載源碼或從HarmonyOS開發(fā)者資源中心(DevEco Marketplace)獲取相關(guān)組件。

1. OpenHarmony-TPC

OpenHarmony三方組件庫(OpenHarmony-TPC)匯總了各類已經(jīng)開源的三方組件資源。新增的組件帶NEW

前綴,開發(fā)者可以根據(jù)自身需求參考和使用。

pYYBAGJ2PaOANFMaAAHUT6KVLIs458.png

OpenHarmony-TPC地址:https://gitee.com/openharmony-tpc/tpc_resource

2. DevEco Marketplace

HarmonyOS開發(fā)者資源中心(DevEco Marketplace),聚合了豐富的OpenHarmony生態(tài)開發(fā)資源包,方便開發(fā)者一站式獲取所需資源,輕松完成OpenHarmony智聯(lián)硬件、原子化服務(wù)和應(yīng)用的開發(fā)。開發(fā)者可以根據(jù)自身需求查詢和下載組件。

poYBAGJ2PbuAJYI1AADZfIJb8cM093.png

DevEco Marketplace地址:https://repo.harmonyos.com/#/cn/application/atomService

四、如何使用JS/eTS開源組件?

獲取了開源組件后,要如何使用呢?下面就為大家介紹JS/eTS開源組件的使用。

1. 獲取組件的scope配置命令和npm命令。

DevEco Marketplace提供了組件的安裝命令,下面以此為例來介紹。

(1)在DevEco Marketplace查找需要使用的JS/eTS開源組件。

pYYBAGJ2PgGABQpQAACUXTpZ3JI744.png

(2)點擊組件,在“安裝”頁簽中查看scope配置命令和npm命令。

pYYBAGJ2PhiAf18dAADOZ0-54es617.png

2. 在DevEco Studio工具中打開需要引用組件的工程,在Terminal中執(zhí)行scope配置命令和npm命令。

poYBAGJ2Pi-AXeqsAAC0zxWEvo0906.png

執(zhí)行以上命令后,工具自動下載和安裝組件庫。下載和安裝完成后,會在工程文件下自動生成node_modules文件夾,組件庫就被保存在此文件夾下。

poYBAGJ2Pk-AR5XEAADWGMQcOts667.png

3. 接下來,就可以在代碼文件中導(dǎo)入和使用組件了。

pYYBAGJ2PmKAKtB1AAJn81vW0QM225.png

來源:HarmonyOS開發(fā)者

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • OpenHarmony
    +關(guān)注

    關(guān)注

    25

    文章

    3548

    瀏覽量

    15734
收藏 人收藏

    評論

    相關(guān)推薦

    鴻蒙開發(fā)學(xué)習(xí):【方舟開發(fā)框架容器類API的介紹與使用】

    在**方舟**開發(fā)框架中,提供了**線性**和**非線性**兩類容器類,共14種,每種容器都有自身的特性及使用場景。下面,我們將為大家一一道來。
    的頭像 發(fā)表于 05-13 16:45 ?735次閱讀
    鴻蒙<b class='flag-5'>開發(fā)</b>學(xué)習(xí):【<b class='flag-5'>方舟</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>框架</b>容器類API的<b class='flag-5'>介紹</b>與使用】

    開源框架教程(二)—— iOS APP開發(fā)

    如何使用核心模塊開發(fā)設(shè)備控制功能(iOS APP開發(fā))導(dǎo)讀:本次教程我們在開源框架代碼基礎(chǔ)上做一個控制gokit紅燈開的App,Wi-Fi設(shè)備接入機智云客戶端調(diào)試工具包括 iOS De
    發(fā)表于 11-28 18:14

    機智云開源框架介紹

    /GOpenSource_AppKit_Android_AS 介紹:機智云開源框架(GizOpenSource_AppKit_Android) 是開源的適用于物聯(lián)網(wǎng)的軟件
    發(fā)表于 12-27 15:47

    機智云APP開源框架介紹

    的源碼實現(xiàn)快速開發(fā),從而縮短app的開發(fā)周期短、降低開發(fā)成本。此為Eclipse工程。示例如圖: 機智云物聯(lián)網(wǎng)開源框架App(Android
    發(fā)表于 02-15 17:56

    JS應(yīng)用開發(fā)框架組件

    JS應(yīng)用開發(fā)框架組件簡介目錄接口使用相關(guān)倉簡介JS應(yīng)用開發(fā)框架,是OpenHarmony為開發(fā)
    發(fā)表于 04-23 18:05

    HarmonyOS組件更新,新增700+開源組件

    。開發(fā)的腳步永不停歇,在廣大組件貢獻者的共同努力下,又迎來了第三批組件開源。 一、新增開源組件
    發(fā)表于 11-18 11:17

    介紹SPI的使用方法

    寫在最前使用RT-Thread Studio開發(fā)環(huán)境開發(fā)STM32單片機程序,與MDK使用env有一定的差別,對于剛開始使用的程序員來說,主要是找不到配置選項在哪里,上一篇介紹了TIM設(shè)備的使
    發(fā)表于 02-17 06:32

    94個JS/eTS開源組件首發(fā)上新,肯定有你要用的一款!

    /eTS的開發(fā)隊伍中,我們也收到不少開發(fā)者對JS/eTS組件的需求,比如: 在廣大組件貢獻者的共同努力下,我們又迎來了新一批組件
    發(fā)表于 05-09 14:51

    OpenHarmony 3.1 Release版本關(guān)鍵特性解析——ArkUI框架又有哪些新增能力?

    繪制接口使用方法下面介紹一個示例,給大家展示聲明式開發(fā)范式中 Canvas 組件的基礎(chǔ)使用方法。圖 3 是三張圖片疊加的效果,頂層的圖片覆蓋
    發(fā)表于 05-31 18:05

    OpenHarmony應(yīng)用開發(fā)-ArkUI方舟開發(fā)框架簡析

    方舟開發(fā)框架(簡稱ArkUI)為OpenHarmony應(yīng)用的UI開發(fā)提供了完整的基礎(chǔ)設(shè)施,包括簡潔的UI語法、豐富的UI功能(組件、布局、動
    發(fā)表于 04-23 09:35

    JavaUI框架新增組件開發(fā)指南

    Java UI框架是HarmonyOS應(yīng)用開發(fā)中諸多開發(fā)者需要關(guān)注的重要內(nèi)容。近期,文檔君結(jié)合各位開發(fā)者反饋的聲音和改進建議,對官網(wǎng)文檔的Java UI
    的頭像 發(fā)表于 09-28 10:04 ?2239次閱讀
    JavaUI<b class='flag-5'>框架</b><b class='flag-5'>新增</b><b class='flag-5'>組件</b><b class='flag-5'>開發(fā)</b>指南

    HarmonyOS新增開源組件概覽

    。開發(fā)的腳步永不停歇,在廣大組件貢獻者的共同努力下,又迎來了第三批組件開源。 一、新增開源組件
    的頭像 發(fā)表于 11-22 10:46 ?2293次閱讀
    HarmonyOS<b class='flag-5'>新增開源</b><b class='flag-5'>組件</b>概覽

    方舟開發(fā)框架(Ark UI)概述及開發(fā)實戰(zhàn)

    本期要為大家介紹的是ArkUI入門課程——HarmonyOS技術(shù)訓(xùn)練營第四期《方舟開發(fā)框架(Ark UI)概述及開發(fā)實戰(zhàn)》。相信學(xué)習(xí)完這個課
    的頭像 發(fā)表于 12-17 14:49 ?7924次閱讀

    方舟開發(fā)框架中容器類的各種類型

      容器類,顧名思義就是存儲的類,用于存儲各種數(shù)據(jù)類型的元素,并具備一系列處理數(shù)據(jù)元素的方法。在方舟開發(fā)框架中,容器類采用了類似靜態(tài)語言的方式來實現(xiàn),并通過NAPI
    的頭像 發(fā)表于 03-14 13:45 ?1443次閱讀
    <b class='flag-5'>方舟</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>框架</b>中容器類的各種類型

    LangChain框架關(guān)鍵組件使用方法

    LangChain,開發(fā)者可以輕松構(gòu)建基于RAG或者Agent流水線的復(fù)雜應(yīng)用體系,而目前我們已經(jīng)可以在LangChain的關(guān)鍵組件LLM,Text Embedding和Reranker中直接調(diào)用OpenVINO進行模型部署,提升本地RAG和Agent服務(wù)的性能,接下來就
    的頭像 發(fā)表于 08-30 16:55 ?262次閱讀
    LangChain<b class='flag-5'>框架</b>關(guān)鍵<b class='flag-5'>組件</b>的<b class='flag-5'>使用方法</b>