Felgo简介--Qt开发者的福音
前言
在12月2號,Qt首次發(fā)布了Marketplace,然后在逛Marketplace的時候發(fā)現(xiàn)了一個非常有用的東西,看完其介紹過后,欣喜若狂,簡直相見恨晚,這玩意兒就是 Felgo。所以,必須在這里花點時間簡單的對Felgo做個介紹,它簡直就是所有Qt開發(fā)者的福音。
Felgo是什么
首先,Felgo的前身是叫 v-play,官網(wǎng)在這里,它是由荷蘭的一家公司開發(fā)的,于2012年推出。從2014年開始,Felgo成為了Qt技術(shù)的官方合作伙伴,可以使用Qt工具和200多種API加速Q(mào)t開發(fā)并提高效率,讓每一個Qt開發(fā)者每個月節(jié)省20~80個小時的工作時間,并使用Felgo API和工具節(jié)省多達92%的代碼。能夠讓開發(fā)者快速的做出更好更貼近原生平臺效果的應(yīng)用。
簡單來說,Felgo就是基于Qt封裝的一個跨平臺的提供豐富平臺性接口的SDK。Felgo所有接口都是基于QML的,這些年Qt大力在發(fā)展QML,不斷的做性能優(yōu)化和接口新增,可以看出QML的重要性,那么,基于QML的Felgo可以讓開發(fā)者更快速的開發(fā)應(yīng)用,極大的提升開發(fā)效率。
為什么要使用Felgo
Felgo使用QML + Javascript作為主要編碼語言,并基于Qt進行開發(fā)。與其他語言和框架相比,這可以節(jié)省多達90%的代碼。它也是一個跨平臺的工具。這意味著您可以使用相同的代碼庫為不同的平臺編譯應(yīng)用程序。Felgo支持Android,iOS甚至臺式機平臺和嵌入式系統(tǒng)。
Felgo的最大優(yōu)勢之一在于可以組成UI視圖,創(chuàng)建布局和添加動畫。這就是QML發(fā)揮作用的地方。Felgo將視圖組成和小部件渲染從平臺直接移到你的應(yīng)用程序中。你可以使用易于擴展且可自定義的項目來創(chuàng)建UI,而無需使用笨拙且難以動畫化平臺渲染的窗口小部件。
以這種方式構(gòu)建UI可以節(jié)省代碼,使其更易于維護并且感覺自然。現(xiàn)代應(yīng)用程序更多地關(guān)注 遵循你的品牌并提供豐富用戶體驗的自定義設(shè)計。
QML的簡單性加快了開發(fā)速度,但是可定制性和可擴展性使其功能如此強大。你可以完全控制UI項和布局,同時利用與Android或iOS小部件的本機用戶體驗相匹配的可主題化UI組件。結(jié)合現(xiàn)成的本機功能,后端服務(wù)和C ++ Qt的強大功能,Felgo是任何應(yīng)用程序用例的理想選擇。
如果需要,還可以利用現(xiàn)有的Android知識來使用Felgo并通過自定義本機集成對其進行擴展。Felgo已經(jīng)提供了許多跨平臺插件,這些 插件集成了本機框架并與Android(或iOS)進行通信。
Felgo能干什么
至于Felgo到底能干什么,這里簡單的概括為以下幾個方面,當(dāng)然,它能做的遠(yuǎn)不止這些。
- 高級控件和本機導(dǎo)航
- 主題與風(fēng)格
- 密度獨立
- 響應(yīng)式布局
- 文件處理(本地/遠(yuǎn)程)
- 數(shù)據(jù)管理和模型/視圖
- 多媒體
- REST網(wǎng)絡(luò)
- 本機對話框和功能
可以將Felgo API與現(xiàn)有的Qt和QML代碼混合使用!
單一代碼庫中的本機UI / UX
創(chuàng)建具有原生外觀和100%共享代碼庫的iOS和Android應(yīng)用程序。
- iOS / Cupertino原生樣式
- 本機Android和iOS控件和導(dǎo)航
- 顯示切口和缺口支持
- 共享移動,臺式機和嵌入式的代碼
實時和熱加載
通過實時代碼重新加載來加快開發(fā)速度。
- 即時重新加載QML和JS代碼。持續(xù)狀態(tài)。
- 在多個設(shè)備上同時測試
- 節(jié)省耗時的部署時間
- 在運行時模擬平臺
- 從Windows和Linux為iOS開發(fā)
- 部署實時應(yīng)用程序的OTA更新
Felgo云構(gòu)建(CI / CD)
讓你的工作流程自動化以節(jié)省寶貴的時間。
- Qt和Felgo項目的獨家CI / CD
- 針對移動設(shè)備,臺式機和嵌入式設(shè)備的自動化構(gòu)建
- 與你現(xiàn)有的CI / CD集成
- 減少時間來設(shè)置和維護工具,Qt版本和依賴項
- 減少構(gòu)建更新和測試版本的時間
- 與Git / SVN集成
- 由Felgo托管或內(nèi)部部署
本機插件和集成
無需重新發(fā)明輪子。將第三方服務(wù)和特定于平臺的功能集成到您的應(yīng)用程序中。
- 推送通知(OneSignal,Google)
- 分析(Google,Firebase,Amplitude)
- 臉書
- Firebase(用戶身份驗證,實時數(shù)據(jù)庫,云存儲)
- 廣告和應(yīng)用內(nèi)購買(訂閱)
- Beta測試+崩潰報告
Felgo云服務(wù)后端和前端
Qt友好的跨平臺后端解決方案。
通過電子郵件,Facebook,Google進行用戶身份驗證
- 朋友管理,用戶搜索
- QML UI,完全可樣式化
- 游戲化(成就,排行榜)
- 聊天和推送通知
- 云數(shù)據(jù)存儲
- 實時數(shù)據(jù)同步
- 由Felgo托管或內(nèi)部部署
- 適用于手機,臺式機和嵌入式
增強現(xiàn)實,人工智能,機器學(xué)習(xí)
可以添加由Felgo API支持的增強現(xiàn)實或機器學(xué)習(xí)。
- 圖像和對象識別
使用設(shè)備的相機實時跟蹤圖像和3D對象。 - Geo AR
使用設(shè)備的傳感器實時跟蹤興趣點(POI)。 - 即時跟蹤
使用設(shè)備的傳感器和攝像頭在現(xiàn)實世界中放置虛擬對象。 - 云識別
將您的識別數(shù)據(jù)存儲在云中,并在應(yīng)用已發(fā)布時對其進行編輯。 - TensorFlow
人工智能與機器學(xué)習(xí)
使用Felgo進行嵌入式開發(fā)
創(chuàng)建高性能嵌入式系統(tǒng)應(yīng)用程序和第二屏應(yīng)用程序。由C ++和JavaScript支持的本機性能和快速的UI創(chuàng)建。在此專用頁面上了解有關(guān)使用Felgo進行嵌入式開發(fā)的更多信息。
本機導(dǎo)航
iOS和Android上的導(dǎo)航范例不同。在iOS上,您有向后滑動的手勢可以在導(dǎo)航堆棧中向后導(dǎo)航。在Android上,通常使用從左側(cè)滑入的導(dǎo)航抽屜。Felgo Apps提取了這些導(dǎo)航差異,并允許您僅使用一個跨平臺的導(dǎo)航組件。
在運行時模擬平臺
使用Felgo的實時平臺仿真功能加快開發(fā)和測試時間:仿真任何平臺并在PC上的運行時進行更改!
本機組件和導(dǎo)航會自動將其樣式更改為新平臺。這使您可以快速測試您的應(yīng)用在iOS和Android臺式機上的外觀。您的應(yīng)用的啟動時間從1-2分鐘減少到幾秒鐘!
響應(yīng)式設(shè)計
你是否已經(jīng)針對智能手機和平板電腦優(yōu)化了應(yīng)用程序?這可能是一個棘手的挑戰(zhàn),因為在更大的屏幕上,您可以在應(yīng)用程序中顯示更多信息,并使用戶體驗更好。如果僅針對智能手機進行優(yōu)化,則會降低成功的潛力。
使用Felgo,您無需更改現(xiàn)有代碼,而可以將相同的源代碼用于手機和平板電腦。當(dāng)屏幕變大時,您將自動獲得“平板電腦視圖”,左側(cè)的導(dǎo)航頁和右側(cè)的實際內(nèi)容頁。
節(jié)省80%的代碼及更多內(nèi)容!
與純Qt項目或其他框架和語言相比,Felgo可以節(jié)省大量代碼。這樣可以減少維護工作量,減少錯誤并提高開發(fā)速度。
這里有2個快速的案例研究,向您展示了自己的應(yīng)用程序可能節(jié)省的代碼。
免費入門
- 免費試用!
- 提供免費的個人許可證和商業(yè)許可證
寫在最后
怎么樣,看到這里是不是對Felgo有些心動。Felgo還提供了非常完善的文檔供查閱,并且有超多的示例代碼。
唯一的問題就是下載安裝包速度超級慢,由于是外網(wǎng),又是在線安裝包,需要下載很多資源,下載速度真的是感人。并且經(jīng)常中斷,這是個大問題。感興趣的童鞋可以去試一下。先介紹到這里,后期再介紹如何使用Felgo進行項目開發(fā)。
截止目前,最新的Felgo版本是3.3.0,支持Qt5.13.2.更新詳情在這里。
更多詳情請訪問官網(wǎng)。
總結(jié)
以上是生活随笔為你收集整理的Felgo简介--Qt开发者的福音的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Qt IFW基本用法
- 下一篇: Felgo之初体验--安装与运行