Android Studio Arctic Fox 3.1找不到Generate Signed Bundle/APK选项怎么办
你找不到Build > Generate Signed Bundle/APK选项的核心原因是你当前打开的是Flutter项目,Android Studio会默认隐藏原生Android项目的构建相关菜单,既不是安装遗漏组件,也不是版本更新移除了该功能。
解决方案1:通过Android Studio调出原生构建菜单
- 打开当前Flutter项目的文件列表,找到根目录下的
android文件夹 - 右键点击该文件夹,依次选择
Flutter > Open Android module in Android Studio - 在新弹出的Android原生项目窗口中,即可在顶部菜单栏找到
Build > Generate Signed Bundle/APK选项,按照引导即可生成密钥库和签名包
解决方案2:手动生成密钥库并配置Flutter项目(更适合Flutter开发场景)
第一步:生成签名密钥库
根据你的操作系统执行对应命令:
- Windows系统:打开命令提示符,执行
keytool -genkey -v -keystore C:\你的存储路径\upload-keystore.jks -keyalg RSA -keysize 2048 -validity 10000 -alias upload - Mac/Linux系统:打开终端,执行
keytool -genkey -v -keystore ~/upload-keystore.jks -keyalg RSA -keysize 2048 -validity 10000 -alias upload
注意:如果提示找不到keytool命令,可使用Android Studio内置JDK目录下bin文件夹中的keytool绝对路径执行命令
按照提示依次设置密钥库密码、密钥密码、相关身份信息即可完成密钥库生成。
第二步:配置Flutter项目签名规则
- 在项目
android目录下新建key.properties文件,写入以下内容:
storePassword=你设置的密钥库密码 keyPassword=你设置的密钥密码 keyAlias=upload storeFile=密钥库文件的完整存储路径
- 编辑
android/app/build.gradle文件:
- 在
android代码块上方添加以下内容,读取签名配置:
def keystoreProperties = new Properties() def keystorePropertiesFile = rootProject.file('key.properties') if (keystorePropertiesFile.exists()) { keystoreProperties.load(new FileInputStream(keystorePropertiesFile)) }
- 在
android代码块内添加release签名配置:
signingConfigs { release { keyAlias keystoreProperties['keyAlias'] keyPassword keystoreProperties['keyPassword'] storeFile keystoreProperties['storeFile'] ? file(keystoreProperties['storeFile']) : null storePassword keystoreProperties['storePassword'] } }
- 修改
buildTypes代码块中的release配置,启用签名:
buildTypes { release { signingConfig signingConfigs.release } }
第三步:构建签名包
配置完成后,在Flutter项目根目录执行对应命令即可生成可提交Play Store的安装包:
- 构建AppBundle(推荐Play Store提交使用):
flutter build appbundle - 构建APK:
flutter build apk --release
内容的提问来源于stack exchange,提问作者Pheepster
相关产品推荐
相关产品推荐

