谈谈跨平台的app开发 坚决的选择了flutter

目前市场上,(市场也许用的不对),比较常见的技术有xamrin、RN、Flutter,确切的说flutter是后起之秀,笔者也是最近才开始学习,xamrin是微软系的技术,笔者也很早就开始学习了,RN笔者也学习了一小段时间,xamrin和RN 笔者在学习时候的最大感觉就是累, 彻底体会不到编程的乐趣。html

先说说xamrin,我看了一阵子,官网的教程看了一遍,想实现一个复杂一点的界面,想破头皮不知道如何实现,由于xamrin.form的组件会被生成原生的组件,因此这就衍生出了一个很复杂的问题,原生的控件的特性各不同,form控件如何匹配,不少组件特性的匹配,好比我想实现一个通信录的右边首字母索引滑动导航功能,思考了半天不知道如何下手,提供的控件彷佛不太好搭配,须要本身去渲染么,困惑了好几天,(在这里不作吐糟,也许是本身水平达不到)在网上试图搜搜案例,又搜不到,衡量了几天,仍是放弃了,也许xamarin这种映射原生的控件的作法有太大的局限性。java

而后就转向了RN,RN生态要比xamrin好的多,某个功能只要上网一搜索,都有不少案例,好有吸引力啊,笔者就开始踏入了学习之路,与其说是学习之路,倒不如说是踩坑之路,从搭环境开始,须要安装N多的东西,为了开发本身的一款APP,索性忍了,因为采用的是脚本,我又学习了es6,但是es6学习完后,我才发现脚本语言的特性,没有必定的积累,很难摸得十分清楚,可是毕竟也是多年的开发经验,还算hold住,因而我在想脚本有先天的不足性,可是开发者却指望他变得像java、c#这种语言那样强大,因而纷纷改造扩展,从最初的js到es6 7,typescript, 再到各类组件,插件,能够说是鸡毛乱飞啊,好生迷乱,为了开发一款本身的app,忍了,一点点熟悉,但是令我最不能忍得是,我第一天搭建的APP,次日就运行不起来了,因而分析估计是下载了一个插件所致,分析了一成天,彷佛也没找到解决办法,貌似是插件版本的问题,后来解决了,又报了另外一个莫名的错误,哎正在困惑时,又看到了一个夸平台技术,flutter,搜了搜貌似还挺有吸引力,flutter直接本身实现了界面,也就是说flutter本身在安卓和ios上渲染了UI,这个太强悍了,因而又放弃了RN,转投flutter,react

因而又开启了flutter入门之旅android

flutter的开发语言是dart,dart是面向对象的语言,一些语法特性相似java、c#,可是要比他们轻巧的多,因此学起来很快。ios

环境搭建,客观的讲flutter的环境搭建要比rn省事的多,下载flutter sdk,配置环境变量就搞定了(参照官网教程),另外模拟器的安装会有一点点注意的地方。es6

1.模拟器安装,安装android studio,来安装sdktypescript

  • SDK Platforms窗口中,选择Show Package Details,而后在Android 6.0 (Marshmallow)中勾选Google APIsAndroid SDK Platform 23Intel x86 Atom System ImageIntel x86 Atom_64 System Image以及Google APIs Intel x86 Atom_64 System Image
  • SDK Tools窗口中,选择Show Package Details,而后在Android SDK Build Tools中勾选Android SDK Build-Tools 23.0.1。而后还要勾选最底部的Android Support Repository.

另外sdk的安装,flutter官网提供的不详细,彻底能够参照RN的教程来安装sdk https://reactnative.cn/docs/0.47/getting-started.html编程

2.模拟器的启动报haxm c#

bios里启动虚拟化技术,网上有,若是已经启用不用考虑app

D:\Android\Sdk\extras\intel\Hardware_Accelerated_Execution_Manager里的intelhaxm-android.exe有没有安装?

只要作到了这两点,模拟器基本上均可以启动起来

3.启动项目持续的initialzing gradle,等待很长时间

C:\Users\Administrator\.gradle\wrapper\dists该目录下又各类版本的gradle压缩文件,能够在网上先下载下来,而后zip包直接放到对应的目录下,譬如C:\Users\Administrator\.gradle\wrapper\dists\gradle-4.10.2-all\9fahxiiecdb76a5g3aw9oi8rv不须要解压。这样时间就不会好久了。

另外要学会修改项目的gradle版本,不然版本不一样就还要下载,还会等待很长时间

在这两个文件里修改,修改的跟简单,打开一看就知道了不作介绍。

4.开发工具的选择能够是android studio 或者vscode,网上都有介绍,不作介绍,笔者使用的是vscode

 

至此,就能够开心的开发了,多研究别人的源码,熟悉各类套路就是了。

相关文章
相关标签/搜索