之前測試過使用華為DevEco開發(fā)智能電視應(yīng)用。前幾天華為發(fā)布了手機(jī)的測試版,不能免俗,抓緊嘗試一下。
成都網(wǎng)站建設(shè)哪家好,找創(chuàng)新互聯(lián)!專注于網(wǎng)頁設(shè)計(jì)、成都網(wǎng)站建設(shè)、微信開發(fā)、微信小程序、集團(tuán)企業(yè)網(wǎng)站設(shè)計(jì)等服務(wù)項(xiàng)目。核心團(tuán)隊(duì)均擁有互聯(lián)網(wǎng)行業(yè)多年經(jīng)驗(yàn),服務(wù)眾多知名企業(yè)客戶;涵蓋的客戶類型包括:成都護(hù)欄打樁機(jī)等眾多領(lǐng)域,積累了大量豐富的經(jīng)驗(yàn),同時也獲得了客戶的一致稱譽(yù)!
手頭沒有華為手機(jī)測試系統(tǒng),現(xiàn)在試一下開發(fā)環(huán)境跑模擬器感受一下。
以前DevEco里是沒有手機(jī)選項(xiàng)的,現(xiàn)在該選項(xiàng)可以看到了:
這里測試一下Business Card Ability(Java)開發(fā)。
DevEco和Android Studio一樣基于開源的Idea版本開發(fā)的,其結(jié)構(gòu)與安卓開發(fā)環(huán)境非常像,熟悉安卓的小伙伴應(yīng)該能很快上手。
入口程序是一個MyApplication,從AbilityPackage繼承。
它首先找到了連接的榮耀手機(jī),但這個手機(jī)不是鴻蒙系統(tǒng)。
編譯是成功了,但提示設(shè)備無法使用:
點(diǎn)擊Tools - HVD Manager
首先提示登陸華為賬號,登陸后,選擇一個模擬器運(yùn)行:
啟動以后長這個樣:
點(diǎn)擊設(shè)置,先看看關(guān)于:
上面顯示大大的HarmonyOS。但感覺畫面很模糊,不知道模擬器到底是運(yùn)行在本地的,還是云端的。但DevEco上顯示是Remote Device字樣。
鴻蒙OS版本號 2.0.0 Developer Beta1。
再點(diǎn)運(yùn)行,在指定的模擬器上運(yùn)行程序。
不過仍然運(yùn)行失?。?/p>
鴻蒙OS版本與平板是一致的,
程序終于跑起來了:
看起來安卓程序好像真能在鴻蒙直接運(yùn)行,安裝一個快手試試:
還真能看:
我真分不清這是安卓還是鴻蒙了 。
根據(jù)華為公布的方舟編譯器資料,可以得知鴻蒙系統(tǒng)是用C、C++語言編寫。
鴻蒙系統(tǒng)和方舟編譯器的思路是一樣:直接使用機(jī)器語言編寫app,取消安卓系統(tǒng)的ART虛擬機(jī),直接編譯為二進(jìn)制機(jī)器碼;
這樣的好處是:不需要中轉(zhuǎn),執(zhí)行速度快;劣勢是:必須要有大量的靜態(tài)方案、內(nèi)存空間要求更高。
擴(kuò)展資料
系統(tǒng)簡介
鴻蒙微內(nèi)核是基于微內(nèi)核的全場景分布式OS,可按需擴(kuò)展,實(shí)現(xiàn)更廣泛的系統(tǒng)安全,主要用于物聯(lián)網(wǎng),特點(diǎn)是低時延,甚至可到毫秒級乃至亞毫秒級。
鴻蒙OS實(shí)現(xiàn)模塊化耦合,對應(yīng)不同設(shè)備可彈性部署,鴻蒙OS有三層架構(gòu),第一層是內(nèi)核,第二層是基礎(chǔ)服務(wù),第三層是程序框架 。
可用于手機(jī)、平板、PC、汽車等各種不同的設(shè)備上。還可以隨時用在手機(jī)上,但暫時華為手機(jī)端依然優(yōu)先使用安卓、華為電腦端依然優(yōu)先使用windows和Linux。
參考資料來源:百度百科-華為鴻蒙系統(tǒng)
開發(fā)前可以了解下鴻蒙: [鴻蒙開發(fā) 序]華為鴻蒙操作系統(tǒng)(HarmonyOS)簡介及開發(fā)環(huán)境搭建
開發(fā)前的準(zhǔn)備:「鴻蒙開發(fā) 1」華為鴻蒙應(yīng)用集成開發(fā)環(huán)境DevEco Studio安裝和設(shè)置
了解鴻蒙應(yīng)用開發(fā)的基本開發(fā)流程:「鴻蒙開發(fā) 2」第一個華為鴻蒙(HarmonyOS)應(yīng)用程序(App)
本章目標(biāo):
1 了解華為鴻蒙應(yīng)用開發(fā)的可視化(低代碼)方式
2 通過構(gòu)建一個簡單的具有頁面跳轉(zhuǎn)功能的應(yīng)用
低代碼開發(fā)方式,即通過可視化界面開發(fā)方式快速構(gòu)建布局、編輯UI界面,可有效降低用戶的上手成本并提升用戶構(gòu)建UI界面的效率。
1 打開DevEco Studio,創(chuàng)建一個新工程,選擇支持Phone / Tablet / Wearable(手機(jī) / 平板 / s可穿戴)的模板,我們在此直接選擇Empty Ability
Project name工程名稱填SuperVisual
Development mode開發(fā)方式選擇Super Visual
其它的可以使用默認(rèn)設(shè)置,點(diǎn)擊完成,進(jìn)入編輯界面
1 在Project(項(xiàng)目)窗口,刪除工程運(yùn)行默認(rèn)的入口文件夾:“entry src main js default pages index”文件夾
2 在Project窗口,選擇工程中的“entry src main js default pages”,單擊鼠標(biāo)右鍵,選擇“New JS Visual”
JS visual name填first,點(diǎn)擊完成,進(jìn)入編輯界面
創(chuàng)建完成后,可以看到“entry src main supervisual default pages page page.visual”的文件目錄結(jié)構(gòu)
3 第一個頁面內(nèi)有一個容器、文本和一個按鈕,通過Div、Text和Button組件來實(shí)現(xiàn)
(1)分別選中first.visual畫面中的Text、Div組件,單擊鼠標(biāo)右鍵,選擇Delete刪除
(2)選中UI Control中的Div組件,將其拖至畫布
點(diǎn)擊右側(cè)屬性樣式欄中的通用樣式圖標(biāo)(General),設(shè)置Div組件的高度Height為100%,使其占滿屏幕
點(diǎn)擊右側(cè)屬性樣式欄中的樣式圖標(biāo)(Flex),設(shè)置Div組件的FlexDirection樣式為column,使Div的主軸垂直;設(shè)置Div組件的JustifyContent樣式為center,使得其子組件在主軸上居中顯示;設(shè)置Div組件的AlignItems樣式為center,使得其子組件在交叉軸上居中顯示
(3)選中UI Control中的Text組件,將其拖至Div組件的中央?yún)^(qū)域
點(diǎn)擊右側(cè)屬性樣式欄中的屬性圖標(biāo)(Properties),設(shè)置Text組件的Content屬性為 “ Hello World ”
點(diǎn)擊右側(cè)屬性樣式欄中的通用樣式圖標(biāo)(General),設(shè)置Text組件的寬(width)為100%,高(height)為100px
點(diǎn)擊右側(cè)屬性樣式欄中的樣式圖標(biāo)(Feature),設(shè)置組件的FontSize樣式為60px,使得其文字放大;設(shè)置組件的TextAlign樣式為center,使得組件文字居中顯示
(4)選中UI Control中的Button組件,將其拖至Text組件下面
點(diǎn)擊右側(cè)屬性樣式欄中的屬性圖標(biāo)(Properties),設(shè)置Button組件的Value屬性為 “ Next ”,
點(diǎn)擊右側(cè)屬性樣式欄中的通用樣式圖標(biāo)(General),設(shè)置按的寬(width)為40%,高(height)為60px
點(diǎn)擊右側(cè)屬性樣式欄中的樣式圖標(biāo)(Feature),設(shè)置組件的FontSize樣式為40px
至此,第一個頁面創(chuàng)建完成
我們可以在預(yù)覽窗口中看效果,點(diǎn)擊右側(cè)邊欄的Preview打開預(yù)覽窗口
1 在Project窗口,選擇工程中的“entry src main js default pages”,單擊鼠標(biāo)右鍵,選擇“New JS Visual”
Visual配置界面,JS visual name填second,回車(Enter鍵)或者點(diǎn)擊完成,進(jìn)入編輯界面
2 第二個頁面中有一個容器和文本,通過Div、Text組件實(shí)現(xiàn),現(xiàn)在編輯器已經(jīng)為我們創(chuàng)建好了,我們就來修改下它們的屬性(你也可以刪除原有的自己創(chuàng)建,具體步驟參考本章第二節(jié)“二 創(chuàng)建第一個頁面”)。
選中Text組件,點(diǎn)擊右側(cè)屬性樣式欄中的屬性圖標(biāo)(Properties),設(shè)置Text組件的Content屬性為 “ Hi,I'm always here. ”
點(diǎn)擊右側(cè)屬性樣式欄中的通用圖標(biāo)(General),設(shè)置組件的寬(width)為100%,高為60px
點(diǎn)擊右側(cè)屬性樣式欄中的樣式圖標(biāo)(Feature),設(shè)置組件的FontSize樣式為36px,TextAlign樣式為center
這樣我們的第二個頁面創(chuàng)建成功了
1 在Project窗口,打開工程中的“entry src main js default pages first first.js”, 導(dǎo)入router模塊,頁面路由router根據(jù)頁面的uri來找到目標(biāo)頁面,從而實(shí)現(xiàn)跳轉(zhuǎn)。示例代碼如下:
2 打開或者切換到first.visual頁面,選中畫布上的Button組件,點(diǎn)擊右側(cè)屬性樣式欄中的事件圖標(biāo)(Events),鼠標(biāo)點(diǎn)擊Click事件的輸入框,選擇launch事件
3 在預(yù)覽窗口中查看項(xiàng)目效果,點(diǎn)擊Next按鈕后發(fā)現(xiàn)我們的頁面成功跳轉(zhuǎn)了。
到此,本章的目標(biāo)就完成了。
一、在華為如日中天的時候,華為都沒敢推鴻蒙系統(tǒng),而是把鴻蒙系統(tǒng)當(dāng)作“備胎”慢慢發(fā)展?,F(xiàn)在,華為被制裁了,只能把鴻蒙系統(tǒng)緊急推出來了。至少,鴻蒙是倉促上馬的系統(tǒng),卻要和一個已經(jīng)發(fā)展許多年,非常成熟的安卓系統(tǒng)競爭,還能輕而易舉地贏了!三星真要哭死在廁所里了。昔日三星聯(lián)合了英特爾搞出來的Tizen系統(tǒng),還是按部就班進(jìn)行的研發(fā),依舊是無法弄出自己的生態(tài)圈,最后只能淪落成家電的系統(tǒng)了。從這個角度來看,安卓工程師不用太擔(dān)心安卓的生態(tài)系統(tǒng)被威脅,鴻蒙的生態(tài)圈很難發(fā)展到能夠與安卓比較。
二、華為自己都說了,鴻蒙系統(tǒng)當(dāng)初設(shè)計(jì)就是想做家電的系統(tǒng),是與三星Tizen類似的東西,主要應(yīng)用方向是家電和物聯(lián)網(wǎng)?,F(xiàn)在是因?yàn)橹撇玫脑颍s鴨子上架成為了手機(jī)系統(tǒng)。這種臨時改變用途的系統(tǒng)需要大動干戈才能完善對手機(jī)的應(yīng)用支持??梢韵胂?,如果鴻蒙系統(tǒng)對手機(jī)的支持有缺陷的話,做手機(jī)應(yīng)用就會非常困難。也因此有理由相信,現(xiàn)在鴻蒙手機(jī)如果對安卓應(yīng)用的支持特別完美,就更說明鴻蒙的“拉皮”可能性了。如此一來,安卓工程師就安心開發(fā)安卓應(yīng)用就好了,因?yàn)轼櫭梢欢梢酝昝肋\(yùn)行你的應(yīng)用,這就沒有放棄安卓開發(fā)的必要了嘛!
至此,我想現(xiàn)在考慮鴻蒙把安卓的陣地攻破了實(shí)在是太早了。所以,大概率,沒有哪個安卓工程師會放棄安卓去弄鴻蒙,頂多是測試一下應(yīng)用能不能在鴻蒙環(huán)境下運(yùn)行罷了。還是把兼容性這件事兒交給鴻蒙去搞吧。
鴻蒙出來的話,安卓工程師并不會失業(yè),取決于自己想不想在鴻蒙上開發(fā)軟件。
鴻蒙的應(yīng)用程序開發(fā),主要是基于Java和NodeJS,基于Java的整體框架結(jié)構(gòu)與安卓極其相似,加上其開發(fā)環(huán)境DevEco Studio與Android Studio同宗,安卓工程師可以極短的時間迅速上手鴻蒙應(yīng)用程序的開發(fā)。當(dāng)然,一些做前端開發(fā)的小伙伴也會進(jìn)入鴻蒙平臺進(jìn)行開發(fā),但這部分小伙伴往往是會用一套代碼、同時適配多個應(yīng)用平臺(類似國產(chǎn)的uni-app),這些本身就在和安卓開發(fā)有一種競爭關(guān)系,并不會因?yàn)轼櫭傻纳a(chǎn)而發(fā)生多大變化。
另外鴻蒙的開發(fā)平臺,也可以很輕松在智能屏、智能手表、車載智能設(shè)備等設(shè)備上調(diào)試開發(fā),總體來說,如果鴻蒙火起來,就會有更多的軟件開發(fā)需求了,安卓開發(fā)工程師會更吃香。建議大家多多接觸鴻蒙生態(tài),多學(xué)一點(diǎn)知識對自己是一個積累儲備,總不會是壞事。
錯,是谷歌、微軟和蘋果要倒閉了!
鴻蒙系統(tǒng)配備方舟編譯器,兼容安卓應(yīng)用,但運(yùn)行效率……(此處省略1000字,翻2019年文章)……鴻蒙系統(tǒng)能在所有設(shè)備運(yùn)行,支持手機(jī)、電腦、平板、物聯(lián)網(wǎng)……(此處省略1000字,翻2019年文章)……
我想說的是你們太不懂華為了,其實(shí)鴻蒙早已開發(fā)完成并且隨時可用!他一直在忍,在等一個機(jī)會……
非??隙ǖ恼f不會失業(yè)。我們知道鴻蒙OS有很多地方借鑒了Android,甚至是說底層有很多Android的代碼,開發(fā)思維很多都跟Android相似。比如寫UI有Java方式和JS方式,而Java方式的UI和Android如出一轍,在Xml里面寫界面,在Java里面獲取控件設(shè)置數(shù)據(jù),處理邏輯等等。鴻蒙里面也有Intent來處理跳轉(zhuǎn)傳數(shù)據(jù),而鴻蒙的Ability更是和Android里面的Context,Activity這一套很相似,分前臺界面顯示,后臺不可以的服務(wù),以及用來傳數(shù)據(jù)的Ability,就像Android里的Content Provider。當(dāng)然它們之前也有不同,但你在方方面面都能看見Android的影子,所以Android開發(fā)者轉(zhuǎn)鴻蒙平臺開發(fā),相比于其它平臺的開發(fā)者,是天然有優(yōu)勢的,只要企業(yè)有需要,幾乎所有Android開發(fā)在適應(yīng)一段時間后都能上手做項(xiàng)目了。
相反的是鴻蒙生態(tài)能不能發(fā)展起來,能不能解決Android,iOS生態(tài)的一些痛點(diǎn)。能否吸引企業(yè)去開發(fā)鴻蒙應(yīng)用,開發(fā)時,能否降低成本。當(dāng)企業(yè)花大量的人力,物力開發(fā)出來的應(yīng)用,沒用戶使用,或者收益甚微,企業(yè)是不愿意去嘗試的。要想發(fā)展鴻蒙生態(tài),這方面不僅華為自己要努力,一些國企,知名大企些帶頭作用,像央視影音,新華網(wǎng),京東等等已經(jīng)發(fā)布鴻蒙平臺的APP了。
如果鴻蒙生態(tài)發(fā)展的很好,有大量的用戶大量的應(yīng)用,擠占了Android和iOS的市場占有量,Android開發(fā)者能迅速轉(zhuǎn)到鴻蒙平臺上,iOS的開發(fā)者要怎么辦呢。也許你會說iOS根本不需要考慮,Android的市場占有率這么高iOS還不是活的好好的,當(dāng)年諾基亞也沒想到自己會倒的這么快。
作為一名android開發(fā)工程師,我想說,失業(yè)是不可能的,這輩子都不可能失業(yè)!
也許身為移動端開發(fā)人員的我們,正處于一段亂流之中!
首先,來談?wù)刟ndroid的碎片化問題。
僅僅2014年,全球支持Android的機(jī)型為18796種,再來看看國內(nèi),華為、小米、oppo、vivo...,android手機(jī)廠商也很多,每個品牌都是基于android開源系統(tǒng)改造,android開發(fā)人員要在完成軟件功能的同時,對不同品牌的手機(jī)做功能適配,非常麻煩。
除了手機(jī)品牌數(shù)量多,手機(jī)屏幕的尺寸適配問題也很麻煩,往往一個軟件的開發(fā),有60%的時間在適配工作上。
是的,現(xiàn)在鴻蒙來了,意味著什么?意味著android開發(fā)人員有必要或者就必須去學(xué)習(xí)一門新語言、一個新系統(tǒng)的開發(fā)、適配,對于一個企業(yè)來說,要么就增加人工成本請一個鴻蒙系統(tǒng)開發(fā)人員,要么就強(qiáng)制在職android開發(fā)人員重新開發(fā)一遍軟件適配鴻蒙系統(tǒng)。
基于此,不知道有多少android開發(fā)人員會買賬,不知道多少企業(yè)會加個鴻蒙系統(tǒng)平臺,不知道鴻蒙系統(tǒng)能不能站住腳推廣開來。
雖然現(xiàn)在鴻蒙系統(tǒng)可以兼容android應(yīng)用,但以后必然會兩級分化。
如果鴻蒙系統(tǒng)沒有革命性的突破,如果美國不再卡脖子,如果沒有國家的干預(yù)措施,只靠平民大眾自覺愛國的方式支持鴻蒙系統(tǒng),我看很懸啊,畢竟,蘋果手機(jī)在國內(nèi)的銷量一如既往?。?!
再者,在手機(jī)行業(yè),小米、oppo等手機(jī)廠商和華為本是競爭關(guān)系,會放棄自己的系統(tǒng)換成鴻蒙系統(tǒng)嗎?這樣的話,其他手機(jī)廠商的生存空間會一天不如一天,就算鴻蒙開源使用,也只不過走android碎片化的老路!
系統(tǒng)之爭本就不是一朝一夕,不用擔(dān)心會不會失業(yè),路,還很長!
實(shí)際上安卓系統(tǒng)的成功起初很大得益于中國市場,可以說中國市場選擇誰,成功的幾率非常大, 鴻蒙系統(tǒng)出世以后,安卓開發(fā)工程師會失業(yè)嗎? 暫時不會的,畢竟有一個過程,也是一種博弈過程,實(shí)際上安卓系統(tǒng)與鴻蒙系統(tǒng)現(xiàn)在沒必要刻意追求細(xì)小細(xì)節(jié)的優(yōu)劣,前提是由于美國對中國的打壓,谷歌斷供服務(wù)華為,別看只是說切斷了華為的服務(wù),但是這種破壞性本身就是讓各國包括中國對美國不可能再信任,今天是華為,明天有可能是另一家企業(yè),無論美國怎么說,谷歌再會解釋,實(shí)際上這種行為已經(jīng)打破了行業(yè)規(guī)則,后期效應(yīng)就是不可能再一味的依靠美國,各國發(fā)展自己的系統(tǒng),中國也必須的推出自己的系統(tǒng),大勢所趨,安卓體系以后會慢慢萎縮,安卓開發(fā)工程師失業(yè)不失業(yè)就憑他們個人能力了,肯定減員,估計(jì)未來的鴻蒙系統(tǒng)會越來越強(qiáng)大,市場份額是固定的,就看誰的市場大了,也不排除安卓開發(fā)工程師跳槽來鴻蒙。
開發(fā)鴻蒙只能在華為支持的鴻蒙設(shè)備上運(yùn)行,開發(fā)android,可以在所有安卓設(shè)備包括鴻蒙設(shè)備上也兼容運(yùn)行,何來失業(yè)
做安卓的一天不用就能寫鴻蒙??梢院鲇萍追郊渝X了[淚奔]
不會,確切的說鴻蒙的出世,給Android工程師提供了更多的機(jī)會。鴻蒙生態(tài)的建設(shè),安卓工程師會貢獻(xiàn)絕對的力量。
另外,從技術(shù)上講,安卓開發(fā)的應(yīng)用完全兼容鴻蒙,安卓工程師開發(fā)安卓應(yīng)用的時候,可能會針對鴻蒙系統(tǒng)做適配工作,工作量的增加,工程師的價值也會增長。
是得我就是干這個 但是我都計(jì)劃改行了