跨平台開發工具


跨平台開發工具

https://baijiahao.baidu.com/s?id=1612198467122250493&wfr=spider&for=pc

有這六大頂級跨平台開發神器

1、 PhoneGap (Adobe)

PhoneGap是一個采用HTML,CSS和JavaScript的技術,創建移動跨平台移動應用程序的快速開發平台。

唯一支持 IOS,Android,Palm,Symbian,WP7,WP8,Bada和Blackberry 全部智能系統的平台。它是一個完整的跨平台APP開發工具和平台,通過提供SDK來支持其他框架。

 

國內的WeX5方案也是PhoneGap的一種,完全Apache開源,在融合Phonegap的基礎上,做了深度優化,具備接近Native app的性能,同時開發便捷性也較好。

在 RN 和 WEEX 方案未出現時, PhoneGap 是最好的跨平台APP開發解決方案。

 

2、 React Native(Facebook)

React Native (簡稱RN)是Facebook於2015年4月開源的跨平台移動應用開發框架,

目前支持iOS和安卓兩大平台。

RN使用Javascript語言,類似於HTML的JSX,以及CSS來開發移動應用,因此熟悉Web前端開發的技術人員只需很少的學習就可以進入移動應用開發領域。

React Native着力於提高多平台開發的開發效率 —— 僅需學習一次,編寫任何平台。

 

國內的很多app比如QQ空間 ,QQ音樂,墨刀,京東,手機百度等,

具體參考:https://facebook.github.io/react-native/showcase.html。

 

RN的優勢: 1. 兩端並行開發(共享智慧) 2. 熱更新(升級) 3.Open standard(React redux cycle...)。4. 社區力量。

 

https://blog.csdn.net/yczz/article/details/50468181

 

結論(React Native):
1、原生應用的用戶體驗
2、跨平台特性
3、開發人員單一技術棧
4、上手快,入門容易
5、社區繁榮

 

 

 

 

3、WEEX(阿里巴巴)

2016年4月21日,阿里巴巴在Qcon大會上宣布跨平台移動開發工具Weex。

Weex框架能夠完美兼顧性能與動態性,讓移動開發者通過簡捷的前端語法寫出Native級別的性能體驗,並支持iOS、安卓、YunOS及Web等多端部署。

Weex基於開源的Vue.JS, 相比於 RN來說 入門簡單,容易上手。目前 阿里系的很多產品 比如淘寶,支付寶和一些小公司app都在用WEEX。

雖然Weex和React Native都支持跨平台開發,但實際還是有一定的區別:

Weex的目標是實現代碼共用一次開發多平台運行,能同時支持iOS、Android和Web,降低了開發難度,節約開發成本;

React Native則希望替換整個APP,所以更加注重平台的獨立性,其代碼需要針對iOS和Android平台編寫,代碼無法實現完全公用。

 

4、Flutter (Google)

Flutter是谷歌的最新移動UI框架。Beta1版本於2018年2月27日在2018 世界移動大會公布,Beta2版本2018年3月6日發布。

開發者可以使用 Flutter 在 iOS 和 Android 平台上開發原生應用,

閑魚、NOW 直播、京東 、美團這些應用也有使用 Flutter。它也是未來的Google新操作系統 Fuchsia 應用的主要開發方式。

 

Flutter的突出優點:

1,熱重載(Hot Reload),利用Android Studio直接一個ctrl+s就可以保存並重載,模擬器立馬就可以看見效果,就這一點比原生安卓制作簡直不知道高到哪里去了。

2,一切皆為Widget的理念,對於Flutter來說,手機應用里的所有東西都是Widget,通過可組合的空間集合、豐富的動畫庫以及分層課擴展的架構實現了富有感染力的靈活界面設計。

3,借助可移植的GPU加速的渲染引擎以及高性能本地代碼運行時以達到跨平台設備的高質量用戶體驗。

  簡單來說就是:最終結果就是利用Flutter構建的應用在運行效率上會和原生應用差不多。

 

原文鏈接:https://www.jianshu.com/p/46f627708d58

Android/iOS跨平台技術比較

對客戶端而言,跨平台技術在持續發展。

 

  • 如果對動態更新的需求比較高,可以選擇ReactNative Weex等框架。

    優點

    動態更新,生態較為成熟,也有很多大廠經驗可以借鑒
    缺點

    學習成本較高,並且有兼容性和性能上的不足,在功能實現
       時可能需要一些妥協。

 

 

  • 如果性能要求較高,可以選擇谷歌最近出的Flutter框架

    優點

    性能保證,甚至比原生更好;

    提供了Material Design風格的支持;

    特別適合一般性的,只是在頁面上增刪改查的業務;

    缺點

    生態還不成熟,如果有復雜的業務或者交互,網上可借鑒的 資源較少;

    版本上線后無法動態更新;

 

 

跨平台方案都有的優點:一個工程師就能開發兩個平台的APP,能提高生產效率。
跨平台方案都有的缺點: 在JNI, 視頻圖片處理等一些領域, 開發會比較有難度, 這塊業務還是用

原生開發比較好.

也可以選擇混合開發,即APP中一般性業務用跨平台或者h5, JNI, 視頻圖片處理等部分用原生.

 

https://www.jianshu.com/p/46f627708d58
2018.05.30 11:32

 

 

 

從根本上說,iOS和Android平台提供具有原生能力和經驗的本機APP。

美學,性能和用戶體驗是原生移動APP的核心,這使得它的采用速度很快,

並且在針對移動友好型網站運行的大量問題上獲得了巨大的普及度。

 

http://www.kingwins.com.cn/content-3246.html
2018-04-20

 

 
 

5、Unity 3D(Unity Technologies)

Unity 3D是一款游戲開發平台,現在也支持 2D 開發,所以一些公司用 unity來做 應用開發,比如那些動畫比較多的界面,用unity很快就能搞定。

引擎本身是由C++寫出的,c#寫的 Mono模塊被嵌入到了Unity當中。

Unity通過Mono使用了一種叫CIL 通用中間語言來實現跨平台開發。同時支持 Android,IOS,Windows和Linux等系統,還支持一些掌上游戲機。

其他的一些2D游戲引擎比如Cocos2dX,也是不錯的跨平台開發方式!

 
 

 

6、微信小程序(騰訊)

所謂小程序,就是運行於微信上的功能性的軟件或應用。2016年9月21日,微信小程序正式開啟內測。2017年1月9日0點,萬眾矚目的微信第一批小程序正式低調上線。從技術上來說,微信小程序應用使用HTML5技術。

目前 微信小程序開發 在國內也是非常的火爆,許多公司都有這方面的需求。

 

2019年2月26日11:19:03  記錄筆記

https://baike.baidu.com/item/hybrid%20app/270520?fr=aladdin

 

Hybrid App是指介於web-app、native-app這兩者之間的 app,它雖然看上去是一個Native App,但只有一個UI WebView,里面訪問的是一個Web App,比如街旁網最開始的應用就是包了個客戶端的殼,其實里面是HTML5的網頁,后來才推出真正的原生應用。再徹底一點的,如掌上百度和淘寶客戶端Android版,走的也是Hybrid App的路線,不過掌上百度里面封裝的不是WebView,而是自己的瀏覽內核,所以體驗上更像客戶端,更高效。
汽車有混合動力Hybrid, 移動應用同樣也有混合模式。Hybrid App(混合模式移動應用)兼具“Native App良好用戶交互體驗的優勢”和“Web App跨平台開發的優勢”。很多人不知道市場上一些主流移動應用都是基於Hybrid App的方式開發,比如百度搜索等。但究竟什么是Hybrid App?如何定義?
Hybrid App:Hybrid App is a mobile application that is coded in both browser-supported language and computer language. They are available through application distribution platforms such as the Apple App Store, Google Play etc. Usually, they are downloaded from the platform to a target device, such as iPhone, Android phone or Windows Phone. The subscribers need to install to run them.
我們來拆解一下里面的含義:
1、mobile application:Hybrid App就是一個移動應用
2、both browser-supported language and computer language:同時使用網頁語言與程序語言編寫
3、available through application distribution platforms:通過應用商店進行分發
4、a target device:區分目標平台
5、install to run:用戶需要安裝使用

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM