Flutter-打包

Flutter—— 打包

听闻Flutter的打包编译与通常Android工程项目的编译不同,Flutter的打包编译是通过调用Flutter命令行来实现的。

🤷‍♂️初学Android,不知道通常Android工程项目的编译,之后学习了,会再来补充的!

Android 应用打包

flutter build apk

通常,对于一个标准的Flutter工程,只要进入根目录执行以下命令就可以完成打包

 flutter build apk

默认属性是--release,因此会默认打出release包。当然,如果你要打debug包,可以这么做

flutter build apk --debug

打包好的 apk 位于<app dir>/build/app/outputs/apk/app-release.apk

Debug 和 Release 版的区别
概念
  • Debug:调试版本,包含调试信息,所以容量比Release大很多,并且不进行任何优化(优化会使调试复杂化,因为源代码和生成的指令间关系会更复杂),便于程序员调试。Debug模式下生成两个文件,除了.exe或.dll文件外,还有一个.pdb文件,该文件记录了代码中断点等调试信息

  • Release:发布版本,不对源代码进行调试,编译时对应用程序的速度进行优化,使得程序在代码大小和运行速度上都是最优的。(调试信息可在单独的PDB文件中生成)。Release模式下生成一个文件.exe或.dll文件

区别
  • 这俩种版本的applicationId是不同的,因此可以同时安装在同一台设备上。

这会导致需要 填写applicationId申请的第三方平台使用不正常,比如小米推送和微信分享

  • 混淆问题
    • 使用Gson或者FastGson 转换Json字符后提供给某些类使用,比如Adapter。Release版本发现列表不能正常显示,结果是因为混淆的时候没有keep相关的Entity类。
    • 使用反射,利用类名调起类时,注意keep该类,防止混淆。

在Android Studio中的混淆debug与release

IOS应用打包

  1. 进入根目录执行flutter build ios以创建release版本
    在这里插入图片描述

IOS应用打包只支持在mac中打包,不支持在window下打包。

  1. 为确保Xcode刷新release模式配置,关闭并重新打开Xcode workspace。对于Xcode 8.3和更高版本,这一步不是必需的
  2. 在Xcode中,配置应用程序版本并构建:
    • 在Xcode中,在您工程目录下的ios文件夹中打开Runner.xcworkspace.

    • 选择Product > Scheme > Runner.

    • 选择 Product > Destination > Generic iOS Device.

    • 在Xcode项目导航器中选择 Runner , 然后在设置视图边栏中选择选择Runner target .

    • 在Identity部分中,将Version更新为您希望发布的面向用户的版本号

    • 在Identity部分中,将Build标识更新为用于跟踪iTunes Connect上的此版本的唯一版本号。每次上传都需要一个唯一的build号

    • 最后,创建一个构建档案并将其上传到iTunes Connect:

    • 选择 Product > Archive 以生成构建档案.
      在Xcode Organizer窗口的边栏中,选择您的iOS应用程序,然后选择您刚刚生成的build档案
      点击Validate… 按钮. 如果报错,请解决它们并生成另一个build。您可以重复使用相同的build ID,直到您上传档案

Flutter 应用打包

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值