電子產(chǎn)業(yè)一站式賦能平臺

PCB聯(lián)盟網(wǎng)

搜索
查看: 709|回復(fù): 0
收起左側(cè)

【HarmonyOS】鴻蒙小科普

[復(fù)制鏈接]

2607

主題

2607

帖子

7472

積分

高級會員

Rank: 5Rank: 5

積分
7472
跳轉(zhuǎn)到指定樓層
樓主
發(fā)表于 2020-11-4 11:56:34 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
【HarmonyOS】鴻蒙小科普,   
到底什么是鴻蒙OS
在官網(wǎng)上看到鴻蒙OS的簡介是,分布式能力造就新硬件、新交互、新服務(wù),打開煥然一新的全場景世界。以及發(fā)布會提及最多是他的萬物互連,全場景,分布式,微內(nèi)核,軟總線。
換句話說,鴻蒙OS是為全場景,分布式設(shè)計的, 微內(nèi)核,軟總線是他重要的實現(xiàn)。
對于全場景,分布式理解,我們可以想一下華為自家的多屏協(xié)作,以及電腦,平板和手機(jī)可以很方便實現(xiàn)在電腦上操作平板,手機(jī)。
另外現(xiàn)在雙11買到的一些新上市家電,上面可以看到鴻蒙的小logo,這些帶上鴻蒙的家電,可以通過碰一碰無需安裝app實現(xiàn)配置組網(wǎng),也十分方便。
在華為開發(fā)者大會上,華為也展示了一些精彩的案例.大家有興趣回頭翻一翻。這些都是通過全場景,分布式特性做到的新交互和體驗,十分讓人期待。
到此應(yīng)該有一個疑問,如果不用鴻蒙OS,能不能實現(xiàn)以上交互?多屏協(xié)同,多設(shè)備協(xié)同?
答案是可以的,官方有提到,他們把鴻蒙OS一些能力,例如分布式提出來放到EMUI上.我們在華為的開發(fā)平臺上可以看到一些kit和鴻蒙有關(guān)的有設(shè)備虛擬化、HiCar、HiLink、碰一碰等。
這些kit是可以讓設(shè)備在不上鴻蒙的情況下,實現(xiàn)全場景,分布式.他們做的類似做一個中間層,app和設(shè)備端分別接入這些kit的sdk。 那么和直接用鴻蒙OS有什么區(qū)別呢? 開發(fā)會上官方給出了答案,不上鴻蒙也是可以實現(xiàn)的,不過鴻蒙OS的性能會更好一點。
聊一下kit
在聊開發(fā)之前,我想聊一下華為提供一些有意思的kit。

我比較感興趣的是設(shè)備虛擬化能力和碰一碰
設(shè)備虛擬化能力(DeviceVirtualization Engine),是通過虛擬化技術(shù)將相關(guān)設(shè)備或器件打造成手機(jī)器件或能力的延伸,可以將家中的電視、攝像頭和音箱虛擬為手機(jī)的屏幕、Camera和Mic/Speaker,將穿戴設(shè)備作為手機(jī)的虛擬Sensor,實現(xiàn)手機(jī)為中心的全場景體驗。
此處又應(yīng)該有疑問 , 這個設(shè)備虛擬化和我們平時用的投屏,藍(lán)牙音箱有什么區(qū)別?

   

         
  • 靈活性, 投屏,藍(lán)牙音箱,藍(lán)牙話筒是實現(xiàn)單一功能設(shè)備.用戶可以根據(jù)需要選擇所需的設(shè)備.
         
  • 應(yīng)用級的, 舉個例子,可能開會需要,在會議app才需要話筒音箱.來電了依然是用手機(jī)上的話筒聽筒.
         
  • 可擴(kuò)展性, 除了常見的多媒體.他這個還支持外接傳感器,馬達(dá),消息通知等


      
       

碰一碰能力(OneHop Engine)是通過NFC來解決App跨設(shè)備接續(xù)難、設(shè)備配網(wǎng)難、傳輸難的問題的一個方案。
他們定義了一些常見的場景下的功能方向以及兩種集成方案.


例如,美的電器接入碰一碰可以做到免安裝配網(wǎng)。這點十分方便,特別是家有老人。之前的配網(wǎng)流程起碼分成3步,安裝app,掃碼,配置。而這套方案就只要3秒。

開發(fā)
鴻蒙OS目前開放了應(yīng)用開發(fā)和設(shè)備開發(fā)。
應(yīng)用開發(fā)是我們的重頭戲,可以為搭載鴻蒙的智慧屏,手表,車機(jī)開發(fā)應(yīng)用。通過華為提供的devEco IDE建立應(yīng)用開發(fā)項目,具體開發(fā)步驟有比較多的教程就不細(xì)說了。

開發(fā)可以使用java和js語言.
Java開發(fā)的話,跟Android開發(fā)差不多.
這里注意的是通過js開發(fā)的話,但是通過Htm并非html來寫UI.在語法上類似vue
JS引擎是JerryScript . 能夠在內(nèi)存少于 64 KB 的設(shè)備上執(zhí)行 ECMAScript 5.1 源代碼.
那實際上下面要提到的設(shè)備開發(fā)邏輯是也可以部分用js實現(xiàn)的.不過官方文檔比較少.也沒有demo提供.但個js runtime是可以作為組件一起編譯燒錄的.
應(yīng)用開發(fā)中,我比較感興趣的是跨設(shè)備調(diào)用,下面這個例子是從智慧屏app上調(diào)用其他設(shè)備頁面的.

這里可以看到優(yōu)點十分明顯
在這里我們開發(fā)無需關(guān)心通信,以及傳輸安全問題.在智慧屏上這么寫,在手表上也是這么寫.也就是他們說的一次開發(fā)多端部署, 提供成熟方案,不用放更多精力在安全機(jī)制,組網(wǎng)連接和基礎(chǔ)通信上。聚焦業(yè)務(wù),快速完成原型開發(fā)。
但也有一些約束與限制

   

         
  • 支持主設(shè)備側(cè)遠(yuǎn)程啟動從設(shè)備側(cè)FA,不支持從設(shè)備遠(yuǎn)程啟動主設(shè)備FA。
         
  • 需要同一局域網(wǎng)內(nèi)
         
  • 需要認(rèn)證,當(dāng)前只支持擁有共同公鑰信息的主從設(shè)備間FA(即主從設(shè)備的FA使用相同華為證書)的拉起。
         
  • 工具鏈還需完善,如果選擇智能手表和智慧屏這兩個平臺進(jìn)行App的開發(fā),目前華為還沒有開放基于X86的本地模擬器,因此,需要將編譯后安裝到遠(yuǎn)程的ARM處理器以運行代碼,在本機(jī)上只能預(yù)覽運行結(jié)果,而無法在本機(jī)上運行和調(diào)試代碼。開發(fā)效率相對慢一點,相信華為后面應(yīng)該會補齊。


      
       
設(shè)備開發(fā)
針對設(shè)備開發(fā)者,OpenHarmony采用了組件化的設(shè)計方案,可以根據(jù)設(shè)備的資源能力和業(yè)務(wù)特征進(jìn)行靈活裁剪,滿足不同形態(tài)的終端設(shè)備對于操作系統(tǒng)的要求?蛇\行在百K級別的資源受限設(shè)備和穿戴類設(shè)備,也可運行在百M級別的智能家用攝像頭/行車記錄儀等相對資源豐富的設(shè)備。
我先講一下設(shè)備開發(fā)的限制,目前開源的僅支持128k~128M設(shè)備. 而電視的運行內(nèi)存一般在2G以上,普遍3~4G.那實際上可以滿足除了電視,手表wear,手機(jī)的大部分設(shè)備。
開發(fā)流程是源碼獲取/組件管理->編碼實現(xiàn)邏輯->編譯->燒錄,按官網(wǎng)教程走一遍就能在開發(fā)板板上跑起來了.
前面說到的一些kit , 設(shè)備虛擬化和碰一碰也是可以用在設(shè)備開發(fā)上的.
不過設(shè)備虛擬化 , DVKit SDK 預(yù)計2020年12月 年底才提供。
還有碰一碰
以下是官方提供的一個打印機(jī)通過碰一碰實現(xiàn)文件傳輸?shù)睦?br />
接下來聊一下華為的鴻蒙發(fā)布計劃
明年中發(fā)布4G以下,4G以下應(yīng)該對應(yīng)車機(jī)和wear
年底發(fā)布4G以上,這個應(yīng)該是對應(yīng)手機(jī).手機(jī)的話大家都認(rèn)為得意義不是很大,也不太可能成為主流.我也是這么認(rèn)為.
我個人認(rèn)為鴻蒙的發(fā)力點應(yīng)該是在電視,穿戴,車機(jī)上.以及提供極致的生態(tài)體驗!

總結(jié)
真不容易
短時間來構(gòu)建生態(tài),工具鏈,方案已經(jīng)很不容易.現(xiàn)在這些已經(jīng)比較完善了

生態(tài)思考
小米,oppo,vivo,魅族手機(jī)廠商會不會加入1+8+N生態(tài)?
海爾會不會加入1+8+N生態(tài)?
車機(jī)會不會加入1+8+N生態(tài)?
回復(fù)

使用道具 舉報

發(fā)表回復(fù)

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則


聯(lián)系客服 關(guān)注微信 下載APP 返回頂部 返回列表