91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

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

如何在鴻蒙系統(tǒng)上弄一個(gè)ArkUI應(yīng)用

OpenHarmony技術(shù)社區(qū) ? 來源:鴻蒙技術(shù)社區(qū) ? 作者:拓維云創(chuàng)qzk ? 2021-11-15 09:28 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

大家可以看到很明顯這是一個(gè) ArkUI 的應(yīng)用,在遠(yuǎn)程模擬器上目前還只可以跑在 P40 Pro 上。

其實(shí)為了這個(gè)目的,只需要做到兩個(gè)步驟,第一步整出一個(gè) ArkUI 的應(yīng)用來,第二步將該應(yīng)用放上 Hi3516 跑起來,OK,這就是總體思路,然后順著這個(gè)步驟,一步一步來做。

整一個(gè) ArkUI的應(yīng)用

因?yàn)槲疫@里的主要目的是為了測(cè)試 3516 標(biāo)準(zhǔn)系統(tǒng)是否支持 ArkUI 框架,所以僅僅寫了一個(gè)超簡(jiǎn)單的 demo,因?yàn)檫@ demo 還不屬于本文章的重點(diǎn),就是小示例。

①首先創(chuàng)建一個(gè)聲明式 UI 工程

如下圖在 deveco studio 中創(chuàng)建工程的時(shí)候注意一下,別的沒什么區(qū)別。

②將圖片放入對(duì)應(yīng)目錄

右鍵 resources 文件夾,點(diǎn)擊 New>Resource Directory,選擇 Resource Type 為 Media(圖片資源),選擇資源限定詞為 Device-Phone,詳細(xì)參考官方大大。

這里需要注意的是如果采用把圖片放在 rawfile 下的時(shí)候,這個(gè)時(shí)候在遠(yuǎn)程模擬器的 P40 Pro 是可以完美顯示的,但是在 3516 中圖片顯示不出來,具體原因還有待深究!有興趣的大佬可以去深究一撥兒,我以后也會(huì)去看這個(gè)問題。

③添加代碼引用資源

直接將 entry/src/main/default/pages/index.ets 中的文件替換為如下內(nèi)容:

@Entry
@Component
structMyComponent{
build(){
Stack(){
Image($r('app.media.cat'))
.objectFit(ImageFit.Contain)
.height(357)
Text('Cat')
.fontSize(26)
.fontWeight(500)
}
}
}

④修改應(yīng)用名字

這個(gè)配置文件是 string.json,所存在目錄為:

entry/src/main/resources/base/element/string.json

試著將應(yīng)用放入 Hi3516 上跑起來

因?yàn)槲覀冞@個(gè)是屬于把應(yīng)用放入實(shí)體設(shè)備,所以簽名這一步是必不可少的,簽名完成后,在打出 hap 包后,再把 hap 包想辦法扔進(jìn)設(shè)備,并且可以運(yùn)行。

openharmony 簽名打包

下面這幾步驟就是 openharmony 簽名過程,缺一不可。

生成密鑰和證書請(qǐng)求文件,這里先了解哈這兩個(gè)概念:

  • 密鑰:包含非對(duì)稱加密中使用的公鑰和私鑰,存儲(chǔ)在密鑰庫文件中,格式為 .p12,公鑰和私鑰對(duì)用于數(shù)字簽名和驗(yàn)證。

  • 證書請(qǐng)求文件:格式為 .csr,全稱為 Certificate Signing Request,包含密鑰對(duì)中的公鑰和公共名稱、組織名稱、組織單位等信息,用于向 AppGallery Connect 申請(qǐng)數(shù)字證書。

然后操作方法就是打開你的 deveco studio,然后按照下圖進(jìn)行操作:

f02e0ac0-458d-11ec-b939-dac502259ad0.png

然后就會(huì)彈出下述界面:

f087f59e-458d-11ec-b939-dac502259ad0.png

如果是第一次使用的話,肯定是沒有生成過密鑰的,也就是 .p12 文件,所以這里需要 new 一個(gè),這里需要重點(diǎn)關(guān)注的是 new 的時(shí)候會(huì)讓你寫一個(gè)密碼,這個(gè)密碼寫了啥,一定要記住,后面會(huì)用,不然整個(gè)打包過程就會(huì)直接 fail。

接下來就按照提示填就可以了。這一步完成之后會(huì)生成一個(gè) .p12 文件和一個(gè) .csr 文件,這兩個(gè)文件很重要缺一不可。

生成應(yīng)用證書文件:生成應(yīng)用證書文件的格式為 .cer,由華為 AppGallery Connect 頒發(fā)。

先進(jìn)入 openharmonysdk 的目錄下,這里是 deveco studio 的安裝目錄,然后敲命令行,執(zhí)行如下命令:

f126f694-458d-11ec-b939-dac502259ad0.png

keytool 是 jdk 中的一個(gè)工具,在我把路徑加好之后仍然找不到,所以大家如果也遇到我的這個(gè)錯(cuò)誤可以直接加上全路徑。

這里只需要關(guān)注的兩個(gè)參數(shù),一個(gè)是 -input,另外一個(gè)是 -output。
  • -input:這里需要填寫的路徑是在上面步驟中生成的 .csr 文件。

  • -output:這里需要填寫的是這一次操作會(huì)生成的應(yīng)用證書文件:.cer,這在簽名中會(huì)用到。

生成應(yīng)用 Profile 文件:這一步和上面一樣需要先進(jìn)入到 deveco studio 安裝目錄中的 openharmony sdk 路徑下,然后敲命令行,如下圖所示:

f1b66d56-458d-11ec-b939-dac502259ad0.png

命令中的 provisionsigtool.jar 這個(gè)文件在 sdk 目錄中就存在。

這里需要注意的參數(shù)有 -out 和 distribution-certificate:

  • -out:這個(gè)參數(shù)指定本次生成的文件存放目錄,為 .p7b。

  • distrubution-certificate:這個(gè)參數(shù)用來指定上文中生成的 .cer 文件。

配置應(yīng)用簽名信息:在 deveco studio 中按照下述圖片點(diǎn)擊出第二副配置界面:

f218e396-458d-11ec-b939-dac502259ad0.png

按照上圖點(diǎn)擊 Project Structure,然后彈出:

f2926a04-458d-11ec-b939-dac502259ad0.png

上圖中的 .p12 文件為 2.1.1 中生成的,上圖中的密碼是 2.1.1 中設(shè)置的密碼,key alias 也是在 2.1.1 中設(shè)備的別名;上圖中的 .p7b 文件是在 2.1.3 中生成的,上圖中的 .cer 文件是在 2.1.2 中生成的。

打 release 的 hap 包:按照下圖所示,使用 dev eco 進(jìn)行生成 hap 包。

f33da6b2-458d-11ec-b939-dac502259ad0.png

②將上文中生成好的帶簽名的 hap 包燒錄進(jìn)去系統(tǒng)

PS:本身琢磨源碼的想法,所以我沒有采用工具進(jìn)行安裝,而是把 hap 包放入系統(tǒng)源碼中,然后修改一些配置文件,讓其成為系統(tǒng)的自帶應(yīng)用,然后編譯,最后在燒錄系統(tǒng)。

這里對(duì)燒錄系統(tǒng)有疑問,而你恰好也是 ubuntu 系統(tǒng)的話,可以參考我的上一篇文章:

https://harmonyos.51cto.com/posts/8994

將 hap 包放入指定位置:將 hap 包放入到 applications/standard/hap 目錄下。

f3bc8efa-458d-11ec-b939-dac502259ad0.png

上圖中可以看到我將 hap 包重新命名為了 Temp.hap。

修改編譯配置文件:這里的編譯配置文件一共需要修改兩個(gè),一個(gè)是 BUILD.gn,另一個(gè)是 ohos.build。

applications/standard/hap/BUILD.gn,按照下圖進(jìn)行添加:

f4492586-458d-11ec-b939-dac502259ad0.png

applications/standard/hap/ohos.build,按照下圖進(jìn)行添加:

f4c714a0-458d-11ec-b939-dac502259ad0.png

啟動(dòng)編譯:執(zhí)行下列命令進(jìn)行編譯。

./build.sh--product-nameHi3516DV300

編譯完成之后,進(jìn)行燒錄,就可以看到誘人的 ArkUI 應(yīng)用了。

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

    關(guān)注

    183

    文章

    2642

    瀏覽量

    69857
  • HarmonyOS
    +關(guān)注

    關(guān)注

    80

    文章

    2153

    瀏覽量

    36058

原文標(biāo)題:親測(cè)!ArkUI在3516標(biāo)準(zhǔn)系統(tǒng)可以完美跑起來!

文章出處:【微信號(hào):gh_834c4b3d87fe,微信公眾號(hào):OpenHarmony技術(shù)社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    何在DGX Spark運(yùn)行NVIDIA Omniverse

    首先感謝 Vigor 同學(xué)第時(shí)間的分享,以下是具體如何在 DGX Spark 運(yùn)行 Omniverse 的方法。
    的頭像 發(fā)表于 12-17 10:13 ?618次閱讀
    如<b class='flag-5'>何在</b>DGX Spark<b class='flag-5'>上</b>運(yùn)行NVIDIA Omniverse

    何在RT-Thread創(chuàng)建個(gè)GD32F470工程?

    何在RT-Thread創(chuàng)建個(gè)GD32F470工程
    發(fā)表于 09-23 06:09

    【HarmonyOS next】ArkUI-X休閑娛樂搞笑日歷【基礎(chǔ)】

    引言 在跨平臺(tái)應(yīng)用開發(fā)中,網(wǎng)絡(luò)圖片在不同設(shè)備的適配展示是常見挑戰(zhàn)。本文將基于HarmonyOS next的ArkUI-X框架,通過個(gè)休閑娛樂日歷應(yīng)用,展示如何實(shí)現(xiàn)網(wǎng)絡(luò)圖片在華為和i
    發(fā)表于 06-28 22:07

    【HarmonyOS next】ArkUI-X新聞熱搜聚合App【進(jìn)階】

    通過ArkUI-X將鴻蒙下的新聞熱搜聚合App轉(zhuǎn)換為iOS 、項(xiàng)目背景與技術(shù)選型 1.1 項(xiàng)目概述 本案例基于鴻蒙(HarmonyOS)開發(fā)的聚合熱搜熱榜應(yīng)用,通過調(diào)用韓小韓博客提供
    發(fā)表于 06-28 21:43

    【HarmonyOS next】ArkUI-X休閑益智兒童拼圖【進(jìn)階】

    項(xiàng)目,我們驗(yàn)證了ArkUI-X框架的強(qiáng)大跨端能力。無論是華為的鴻蒙系統(tǒng),還是iOS平臺(tái),都能保持90%以上代碼復(fù)用率,真正實(shí)現(xiàn)了\"次開發(fā),多端部署\"的理想狀態(tài)。期待
    發(fā)表于 06-28 21:41

    ArkUI-X案例解析

    ;: \"file:../../../features/main\", } } } Products差異性性拆分 以鴻蒙世界為例,HarmonyOS Next設(shè)備應(yīng)用持有5個(gè)
    發(fā)表于 06-23 22:40

    ArkUI-X應(yīng)用工程結(jié)構(gòu)說明

    )并可以部署到相應(yīng)的OS平臺(tái),降低跨平臺(tái)應(yīng)用開發(fā)成本。 應(yīng)用工程目錄結(jié)構(gòu)介紹 跨平臺(tái)應(yīng)用工程目錄結(jié)構(gòu)說明 以IDE創(chuàng)建的模板工程【ArkUI-X】Empty Ability舉例,包含套為ArkUI
    發(fā)表于 06-19 23:11

    ArkUI-X跨平臺(tái)技術(shù)落地-華為運(yùn)動(dòng)健康(二)

    進(jìn)行設(shè)置,Entry模塊收到該參數(shù)之后,解析參數(shù)從而決定拉起的頁面,個(gè)簡(jiǎn)單的示意圖如下所示: ArkUI-X與原生之間的bridge橋接通信 ArkUI-X SDK 提供了
    發(fā)表于 06-18 23:04

    ArkUI-X跨平臺(tái)技術(shù)落地-華為運(yùn)動(dòng)健康()

    開發(fā)工作量以及保證體驗(yàn)致性,對(duì)于運(yùn)動(dòng)健康A(chǔ)pp而言,顯得尤為重要。作為鴻蒙NEXT系統(tǒng)生態(tài)中的重要員,ArkUI-X框架是我們跨平臺(tái)技術(shù)
    發(fā)表于 06-18 22:53

    ArkUI-X跨平臺(tái)應(yīng)用改造指南

    ArkUI-X跨平臺(tái)應(yīng)用改造指南 現(xiàn)狀與訴求 隨著 HarmonyOS Next 5.0 版本正式發(fā)布,眾多開發(fā)者基于 ArkTS 語言為 HarmonyOS Next 系統(tǒng)開發(fā)了大量應(yīng)用,這極大
    發(fā)表于 06-16 23:05

    ArkUI-X在Android平臺(tái)動(dòng)態(tài)化開發(fā)指南

    本文介紹如何在Android平臺(tái)進(jìn)行ArkUI-X動(dòng)態(tài)化開發(fā),包括動(dòng)態(tài)化目錄規(guī)則及約束。 適用場(chǎng)景 動(dòng)態(tài)化主要包括兩個(gè)典型場(chǎng)景: 場(chǎng)景1:框架動(dòng)態(tài)化,為了降低應(yīng)用ROM體積占用,及滿足動(dòng)態(tài)升級(jí)框架
    發(fā)表于 06-15 23:33

    ArkUI-X框架LogInterface使用指南

    ArkUI-X框架支持日志攔截能力,Android側(cè)提供原生接口,用于注入LogInterface接口,框架日志及ts日志通過該接口輸出,本文的核心內(nèi)容是介紹如何在Android平臺(tái)上有效利用
    發(fā)表于 06-15 23:20

    ArkUI-X與Android消息通信

    。指定名稱,該名稱應(yīng)與ArkUI側(cè)平臺(tái)橋接的名稱致。通過創(chuàng)建的該對(duì)象即可調(diào)用平臺(tái)橋接的方法。 // xxx.java Bridge bridge = new Bridge(this, \"
    發(fā)表于 06-08 22:15

    Kuikly鴻蒙版正式開源 —— 揭秘卓越性能適配之旅

    6倍 Kuikly鴻蒙版對(duì)齊Android版高性能表現(xiàn),與原生打開速度基本致 總體適配方案 Kuikly架構(gòu)回顧和優(yōu)勢(shì) Kuikly是個(gè)
    發(fā)表于 06-04 16:46

    ArkUI-X跨平臺(tái)框架接入指南

    ArkUI跨平臺(tái)框架(ArkUI-X)進(jìn)步將ArkUI開發(fā)框架擴(kuò)展到了多個(gè)OS平臺(tái):目前支持OpenHarmony、Android、 iOS,后續(xù)會(huì)逐步增加更多平臺(tái)支持。開發(fā)者基于
    發(fā)表于 05-18 18:21