flutter项目用vscode打包apk包,完美运行到手机上

1.创建密钥库

执行以下命令:

复制代码
keytool -genkey -v -keystore F:/key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias key

生成 2,048 位RSA密钥对和自签名证书 (SHA256withRSA) (有效期为 10,000 天)

2.填写密钥内容

执行以上命令后会提示一次输入密钥库密码、确认密码、名字、单位等信息,最后问你是否确认创建,回复'y'回车确认。

此时在F根目录中会出现一个key.jks文件。(F:/key.jks目录结构自己自定义即可)

注意:

  • 保持文件私密; 不要将它加入到公共源代码控制中。
  • 此操作生成的签名是*.jks格式

3.引用密钥库

创建一个名为/android/key.properties的文件,其中包含对密钥库的引用:

复制代码
storePassword=<创建keystore时的storePassword>
keyPassword=<创建keystore时的keyPassword>
keyAlias=key
storeFile=<密钥库文件的位置 , 例如: F:/key.jks>

文件内容和层级如图所示:

注意:

  • 保持文件私密; 不要将它加入公共源代码控制中.
  • storeFile 这里要使用绝对路径

4.配置gradle中的签名

通过编辑/android/app/build.gradle文件为您的应用配置签名

如图所示:

debug修改为release

增加的代码如下,直接复制,放到自己对应的位置

复制代码
// 增加这三行代码
def keystoreProperties = new Properties()
def keystorePropertiesFile = rootProject.file('key.properties')
if (keystorePropertiesFile.exists()) {
    keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
}

// 增加这块代码

signingConfigs {

release {

keyAlias keystoreProperties['keyAlias']

keyPassword keystoreProperties['keyPassword']

storeFile file(keystoreProperties['storeFile'])

storePassword keystoreProperties['storePassword']

}

}

5.打包

执行命令 flutter build apk 打包信息如下

文件夹也成功的看到app-release.apk

安装到手机,完美运行,这次就分享到这里,下次有好东西继续和大家分享。

相关推荐
庄雨山1 小时前
Flutter+Riverpod+开源鸿蒙:新一代跨端状态管理实战
flutter·开源·openharmonyos
遝靑2 小时前
深入 Flutter 底层:自定义 RenderObject 实现高性能异形列表项
flutter
爱吃大芒果2 小时前
Flutter 网络请求完全指南:Dio 封装与拦截器实战
开发语言·javascript·flutter·华为·harmonyos
kirk_wang3 小时前
Flutter 三方库 `flutter_phone_direct_caller` 在 OpenHarmony 平台的适配实战
flutter·移动开发·跨平台·arkts·鸿蒙
爱吃大芒果4 小时前
Flutter 自定义 Widget 开发:从基础绘制到复杂交互
开发语言·javascript·flutter·华为·ecmascript·交互
孤鸿玉4 小时前
Flutter官方正在搞热更新(动态化)?硬核,干货,有证据,有代码
flutter·开源
L、2184 小时前
Flutter 与开源鸿蒙(OpenHarmony)的融合开发实践
flutter·开源·harmonyos
名字被你们想完了4 小时前
Flutter 实现一个容器内部元素可平移、缩放和旋转等功能(四)
flutter
爱吃大芒果4 小时前
Flutter 本地存储方案:SharedPreferences、SQFlite 与 Hive
开发语言·javascript·hive·hadoop·flutter·华为·harmonyos