一. AppWorker是什么?
AppWorker是一個(gè)移動(dòng)開發(fā)的平臺(tái)或技術(shù),與之對(duì)等的是Android移動(dòng)開發(fā)技術(shù)拙徽,iOS移動(dòng)開發(fā)技術(shù)。我們可以從下面的表里看出他們之間的關(guān)聯(lián)和區(qū)別.
開發(fā)環(huán)境 | IDE | 開發(fā)語(yǔ)言 | SDK | 生成安裝包 | |
---|---|---|---|---|---|
Android | Windows/MAC | Eclipse/Android Studio | Java | Android SDK | apk安裝包 |
iOS | MAC | XCode | ObjectC/Swift | iOS SDK | ipa安裝包 |
AppWorker | Windows/MAC | AppWorker Studio | JavaScript | AppWorker SDK | apk,ipa安裝包 |
從這個(gè)表我們總結(jié)一下平臺(tái)的特點(diǎn):
- 移動(dòng)App開發(fā)過(guò)程的所有階段平臺(tái)都介入:編碼—調(diào)試—編譯—測(cè)試—發(fā)布。在任何一個(gè)環(huán)節(jié)都有對(duì)應(yīng)的產(chǎn)品和服務(wù)來(lái)對(duì)應(yīng)迄沫。
- 使用平臺(tái)開發(fā)App完全不需要了解其它二種技術(shù)的技術(shù)細(xì)節(jié),也不需要搭建開發(fā)環(huán)境和IDE.
- 使用平臺(tái)開發(fā)需要了解平臺(tái)的基本框架和API
- 使用平臺(tái)能做到一次開發(fā),多平臺(tái)發(fā)布卦方,
Write Once羊瘩,Run Anywhere
- 使用平臺(tái)開發(fā)App需要云編譯,需要聯(lián)網(wǎng)。
- 使用平臺(tái)開發(fā)使用JavaScript尘吗,相對(duì)于其它開發(fā)語(yǔ)言逝她,使用更簡(jiǎn)單,更易理解
- 平臺(tái)具有自己的JS SDK睬捶,目前近200多個(gè)組件黔宛,每個(gè)組件都有2個(gè)平臺(tái)的原生實(shí)現(xiàn)。組件還在不斷擴(kuò)展中侧戴。
- AppWorker平臺(tái)只是移動(dòng)端開發(fā)相關(guān)宁昭,并沒(méi)有提供服務(wù)端開發(fā)的任何服務(wù)和技術(shù)。
二. 為什么有AppWorker技術(shù)?
既然不同的移動(dòng)操作系統(tǒng)有不同的開發(fā)技術(shù)酗宋,為什么還需要AppWorker平臺(tái)积仗?AppWorker平臺(tái)是解決原生開發(fā)的二個(gè)重要問(wèn)題:
- 相同的業(yè)務(wù)邏輯需要在 iOS 和 Android 平臺(tái)各實(shí)現(xiàn)一次,多套人蜕猫,多套代碼帶來(lái)的開發(fā)寂曹,維護(hù)以及交流的效率和成本。除了開發(fā)成本高回右,也會(huì)引入體驗(yàn)的細(xì)微差別隆圆。是否有一種技術(shù)方案可以做到一份代碼,兩個(gè)平臺(tái)運(yùn)行翔烁,行為相同
- 移動(dòng) APP 開發(fā)領(lǐng)域渺氧,要極致體驗(yàn)發(fā)布就不靈活(Native),要靈活發(fā)布就沒(méi)有極致體驗(yàn)(H5)蹬屹。有沒(méi)有一種技術(shù)方案可以兼顧極致的體驗(yàn)和靈活的發(fā)布侣背?
平臺(tái)能很好的解決這二個(gè)問(wèn)題。
三. AppWorker的優(yōu)點(diǎn)?
- 不同于其它跨平臺(tái)技術(shù)以H5為基礎(chǔ),平臺(tái)從ui到功能所有都是對(duì)應(yīng)原生的實(shí)現(xiàn),比如do_Button組件運(yùn)行在Android下對(duì)應(yīng)的是Button類,在iOS下對(duì)應(yīng)是UIButton類. 從而確笨跨平臺(tái)而不犧牲體驗(yàn).
- 平臺(tái)的ui搭建可以通過(guò)所見(jiàn)即所得的方式在我們提供的IDE上可視化拖拽生成,方便而且精準(zhǔn).
- 平臺(tái)的ui構(gòu)建能做到一次開發(fā),多平臺(tái)多屏幕適配.
- 用平臺(tái)開發(fā)的js源碼可以自己加密成二進(jìn)制文件,而不是簡(jiǎn)單的混淆,確保安全性
- 用平臺(tái)開發(fā)很容易實(shí)現(xiàn)熱升級(jí),而且不會(huì)被Apple商店限制
- 如果具有Android和iOS技能贩耐,可以很方便的開發(fā)自己的組件,集成到平臺(tái)平臺(tái)用于自己的App使用或分享給其他人使用厦取。
四. AppWorker開發(fā)和原生開發(fā)的關(guān)系?
平臺(tái)并沒(méi)有脫離原生開發(fā)潮太,只不過(guò)把原生開發(fā)和App開發(fā)者分離了,原生開發(fā)者只負(fù)責(zé)開發(fā)和業(yè)務(wù)無(wú)關(guān)的組件虾攻,比如Button铡买,VideoView之類的。而App開發(fā)者不需要理解操作系統(tǒng)的差異台谢,只需要參考組件的一套JS的API寻狂,然后專心整理自己App的業(yè)務(wù)需求,就能搭建出跨平臺(tái)的App朋沮。
AppWorker平臺(tái)構(gòu)建的平臺(tái)也是積累和沉淀原生開發(fā)人員的技術(shù)的一種方式,而且是比代碼級(jí)別更高級(jí)別的組件重用,我們提供了一個(gè)標(biāo)準(zhǔn)的平臺(tái)樊拓,讓原生開發(fā)者可以封裝積累自己的技術(shù)纠亚,我們的平臺(tái)會(huì)保證質(zhì)量。
而且原生開發(fā)者在我們的平臺(tái)上銷售自己的組件筋夏,App開發(fā)者購(gòu)買使用組件開發(fā)App蒂胞,從而促進(jìn)一個(gè)完整的生態(tài)圈的發(fā)展。
組件擴(kuò)展的基本過(guò)程就是:
- 我們提供的組件開發(fā)管理界面上創(chuàng)建組件条篷,定義屬性骗随,事件,方法
- 定義完后赴叹,可以下載我們自動(dòng)生成的原生Android, iOS項(xiàng)目鸿染,很多代碼已經(jīng)自動(dòng)生成
- 開發(fā)者在這個(gè)項(xiàng)目里添加真正功能實(shí)現(xiàn)的原生代碼,編譯成jar包或者a文件
- 上傳jar包和a文件到我們的平臺(tái)乞巧,然后自己開發(fā)App使用或者分享到組件商店給所有App開發(fā)者使用
五. 學(xué)習(xí)資料
- QQ討論群:767161475
- 視頻培訓(xùn):基礎(chǔ)培訓(xùn)1 基礎(chǔ)培訓(xùn)2
- 教程文檔:http://www.appworker.net/awdoc/guide/index.html
- API文檔:http://www.appworker.net/awdoc/guide/index.html
- 常見(jiàn)問(wèn)題:http://www.appworker.net/awdoc/faq/index.html
- 示例商店:示例源碼注意涨椒,下載需要登錄,登錄的賬號(hào)和主頁(yè)是不一樣的绽媒,需重新申請(qǐng)