ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

vscode打包flutter发布版apk文件

2021-06-18 11:05:36  阅读:278  来源: 互联网

标签:vscode app keystoreProperties apk android flutter ###


> 参考文档:https://flutter.dev/docs/deployment/android ### 1、查看keytool安装路径,AndroidStudio toolschain目录 ``` flutter doctor -v ``` ### 2、生成证书,并复制到项目\android\app\目录下 ``` C:\AndroidStudio\jre\bin\keytool -genkey -v -keystore d:\flutter-app.jks -storetype JKS -keyalg RSA -keysize 2048 -validity 36500 -alias nc65 C:\AndroidStudio\jre\bin\keytool -importkeystore -srckeystore d:\flutter-app.jks -destkeystore d:\flutter-app.jks -deststoretype pkcs12 ``` ### 3、在项目\android\目录下添加key.properties配置文件 ``` storePassword=xxxxxxxx keyPassword=xxxxxxxx keyAlias=nc65 storeFile=flutter-app.jks ``` ### 4、修改项目\android\app\目录下的build.gradle文件,增加证书及编译相关配置信息 ``` # android 代码块之前添加内容 def keystoreProperties = new Properties() def keystorePropertiesFile = rootProject.file('key.properties') if (keystorePropertiesFile.exists()) { keystoreProperties.load(new FileInputStream(keystorePropertiesFile)) } android { ... # android代码块内替换buildTypes代码块内容 signingConfigs { release { keyAlias keystoreProperties['keyAlias'] keyPassword keystoreProperties['keyPassword'] storeFile keystoreProperties['storeFile'] ? file(keystoreProperties['storeFile']) : null storePassword keystoreProperties['storePassword'] } } buildTypes { release { signingConfig signingConfigs.release } } } ``` ### 5、检查并确认相关权限配置,否则打包出来的APK会没有相关权限 ``` # 项目\android\app\src\profile\AndroidManifest.xml # 项目\android\app\src\main\AndroidManifest.xml # 需注意,相关权限要添加到manifest节点下,而不是application节点 ``` ### 6、打包apk,打包好的apk文件路径为:项目\build\app\outputs\flutter-apk\app.apk ``` flutter build apk # 分平台打包 flutter build apk --split-per-abi ```

标签:vscode,app,keystoreProperties,apk,android,flutter,###
来源: https://blog.51cto.com/dusthunter/2920536

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有