Flutter学习笔记(五)打包上线
Flutter Mac 打包 apk 和 ipa
一、打包 apk
- 配置APP的名称、图标 /android/app/src/main/res/ 会看到很多mipmap-为前缀命名的文件夹,即为修改APP Icon的地方; /android/app/src/main/AndroidManifest.xml 在AndroidManifest.xml里面找到application标签
android:label="项目名"
android:icon="@mipmap/图标名">
- 应用程序签名 在 macOS 终端系统上,执行下面的命令,即可成功
keytool -genkey -v -keystore ~/key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias key
如提示需要安装Java SDK ,可去官网下载。
之后是输入各种口令,密码、姓名、地区等
- 创建 key.properties 在 /android/key.properties 路径中,手动创建 key.properties文件,并粘贴下面的代码
storePassword = 123456
keyPassword = 123456
keyAlias = key
storeFile = /Users/minjinglin/key.jks //这里改为自己的
- 在build.gradle中配置签名 /android/app/build.gradle 编辑文件来为app配置签名:
找到 android{}
代码块上一行添加如下代码:
def keystoreProperties = new Properties()
def keystorePropertiesFile = rootProject.file('key.properties')
if (keystorePropertiesFile.exists()) {
keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
}
把 buildTypes 代码块替换为下面代码:
signingConfigs {
release {
keyAlias keystoreProperties['keyAlias']
keyPassword keystoreProperties['keyPassword']
storeFile keystoreProperties['storeFile'] ? file(keystoreProperties['storeFile']) : null
storePassword keystoreProperties['storePassword']
}
}
buildTypes {
release {
signingConfig signingConfigs.release
}
}
- 生成APK 终端运行
flutter build apk
即可生产apk,位置在 /build/app/outputs/flutter-apk/app-release.apk
注:Flutter打包release版本安卓apk包真机安装无法请求网络的解决方法
在这个文件里,android\app\src\main\AndroidManifest.xml,manifest 里添加这段代码:
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
二、打包 ipa
打包ipa就比较简单了,除了耗时一点,没有那么多命令修改。前提是你的证书要提前配置好。
-
选中iOS目录,用Xcode打开 .xcworkspace 文件;
-
配置APP的名称、图标
3.点击Product的Archive,根据提示操作,打包ipa
I’m not perfect. But I keep trying.
转载自:https://juejin.cn/post/6915357642064052232