混合移動APP是一種降低移動APP開發(fā)成本和進入門檻的嘗試。他們通過使用以 HTML、CSS 和 Javascript 編寫的單個代碼庫來定位多個平臺來做到這一點。采用這種方法的APP的創(chuàng)建方式與現(xiàn)代網(wǎng)站的創(chuàng)建方式非常相似,但不是在移動 Web 瀏覽器中查看,而是將APP放置在一個小的本地包裝器中,允許將其提交到APP商店并安裝任何其他移動APP。如果一切按計劃進行,開發(fā)人員將永遠不必編寫一行本機代碼,用戶也不會有絲毫的想法,即他們正在使用混合APP。
希望混合移動APP可以顯著降低開發(fā)成本并大幅增加能夠開發(fā)APP的開發(fā)人員的數(shù)量。本文將探討混合APP如何接近實現(xiàn)這一夢想,解釋混合APP的幾個關鍵限制,探討它們在行業(yè)中的影響,最后概述混合移動APP如何融入我們的整體移動APP開發(fā)方法。
最近,混合移動APP的普及率激增。但究竟是什么讓他們?nèi)绱藗ゴ螅孔畲蟮膬?yōu)勢之一是它們?yōu)?Web 開發(fā)人員打開了移動應用商店的大門。JavaScript 是 Web 開發(fā)的主要客戶端語言,根據(jù)tiobe.com 排名第八. Android 的主要語言 Java 和 iOS 的主要語言 Objective-C 分別排名第 1 和第 14 位。由于混合移動APP允許開發(fā)人員使用 JavaScript 而不是單獨的本地平臺語言,這會導致大量開發(fā)人員涌入。此外,曾經(jīng)只提供 Web 開發(fā)服務的公司現(xiàn)在也可以開始提供移動APP開發(fā)服務。隨著有能力的開發(fā)人員的供應增加,開發(fā)成本將降低,商店中的APP數(shù)量將繼續(xù)增長。
另一個巨大的優(yōu)勢是傳統(tǒng)的移動APP開發(fā)需要針對APP目標的每個平臺單獨的代碼庫。使用多個代碼庫會增加開發(fā)時間,同時對每個版本進行 QA 所需的時間也會增加。這也意味著您的開發(fā)團隊會更大,從而增加APP在每個平臺上表現(xiàn)不同的可能性。通過構建混合移動APP,所有版本都保持同步。您仍然需要在所有目標平臺上對APP進行 QA,但版本在幾乎所有情況下都應該表現(xiàn)相同。
混合移動APP的最終勝利是它們能夠將現(xiàn)有的網(wǎng)絡APP轉換為移動APP。這并非在所有情況下都有效,所需的時間可能會有很大差異,但如果您已經(jīng)有一個在移動瀏覽器上運行良好的網(wǎng)絡APP,那么您很可能很容易將其轉換為混合移動APP。如果您一直計劃這樣做,這種方法效果最好,但我們已經(jīng)取得了巨大的成功,將我們在過去幾年內(nèi)構建的 Web APP并在原始 Web APP啟動后將它們捆綁為混合APP。由于創(chuàng)建混合移動APP與創(chuàng)建移動網(wǎng)站非常相似,因此您通常只需返回并重新打包您已經(jīng)構建的內(nèi)容。
一般來說,不要過早追隨最新的技術趨勢是個好主意。早期采用者通常有明顯的成長痛點,必須對頻繁的更新和更改做出響應,并且冒著購買可能不會持續(xù)超過一年的風險。但是,確定一種可以顯著降低成本并幫助您的應用更快上線的新技術可以讓您在競爭中領先。因此,查看其他頂級公司并了解他們?nèi)绾谓咏筒捎眯录夹g通常是一個好主意??紤]到這一點,這里列出了一些非常成功的混合移動APP:
優(yōu)步
未開發(fā)
喊叫
了解這些公司為何選擇采用混合APP方法同樣重要。更重要的是找到選擇不同方向的公司,或者那些曾經(jīng)擁有混合APP但放棄它而轉而采用另一種方法的公司。找到這些故事將幫助您了解混合APP的缺點,并更好地了解混合APP是否適合您的APP。
許多APP從混合路徑開始,只是意識到選擇的方法將存在嚴重問題,為時已晚。出于這個原因,決策者在開始之前了解混合APP的缺點是至關重要的。以下是使用混合移動APP時面臨的一些常見問題:
動畫的 UI 遲緩。
內(nèi)存受限設備上的內(nèi)存相關問題。
缺少對所需本機功能的軟件包或內(nèi)置支持。
平臺之間的 UI/UX 一致性,而不是許多用戶期望的特定于平臺的外觀和感覺。
稍后的項目里程碑將增加項目范圍,這對于混合APP來說是非常困難或不可能做到的。
這些問題的嚴重程度因項目和混合APP庫而異。其中一些是破壞交易的,而另一些則是項目預算較低的不便。在開始任何移動APP項目之前,在選擇方法和技術之前獲得知情和公正的意見非常重要。
如果您針對多個平臺,混合APP應該比原生APP便宜一些。由于它們使用單一代碼庫,因此它們的維護和測試成本也應該更低。如果您已經(jīng)有網(wǎng)絡開發(fā)人員在工資單上,它們也可能更具成本效益,因為現(xiàn)在他們也可以在您的移動APP上工作。在針對 iOS 和 Android 時,混合動力并不總是可以為您節(jié)省 50%,但根據(jù)我們的經(jīng)驗,您可以預期節(jié)省大約 30% 到 40%。這當然取決于是否適合該項目的混合APP。
就像 Web 和移動開發(fā)中的幾乎所有其他東西一樣,沒有一個萬能的成本等式,如果您采用原生方式,項目的總成本可能會更低。這一切都取決于了解選項并為您的應用選擇最佳選項。混合APP有可能更便宜,但情況并非總是如此。
混合APP倡導者希望您相信它們提供與原生APP完全相同的體驗,但價格要低得多。在大多數(shù)情況下,它們是正確的。混合應用可以像原生應用一樣提交到應用商店。用戶可以像本地APP一樣下載它們。它們的執(zhí)行方式與原生APP大致相同,正如我們已經(jīng)討論過的,它們的制作成本可能比原生APP低得多。混合APP開發(fā)VS原生VS H5混合開發(fā)APP對比。
但是,在性能、應用間可操作性、動畫和本機功能方面存在一些差異。由于混合APP基本上是一個 Web 視圖,因此它們可能比原生APP有點遲鈍且響應速度慢。這在動畫(例如 iOS 托盤打開和關閉動畫)中尤為明顯。此外,當混合APP想要使用原生功能時,例如訪問聯(lián)系人或日歷,它們必須依賴各種包。如果沒有執(zhí)行所需任務的現(xiàn)有包,您可能必須自己制作。由于必須為您所針對的每個平臺本地編寫這些包,這使得這變得更加困難。不必學習 Java 或 Objective-C 就夠了!混合APP無法滿足原生APP的其他一些方面包括離線功能、內(nèi)存使用、
響應式網(wǎng)站實際上與混合APP非常相似。在許多方面,您可以將響應式網(wǎng)站的移動形式視為混合APP的核心。響應式網(wǎng)站具有網(wǎng)站在移動設備上運行所需的 HTML、CSS 和 Javascript。兩者的內(nèi)容、樣式和邏輯可以完全相同。混合APP僅涉及獲取 Web APP并將其打包在本機包裝器中。您必須確保用戶體驗在這種形式下仍然有效,但很有可能不需要額外的工作來將您的響應式網(wǎng)站(或移動網(wǎng)站)轉換為混合移動APP。
這意味著兩者之間最顯著的區(qū)別在于它們的訪問方式。響應式網(wǎng)站在移動瀏覽器中查看,并從您的傳統(tǒng) Google SEO 中受益。另一方面,混合APP可以在APP商店中找到并安裝到手機的主屏幕上。這有很多好處,我在之前關于移動參與的文章中討論了其中的許多好處。
跨平臺混合APP是使用單個代碼庫構建的APP,但會針對每個平臺編譯為本機代碼。流行的跨平臺技術包括Xamarin和NativeScript。這些技術將代碼編譯為本機二進制文件,使它們成為真正的本機APP。作為原生,它們有能力擁有更好的性能,可以承載平臺特定的原生 UI/UX,并且可以更好地利用其他原生功能。缺點是這些方法通常具有陡峭的學習曲線。因此,盡管與特定于平臺的原生方法相比,您可以節(jié)省金錢和精力,但跨平臺原生方法可能比混合使用更昂貴。
在這兩個選項之間做出決定很大程度上取決于您的開發(fā)團隊的技能。如果他們有 .Net 和 C# 經(jīng)驗,Xamarin 可能非常適合。但是,他們將不得不在此過程中對本機APP流程有所了解。如果你不適合這個群體,考慮混合動力可能是個好主意。許多人可能會爭辯說,如果您必須花時間學習跨平臺原生方法,也許您應該多投入一點并使用特定于平臺的原生方法,因為最終這將始終是最高性能并提供最佳用戶體驗.
從表面上看,混合移動APP的出現(xiàn)對 Web 開發(fā)人員來說非常棒。隨著智能手機和平板電腦的爆炸式增長,APP開發(fā)人員面臨著巨大的機遇。但是學習原生開發(fā)(更不用說多平臺開發(fā))歷來是一個很大的進入門檻。理論上,混合APP消除了這一障礙,并允許 Web 開發(fā)人員進入這個非常有利可圖的市場。但是,Web 開發(fā)人員應確保了解混合APP的局限性,并愿意在必要時進入本機代碼。
由于混合移動APP,Web 開發(fā)人員還有另一個有趣的角度。對于自由職業(yè)者或顧問開發(fā)人員,您可能會與僅提供本地開發(fā)的其他開發(fā)人員競爭。由于混合APP通常更便宜,因此 Web 開發(fā)人員在為項目定價時可以擁有顯著的競爭優(yōu)勢。對于面向多個平臺的APP來說,這一點越來越真實。精明的網(wǎng)絡開發(fā)人員可能能夠提高他們的費率,并且仍然是一個具有競爭力的價格選擇。如果您是 Web 開發(fā)人員,這很有意義,并且可能需要有限的精力來開始提供混合APP開發(fā)服務。Web 開發(fā)人員還應該關注React Native。它使我們能夠在本地移動項目上使用經(jīng)驗豐富的 Web 開發(fā)人員。
作為一名移動開發(fā)者,我會仔細閱讀并理解前一段。我會研究和了解混合APP開發(fā)的現(xiàn)狀,并特別注意它的缺點。如果您是一名自由職業(yè)者或顧問移動開發(fā)人員,您將很快或可能已經(jīng)在與 Web 開發(fā)人員競爭移動APP項目。這可能意味著您必須對您的項目進行更具競爭力的定價,并且您的每一個提案都將與一組全新的競爭對手進行比較。但是,如果您能夠解釋和展示原生移動APP的優(yōu)勢并知道哪些APP更適合您的方法,那么您應該能夠避免將任何業(yè)務拱手讓給使用混合APP方法的 Web 開發(fā)人員。
此外,移動開發(fā)人員可以利用他們的本地開發(fā)經(jīng)驗,學習一些 Web 開發(fā)(如果他們還沒有),并成為世界級的混合APP開發(fā)人員。如前所述,大多數(shù)混合APP依賴于本地編寫的包。擁有這種跨領域技能的開發(fā)人員可以通過掌握原生和混合APP方法真正讓自己與眾不同。
任何有經(jīng)驗的商務人士都應該面帶笑容地閱讀前兩節(jié)。由于混合APP將更多的開發(fā)人員帶到了桌面上,因此在構建移動APP時您可以考慮更多的選擇。更多的開發(fā)人員意味著您的業(yè)務競爭加劇,這當然意味著您可以節(jié)省資金。增加的選項確實意味著您必須做更多的研究才能完全理解正確的方法。您需要考慮APP是什么以及它可能是什么。企業(yè)明智地尋找真正提供各種移動APP開發(fā)方法的人或公司。這樣,他們就可以依靠他們的指導,并且希望不會被導向一個方向,因為這是開發(fā)人員或公司提供的唯一服務。
要考慮的另一件事是,如果您已經(jīng)擁有一個 Web APP,混合APP可能會將該網(wǎng)站轉化為移動APP,而成本只是新APP成本的一小部分。擁有移動APP對于任何企業(yè)來說都是一個絕妙的主意,并且由于混合APP,它們比以往任何時候都便宜。
如前所述,混合APP涉及獲取基本上是網(wǎng)站的內(nèi)容并將其包裝在本機包中。有幾個不同的框架可以使這個過程成為可能??紤]到大量選項,評估和選擇框架可能會讓人不知所措。以下是一些最受歡迎的選項的列表,以及每個選項:
Ionic - Ionic 提供了幾個內(nèi)置的 UI 組件,并且嚴重依賴 AngularJS 進行雙向數(shù)據(jù)綁定。
Cordova (Phone Gap) - Cordova 是最不自以為是的選擇。Cordova 不是將一堆東西捆綁在一起,而是一個允許您定義工具并簡單地處理APP的打包和發(fā)布的框架。
Appcelorator Titanium - 使用 Alloy(一種 MVC 框架),具有內(nèi)置 API 框架,并提供實時分析。
Sencha Touch - 作為較老的混合APP框架之一,Touch 強調(diào)模仿原生 UI/UX。
Kendo UI - Kendo 是 jQuery 粉絲的絕佳選擇。
購買新技術可能是一項冒險的嘗試。如果底層技術發(fā)生變化或被放棄,早期采用者通常會付出高昂的代價來維護他們的APP。但是,混合APP的一大優(yōu)點是它們非常依賴 Web 開發(fā)技術。鑒于網(wǎng)絡和網(wǎng)站的巨大持久力,用于制作混合移動APP的語言將被教授和使用相當長的一段時間。因此,您很可能不會發(fā)現(xiàn)自己處于必須支付某些利基開發(fā)人員來維護您的APP的位置。但是,您選擇哪種混合應用技術存在一些風險。當前的一個或多個框架可能會失寵并停止維護。最后一個風險是其他方法,例如跨平臺移動APP開發(fā)(例如 Xamarin),變得越來越流行。
最終要考慮的是您希望您的APP使用多長時間,以及認為混合APP將在整個期間使用是否合理。在大多數(shù)情況下,這對我來說似乎是一個非常安全的賭注。
通常,我們認為擁有一個單一的技術堆?;蚍椒ú⑵鋺糜诿總€項目是一個糟糕的想法。這樣做的公司和開發(fā)人員通常會在項目中強制使用不合適的解決方案,而另一種方法會更好。因此,我們認為任何爭論混合APP是靈丹妙藥或完全無用的人都是大錯特錯,我們鼓勵您對此類開發(fā)人員持懷疑態(tài)度,因為他們很可能要么只能開發(fā)混合APP,要么沒有能力做本地以外的任何事情。
總的來說,我們認為混合動力是一個可靠的預算和方便的選擇。以下是我們建議使用混合APP方法的一些常見情況:
一個項目需要一個響應式網(wǎng)站,而一個移動APP將是“必備之物”。
一個應用會部署到多個平臺,不包含太多或太復雜的動畫,并且需要有限的原生功能。
一個項目的預算有限,我們希望以盡可能少的投資來測試APP的可行性。
Web APP版本已經(jīng)存在,移動APP將非常相似。
以下是一些我們對混合使用猶豫不決的APP:
該APP依賴于原生功能,例如廣泛的日歷、聯(lián)系人或照片利用率。
項目預算相當可觀,目標是擁有最好的APP。
該APP只會針對 1 個平臺。
該APP將面向多個平臺,您希望該APP遵循每個平臺的標準 UI 和 UX。
該APP將具有中等到廣泛的動畫。
有一種可能性是,該APP將需要一個功能或集成,而混合APP方法不可能或過于昂貴。
顯然,這些列表更多的是指導而不是硬性規(guī)則,但這是我們在決定移動APP開發(fā)方法時考慮的事物類型的一個示例。
混合APP是一項令人興奮且影響深遠的新技術。決策者和開發(fā)人員應確保他們了解這種新的移動APP開發(fā)可能性的內(nèi)容、方式和原因。
作為一家網(wǎng)絡和移動開發(fā)公司,混合APP為我們提供了一個很棒的新工具,可用于某些項目。但就像任何工具一樣,知道何時使用它與知道如何使用它一樣重要。我會確保與您合作的任何公司都理解、考慮并提供所有可用的選項。如果沒有,您的APP可能會在大門外拐錯彎。如果您想與我們討論您的下一個移動APP項目,我們很樂意聽取您的意見!
如果您對本文有任何疑問,或者您希望我們涵蓋與混合APP或一般移動開發(fā)相關的任何其他主題,請告訴我們。
接入ChatGPT系統(tǒng)多少錢?
APP如何接入ChatGPT系
小程序開發(fā)費用,開發(fā)小程序需要
怎么選擇一家靠譜的小程序制作公
app制作流程-策略|評估規(guī)劃
開發(fā)一個app多少錢?
客服QQ:121446412 聯(lián)系電話:15321250321
京ICP備17026149號-1版權所有@2011-2022 北京天品互聯(lián)科技有限公司 公司地址:北京市海淀區(qū)上地南路科貿(mào)大廈408