999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

reactnative在app開發中的應用研究

2017-09-08 08:16:48焦鋒
數字技術與應用 2017年6期

焦鋒

摘要:React Native是2015年FaceBook研究的一種新的開發APP的技術,通過JavaScript語言來開發APP,且有一次開發隨處使用的理念。因此,也是目前最火的APP前言技術之一。本文主要對該技術在APP開發中的應用進行研究,主要從開發方式、熱更新特點和方法等多個方面進行研究。

關鍵詞:React Native;app;熱更新;JavaScript

中圖分類號:TN929.53 文獻標識碼:A 文章編號:1007-9416(2017)06-0109-01

1 單純的React Native APP應用

單純的React Native應用,實際上就可以理解成是原生應用的一個Activity,通過啟動著一個Activity之后,就通過JS中的各個state狀態,來刷新各個View界面,然后一個APP應用就誕生了。在這種APP應用中,主要是由組件組成中,各個組件組裝成一個大的View。而View 主要是通過state和props來獲取所有的數據以及數據改變時更新View界面。在這種應用中,采用的是盒子布局方式,這種布局方式與原生不同,具有很大的靈活性,分主軸和次軸。然后分別可以設置其樣式。

2 原生APP與React Native APP混合開發的應用

2.1 React Native Activity的自定義

如果進行一個RN項目開發,初始化項目之后,就會有一個Activity是繼承RnActivity的。如果進行混合開發時,由于我們的Activity可能要做很多工作,還想繼承我們原生的Activity。因此,就可以自定義一個RN的Activity,無須繼承官網的Activity。假如,我們已經有了一個BaseActivity。內部可以使用路由進行跳轉。但是混合開發明顯不行,否則將無法正常的在RN和原生界面之間進行來回跳轉。即便可以,復雜度也會大大增加。經過嘗試,在一個混合項目中,可以有若干個RN的Activity,每一個Activity可以開發一個功能。只需要修改上文中的index.android。只要把入口修改了,它就會從不同的入口去找,同時在js入口文件中,要進行注冊。

2.2 原生與JS之間的相互調用

對于JS方法來說,是離不開原生應用的,React Native開發的實質還是進行的原生開發。而且有很多東西,比如硬件的mac、域名獲取或者其他只有原生方法能夠實現的功能,就必須通過原生方法來實現,然后由JS端進行調用。JS調用原生的方法相對來說比較簡單,只需要在原生中注冊Module,然后在方法名之前寫上標識@react method 即可。在JS端通過NativeModules 這個API就可以進行調用。如果想要進行Activity之間的相互跳轉,該JS的activity可以使用currentActivity來找到。然后想要跳轉到原生其他的Activity就比較容易。

3 React Native技術應用到APP中的優勢

(1)熱更新:在當前的APP應用開發中,熱更新是一個非常重要的能力。如果這個應用沒有熱更新的能力,將意味著無法及時的展示自己想要展示的內容給用戶,尤其是電商或者社交類應用,他們的APP更新能力都很頻繁,沒有熱更新的能力,將無法及時的推送最重要的更新給用戶。對于IOS開發者來說,兩周以上的審核周期更是要命,每次開發迭代一個版本都必須要通過IOS的審核機制進行審核,如果采用熱更新的方式,就可以繞過審核機制。因此,React Native所具有的熱更新能力是非常重要的。React Native的熱更新功能,主要是通過更新Bundle文件來實現。對于一個RN應用來說,Bundle文件就是要加載的前端內容。只要更新了Bundle文件,就是更新了整個APP,因此只需要做一個后臺服務,這個后臺服務具有上傳下載Bundle文件的能力。然后在客戶端每次打開的時候向服務端發送請求,看是否有最新的Bundle文件,并進行下載替換即可完成熱更新的工作。

(2)代碼重用度高:目前碼農的成本是越來越高,因此代碼的可重用是很重要的一點,代碼平臺無關性也是每一個技術人員所喜歡的。React Native的Android版本和IOS版本的代碼可以80%以上共用,這在當前主流的原生開發中是難以置信的。同時由于React Native技術是從PC端的React技術演變而來,因此React Native的絕大多數代碼也可以轉化為React來使用,進行PC端的前端開發,因此,一次開發就可以三次使用大大的降低了人力成本和時間成本,對于企業來說是非常可喜的。

(3)開發效率高,漏洞修復快:因為它代碼重用度高,且有熱更新的優勢,因此,也就有了第三個優點,開發效率比較高,且由于它的開發方法的不同,無需每次修改都要通過編譯安裝看效果,且采用模塊化的開發,大大的提升了開發的效率。由于可實時更新Bundle文件,達到每次啟動APP應用都可以使用最新的,因此可快速修復漏洞。endprint

主站蜘蛛池模板: 国产精品成人不卡在线观看| 亚洲有无码中文网| 国产精品制服| 亚洲天堂视频网| 久草视频一区| 国产swag在线观看| 99在线国产| 精品国产污污免费网站| 最新国产精品鲁鲁免费视频| 国产精品太粉嫩高中在线观看| 亚瑟天堂久久一区二区影院| 毛片在线播放网址| 久久亚洲国产一区二区| 色成人综合| 精品国产一区二区三区在线观看| 亚洲欧美成人综合| 精品无码一区二区三区电影| 亚洲精品国产成人7777| 真实国产乱子伦视频| 色综合色国产热无码一| www.91在线播放| 五月婷婷精品| 午夜啪啪福利| 欧美人与动牲交a欧美精品| 亚洲欧美另类日本| 女同久久精品国产99国| 一本一道波多野结衣av黑人在线| 亚洲中文字幕日产无码2021| 国产黄视频网站| 欧美在线国产| 国产免费久久精品99re丫丫一| 玩两个丰满老熟女久久网| 亚洲免费黄色网| 国产青青草视频| 国产视频一二三区| 國產尤物AV尤物在線觀看| 天天色天天操综合网| 国产亚洲视频中文字幕视频| 69av在线| 亚洲IV视频免费在线光看| 亚洲色图狠狠干| 91精品网站| 欧美一区精品| 成人日韩精品| 热热久久狠狠偷偷色男同| 亚洲国产系列| 激情午夜婷婷| 成人免费网站久久久| 亚洲黄色视频在线观看一区| 狠狠ⅴ日韩v欧美v天堂| 青青青国产视频| 亚洲成人网在线观看| 色综合久久久久8天国| 亚洲男人的天堂在线| 国产精品视频猛进猛出| 国产综合色在线视频播放线视| 亚洲免费福利视频| 国产在线观看精品| 国产成人亚洲综合A∨在线播放| 国产丝袜啪啪| 国产精品毛片在线直播完整版| 免费人成黄页在线观看国产| 国产精品第页| 欧美.成人.综合在线| 伊人中文网| 1024你懂的国产精品| 国产SUV精品一区二区6| 国产乱子伦视频在线播放| 天天综合天天综合| 99久久精品免费看国产电影| 中文精品久久久久国产网址| 国产精品v欧美| 国产成+人+综合+亚洲欧美| 中文国产成人精品久久| 国内精品九九久久久精品| 亚洲天堂网在线观看视频| 国产欧美精品一区二区| 国产乱子精品一区二区在线观看| 亚洲最猛黑人xxxx黑人猛交| 婷婷亚洲视频| 在线观看国产精品第一区免费 | 国产国语一级毛片|