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

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

相关推荐
FungLeo19 小时前
Flutter fl_chart 0.70 破坏性 API 迁移实录:duration/getTooltipColor/withValues 全解
flutter·fl_chart
FungLeo1 天前
Flutter 吸顶分组列表实战:语义桶分组 + 点击头平滑滚动
android·flutter
FungLeo1 天前
Flutter 超长 StatefulWidget 拆分术:part of + extension on State 实战
android·flutter·dart
GitLqr1 天前
Impeller 时代:Shader Jank 消失了,但渲染性能的战场也变了
flutter·面试·性能优化
恋猫de小郭1 天前
Flutter 的另外一种形态?社区 DartNative 要来了。
android·前端·flutter
阿里云云原生2 天前
还原一次用户等待:深度解析 Flutter RUM SDK 如何打通 Dart 到 Native 的观测链路
flutter
_阿南_2 天前
flutter 展示的字体突然奔放了
android·flutter·ios
iCxhust2 天前
8088单板机VScode集成开发环境使用方法
ide·笔记·vscode·编辑器·微机原理·8088单板机
GitLqr2 天前
玩转 Dart typedef:不仅是函数别名那么简单
flutter·面试·dart
如何原谅奋力过但无声2 天前
现代化Python工具:uv、Ruff、Pyright、Rich(只讲重点版)
vscode·python·uv