
正文
flutter可以做APP吗 flutter可以做什么
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
为什么说移动端的未来是Flutter?
Flutter是Google开发的新一代跨平台方案,Flutter可以实现写一份代码同时运行在iOS和Android设备上,并且提供很好的性能体验。Flutter使用Dart作为开发语言,这是一门简洁、强类型的编程语言。Flutter对于iOS和Android设备,提供了两套视觉库,可以针对不同的平台有不同的展示效果。
Flutter原本是为了解决Web开发中的一些问题,而开发的一套精简版Web框架,拥有独立的渲染引擎和开发语言,但后来逐渐演变为移动端开发框架。正是由于Dart当初的定位是为了替代JS成为Web框架,所以Dart的语法更接近于JS语法。例如定义对象构建方法,以及实例化对象的方式等。
在Google刚推出Flutter时,其发展很缓慢,终于在18年发布第一个Bate版之后迎来了爆发性增长,发布第一个Release版时增长速度更快。可以从Github上Star数据看出来这个增长的过程。在19年最新的Flutter 1.2版本中,已经开放Web支持的Beta版。
Flutter不仅仅提供了一套视觉库,在Flutter整体框架中包含各个层级阶段的库。例如实现一个游戏功能,上面一些游戏控件可以用上层视觉库,底层游戏可以直接基于Flutter的底层库进行开发,而不需要调用原生应用的底层库。Flutter的底层库是基于Open GL实现的,所以Open GL可以做的Flutter都可以。
相关问答
Q1: flutter 常见问题之app体积为何比较大
细心的开发者会发现flutter构建的App体积比native的大一些,是什么原因造成App体积大呢?
其实flutter 在release时App体积和native的大小差不多,而debug时体积通常会大。debug版本体积较大是为了Hot reload和快速编译。如果有flutter开发经验的朋友都体验过,如果您修改一下App的背景颜色,只需save一下就可以立刻看到修改后效果。我称之为“像艺术家一样在创造App”,因此为了实现这些目标,提高开发的效率,debug将占用全部资源。而当我们构建release版时,flutter又会采用AOT策略,提高App运行效率,release版只打包必需的资源,因而体积又会减少。
另外,flutter团队也一直在寻找减小程序大小的方法。
Q2: Flutter - APP打包
一、flutter ios 打包
方案一:
1、xcode 启动iOS项目 添加证书和描述文件
2. 命令 flutter build ios
等待一段时间 自动会在build/ios 下面的文件夹会输出.app 包, 输出路径有
/Users/turnmomment/development/hook_up/build/ios/iphoneos/Runner.app
3. 建一个文件夹命名Payload,将Runner.app 文件拷入该文件夹,将此此文件夹压缩成zip格式,重命名成ipa格式。好了,安装包可以装机测试了。
方案二: 直接使用使用archive 方式打包
二、 Android 打包:
1. 设置图标图片和启动页
2. 添加
lintOptions{
disable 'InvalidPackage'
checkReleaseBuilds false
}
3. 执行命令 flutter build apk
Q3: 一款体验美妙的Flutter个人APP -- Checkio
How time flies. 时光荏苒。
这是一个花了半年业余时间做的一款习惯打卡APP,吸取了市面上很多产品经验。
Q4: Flutter设置APP版本与构建版本
当一个纯Flutter APP开发完成,我们要打包发布到App Store和各大安卓市场,这时候我们需要设置APP的版本号。
如果我们在使用原生iOS或者Android开发的时,我们会在info.plist中设置 version 和 build 或是在build.gradle中设置 versionName 和 versionCode ,他们分别表示APP的版本和构建版本。
但是我们在使用Flutter管理APP版本时,打开 pubspec.yaml 只看到一个 version 字段。这时候我们应该怎么设置APP的 version 和 build 呢?
我们在pub上随便找一个Flutter的组件,例如官方的 camera ,我们可以看到截止目前为止最新的版本为: camera: ^0.5.2+1 。看到这里,我想大家都明白了,Dart采用的是加号式的版本描述方式, + 前面是版本号, + 后面是当前版本的build号。所以我们设置APP的版本号和build次数,在这里设置即可,例如: version: 1.2.0+1 。
当我们新建一个Flutter工程的时候,我们分别使用Xcode和Android Studio打开iOS和Android的工程可以看到,iOS中的 version 和 build 的值分别为 FLUTTER_BUILD_NAME 和 FLUTTER_BUILD_NUMBER :
同样我们打开Android工程可以看到有如下定义:
事实上,Flutter在编译的时候会生成 ios/Flutter/Generated.xcconfig 和 android/local.properties 文件。这两个文件由Flutter编译自动生成,不可更改。记录了包含SDK路径或者文件路径,版本信息,环境配置(release/debug)等信息。原生工程获取版本信息的变量就定义在这两个文件里面。
Q5: Flutter开源app---开眼短视频
在玩安卓上有款组件化开源app的项目,一款模仿 Eyepetizer | 开眼视频的 开源app,这款app设计风格特别喜欢的,比较简洁,美观,然后最近又在学flutter的知识,于是就写了一款flutter版本的开源短视频,效果也是听不错的,废话不多说,先上效果图。
先附上项目地址:
项目api会在后面的参考链接里,或者直接项目内查看。
项目地址:
更新:6/30 项目新增下拉刷新,上拉加载功能
kotlin版本开眼短视频开发中,敬请期待...
总结:在此感谢参考的伙伴的文章,写的也很好,然后我将这个项目改写成了flutter,当中也学习到了很多flutter相关的知识,后续还有继续巩固,不断学习。
参考链接(包含本项目的api)
flutter可以做APP吗的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于flutter可以做什么、flutter可以做APP吗的信息别忘了在本站进行查找喔。






