目前主流的移動跨平臺技術方案大致能夠分爲三類,一類是使用原生內置瀏覽器加載HTML5的Hybrid技術方案,採用此種方案的主要有Cordova、Ionic和微信小程序;另外一類是使用JavaScript語言進行開發,而後使用原生組件進行渲染,採用此方案的主要有React Native、Weex和快應用;最後一類是使用自帶的渲染引擎和自帶的原生組件來實現跨平臺,採用此種方案的主要是Flutter。css
對於其餘的瀏覽器方案,基本能夠拋棄了,如今咱們討論移動跨平臺開發主要說的是React Native和Flutter,React Native和Flutter在應用開發上,效率差很少,不過要強調性能的話,仍是Flutter爲最佳選擇。因爲如今你們都開始使用Flutter來開發應用,致使React Native的學習資料愈來愈少。
做爲跨平臺的忠實粉絲,我在去年的下半年對《React Native移動開發實戰》進行了升級,出版了《React Native移動開發實戰》的第二版,書中對以前的知識作了從新的梳理,使之更加貼近項目實戰,有須要的能夠去京東,天貓支持下。html
做爲目前比較流行的移動跨平臺開發方案之一,React Native仍然還有不少的粉絲,特別是熟悉前端React開發的技術人員,國內大廠都在使用哪些移動跨平臺框架羅列了目前在使用跨平臺技術進行應用開發的一些廠商。前端
<!-- TOC -->node
<!-- /TOC -->git
它山之石能夠攻玉。
React-Native開發的庫/ SDK類型。
useNativeDriver
is not supported because the native animated module is missinguseNativeDriver
is not supported because the native animated module is missinglibRCTAnimation.a
文件導入 react-native issues #11094應用反應緩慢,出現卡頓:es6
<resources> <string name="app_name">Your_app_name_to_display</string> </resources>
android{ applicationVariants.all { variant -> variant.outputs.each { output -> def outputFile = output.outputFile if (outputFile != null && outputFile.name.endsWith('.apk')) { File outputDirectory = new File(outputFile.parent); def fileName // 你的apk打包名稱 if (variant.buildType.name == "release") { fileName = "app_v${defaultConfig.versionName}_${releaseTime()}_${variant.productFlavors[0].name}.apk" } else { fileName = "app_v${defaultConfig.versionName}_${packageTime()}_debug.apk" } output.outputFile = new File(outputDirectory, fileName) } } } }