搭載API 8的新SDK已經(jīng)發(fā)布。圍繞著新SDK,官方貼心地輸出了一波Sample,供各位開(kāi)發(fā)者參考。本期我們將介紹6個(gè)基于eTS實(shí)現(xiàn)的Sample,開(kāi)發(fā)者可以從中掌握基于TS擴(kuò)展的聲明式開(kāi)發(fā)范式的核心機(jī)制和功能,同時(shí)還能從中學(xué)習(xí)新增接口的特性及用法,讓我們先睹為快!
Sample1:FlipClock簡(jiǎn)介:
本示例展示了一個(gè)多功能的時(shí)鐘,如圖1所示,時(shí)鐘采用了數(shù)字翻頁(yè)的方式來(lái)顯示時(shí)間,并提供了創(chuàng)建鬧鐘及倒計(jì)時(shí)的功能,同時(shí)還可以在“設(shè)置”里面設(shè)置時(shí)鐘的休眠及屏幕亮度。通過(guò)學(xué)習(xí)本Sample,你可以掌握鬧鐘及倒計(jì)時(shí)等后臺(tái)代理提醒功能的實(shí)現(xiàn),同時(shí)還能掌握屏幕亮度、運(yùn)行鎖等相關(guān)接口的使用。
圖1 FlipClock
重點(diǎn)剖析:
1時(shí)鐘的時(shí)間顯示采用Text組件實(shí)現(xiàn),通過(guò)調(diào)用rotate()接口將文本按指定坐標(biāo)軸進(jìn)行順時(shí)針旋轉(zhuǎn),從而實(shí)現(xiàn)數(shù)字翻頁(yè)的效果。
2鬧鐘及倒計(jì)時(shí)功能通過(guò)@ohos.reminderAgent模塊實(shí)現(xiàn),該模塊提供了一系列后臺(tái)代理提醒的接口,相關(guān)接口如下:
3設(shè)置屏幕亮度通過(guò)@ohos.brightness模塊實(shí)現(xiàn),該模塊提供了設(shè)置設(shè)備當(dāng)前的屏幕亮度的接口,相關(guān)接口如下:
4休眠功能通過(guò)@ohos.runningLock模塊實(shí)現(xiàn),該模塊提供了運(yùn)行鎖的一系列接口,相關(guān)接口如下:
源碼下載鏈接:
https://gitee.com/openharmony/app_samples/tree/master/CompleteApps/FlipClock
Sample2:International簡(jiǎn)介: 本示例展示了系統(tǒng)的國(guó)際化信息的設(shè)置,如圖2所示,用戶可以選擇當(dāng)前地區(qū)、設(shè)置系統(tǒng)語(yǔ)言,還可以設(shè)置日期、時(shí)間、時(shí)區(qū)等。同時(shí)還展示了當(dāng)前系統(tǒng)語(yǔ)言下的時(shí)間、數(shù)字、貨幣、百分比、單復(fù)數(shù)、屏幕方向等信息的格式化顯示。通過(guò)學(xué)習(xí)本Sample,你可以掌握“國(guó)際化-i18n”標(biāo)準(zhǔn)的實(shí)現(xiàn),同時(shí)還可以掌握設(shè)置系統(tǒng)時(shí)間的相關(guān)接口的使用。
圖2International
重點(diǎn)剖析:
1本示例中系統(tǒng)的語(yǔ)言、地區(qū)、時(shí)區(qū)等國(guó)際化統(tǒng)一標(biāo)準(zhǔn)通過(guò)@ohos.i18n模塊實(shí)現(xiàn),該模塊提供了獲取國(guó)際化標(biāo)準(zhǔn)信息的一系列接口,相關(guān)接口如下:
2系統(tǒng)時(shí)間的設(shè)置通過(guò)@ohos.systemTime模塊實(shí)現(xiàn),該模塊提供了設(shè)置系統(tǒng)日期、時(shí)間、時(shí)區(qū)等一系列接口,相關(guān)接口如下:
源碼下載鏈接: https://gitee.com/openharmony/app_samples/tree/master/common/International
Sample3:Shopping簡(jiǎn)介: 本示例展示了一個(gè)仿購(gòu)物類(lèi)應(yīng)用。如圖3所示,像我們經(jīng)常使用的購(gòu)物應(yīng)用一樣,本示例提供了商品展示、商品搜索、購(gòu)物車(chē)、消息提醒等功能,各界面中圖片、視頻、文本等資源規(guī)整地呈現(xiàn),且加載速度快、滑動(dòng)效果流暢。通過(guò)學(xué)習(xí)本Sample,你可以熟悉eTS的聲明式語(yǔ)法,并能掌握應(yīng)用界面的懶加載優(yōu)化,同時(shí)還可以掌握Swiper、Tabs等組件的使用。
重點(diǎn)剖析:
1各界面均使用Flex、Cloumn、Row、Grid等混合布局實(shí)現(xiàn),并通過(guò)聲明式語(yǔ)法描述,使得界面布局豐富多樣。
2界面中的數(shù)據(jù)使用LazyForEach組件加載,以懶加載的方式從提供的數(shù)據(jù)源中按需迭代數(shù)據(jù),以此減小應(yīng)用內(nèi)存、提升用戶體驗(yàn)。
3界面內(nèi)的滑動(dòng)效果均采用了Swiper滑動(dòng)容器,該組件實(shí)現(xiàn)了界面流暢地滑動(dòng),并提供了切換子組件顯示的能力。
4界面內(nèi)標(biāo)簽容視圖的切換通過(guò)Tabs組件實(shí)現(xiàn),每個(gè)界面標(biāo)簽對(duì)應(yīng)一個(gè)內(nèi)容視圖。
源碼下載鏈接: https://gitee.com/openharmony/app_samples/tree/master/AppSample/Shopping
Sample4:Chat簡(jiǎn)介: 本示例展示了一個(gè)仿聊天類(lèi)的應(yīng)用。如圖4所示,像我們經(jīng)常使用的聊天應(yīng)用一樣,本示例提供了發(fā)起聊天、添加好友、發(fā)起群聊、社區(qū)圖片展示等功能。同時(shí),用戶還可設(shè)置保存記錄,使應(yīng)用退出時(shí)記住當(dāng)前狀態(tài),下次打開(kāi)恢復(fù)當(dāng)前狀態(tài)。通過(guò),學(xué)習(xí)本Sample你可以熟悉eTS的聲明式語(yǔ)法,并能掌握應(yīng)用界面數(shù)據(jù)的懶加載優(yōu)化與輕量級(jí)存儲(chǔ)的開(kāi)發(fā),同時(shí)還能掌握界面跳轉(zhuǎn)相關(guān)接口的使用。
重點(diǎn)剖析:
1各界面均使用Flex、Cloumn、Row等混合布局實(shí)現(xiàn),并通過(guò)聲明式語(yǔ)法描述,使得界面布局豐富多樣。
2保存記錄功能通過(guò)@ohos.data.storage模塊實(shí)現(xiàn),該模塊提供了輕量級(jí)存儲(chǔ)開(kāi)發(fā)的接口,為應(yīng)用提供key-value鍵值型的文件數(shù)據(jù)處理能力,支持應(yīng)用對(duì)數(shù)據(jù)進(jìn)行輕量級(jí)存儲(chǔ)及查詢。相關(guān)接口如下:
3由于“聊天”和“通訊錄”模塊數(shù)據(jù)量較大,所以使用了LazyForEach組件進(jìn)行數(shù)據(jù)的懶加載,以減小應(yīng)用內(nèi)存、提升用戶體驗(yàn)。
4各個(gè)頁(yè)面間的跳轉(zhuǎn)通過(guò)@ohos.router(從API8開(kāi)始支持)路由模塊實(shí)現(xiàn),該模塊提供了應(yīng)用中頁(yè)面路由的一系列接口,相關(guān)接口如下:
源碼下載鏈接: https://gitee.com/openharmony/app_samples/tree/master/AppSample/Chat
Sample5:DeviceUsageStatistics簡(jiǎn)介: 本示例展示了當(dāng)前設(shè)備中應(yīng)用程序使用情況的信息。如圖5所示,頂部的數(shù)據(jù)面板展示了最常用的五個(gè)應(yīng)用的使用時(shí)間占比情況,中部的豎向滑動(dòng)欄展示了每個(gè)應(yīng)用的使用總時(shí)長(zhǎng)和最后一次使用的時(shí)間,底部的橫向滑動(dòng)欄展示了不常用應(yīng)用列表。通過(guò)學(xué)習(xí)本Sample,你可以掌握獲取設(shè)備應(yīng)用狀態(tài)的相關(guān)接口的使用。
圖5DeviceUsageStatistics
重點(diǎn)剖析:
1獲取設(shè)備應(yīng)用使用時(shí)長(zhǎng)通過(guò)@ohos.bundlestate模塊實(shí)現(xiàn),該模塊提供了獲取當(dāng)前設(shè)備應(yīng)用狀態(tài)的一系列接口,相關(guān)接口如下:
源碼下載鏈接: https://gitee.com/openharmony/app_samples/tree/master/device/DeviceUsageStatistics
Sample6:NativeAPI簡(jiǎn)介: 本示例展示了一個(gè)由C++完成邏輯計(jì)算并由eTS完成界面繪制的五子棋游戲,如圖6所示。通過(guò)學(xué)習(xí)本Sample,你可以掌握在eTS中如何調(diào)用C++的接口,同時(shí)還能掌握彈窗模塊的接口的使用。
圖6NativeAPI
重點(diǎn)剖析:
1eTS側(cè)通過(guò)import chessNapi from "libchess.so"引入C++側(cè)的邏輯能力,從而實(shí)現(xiàn)C++接口的調(diào)用。
2應(yīng)用中的彈窗通過(guò)@ohos.prompt(從API8開(kāi)始支持)模塊實(shí)現(xiàn),該模塊提供了界面彈窗操作的一系列接口,相關(guān)接口如下:
源碼下載鏈接: https://gitee.com/openharmony/app_samples/tree/master/Native/NativeAPI
是不是超級(jí)實(shí)用呀,趕快點(diǎn)擊鏈接下載學(xué)習(xí)吧!同時(shí),使用過(guò)程中有任何問(wèn)題或者需求,歡迎開(kāi)發(fā)者到碼云OpenHarmony/app_samples倉(cāng)庫(kù)提交Issue。
審核編輯:湯梓紅
-
API
+關(guān)注
關(guān)注
2文章
1502瀏覽量
62123 -
Sample
+關(guān)注
關(guān)注
0文章
11瀏覽量
8722 -
SDK
+關(guān)注
關(guān)注
3文章
1038瀏覽量
46001
原文標(biāo)題:Sample上新,從API 8開(kāi)始支持!速來(lái)拿走
文章出處:【微信號(hào):HarmonyOS_Dev,微信公眾號(hào):HarmonyOS開(kāi)發(fā)者】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論