flutter项目 发布Google Play

首次发布Flutter应用到Google Play的完整指南

本文将详细介绍如何首次将Flutter应用发布到Google Play商店。对于iOS开发者,也可以使用AppUploader工具来简化iOS应用的上传流程,但本文主要聚焦Android平台的操作。

准备工作

  1. 登录Google Play控制台
  2. 选择需要上传版本的项目并进入发布版本页面

签名密钥设置

重要提示:不要使用Google自动生成的密钥,选择"使用其他密钥"选项。

密钥生成步骤

  1. 新建专用文件夹存储相关文件
  2. 下载加密公钥和PEPK工具到该文件夹
  3. 安装Java Development Kit (JDK)

环境变量配置(Windows示例)

  1. 打开控制面板>系统和安全>系统
  2. 点击"高级系统设置"
  3. 在"系统属性"窗口中点击"环境变量"
  4. 在系统变量中找到Path并编辑
  5. 添加JDK的bin目录路径(如C:\Program Files\Java\jdk-11\bin)

生成签名密钥

在文件夹中打开命令窗口运行:

vbnet 复制代码
keytool -genkey -v -keystore D:\keystore\my-release-key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias my-key-alias

参数说明:

  • -keystore:密钥库文件路径
  • -alias:密钥别名
  • 其他参数保持默认即可

生成Google Play需要的压缩文件

使用pepk.jar工具导出密钥:

vbnet 复制代码
java -jar D:\keystore\pepk.jar --keystore=D:\keystore\my-release-key.jks --alias=my-key-alias --output=D:\keystore\output.zip --include-cert --rsa-aes-encryption --encryption-key-path=D:\keystore\encryption_public_key.pem

项目配置更新

修改android/app/build.gradle文件:

arduino 复制代码
android {
    signingConfigs {
        release {
            keyAlias 'my-key-alias'
            keyPassword 'your-key-password'
            storeFile file('D:\\keystore\\my-release-key.jks')
            storePassword 'your-store-password'
        }
    }
    buildTypes {
        release {
            signingConfig signingConfigs.release
            minifyEnabled false
            shrinkResources false
        }
    }
}

密钥验证与管理

arduino 复制代码
// 检查密钥信息
keytool -list -v -keystore D:\keystore\my-release-key.jks

// 删除密钥(如需重新生成)
del D:\keystore\my-release-key.jks

构建与上传

  1. 生成App Bundle:
arduino 复制代码
flutter build appbundle --release
  1. 在Google Play控制台上传生成的aab文件

对于iOS开发者,AppUploader提供了类似的一站式解决方案,可以简化iOS应用的上传和发布流程。但Android开发者仍需按照上述步骤完成Google Play的发布流程。

提示:发布前请确保已满足所有Google Play的政策要求,并完成必要的应用信息和内容评级设置。

相关推荐
奋进的芋圆8 小时前
DataSyncManager 详解与 Spring Boot 迁移指南
java·spring boot·后端
计算机程序设计小李同学8 小时前
个人数据管理系统
java·vue.js·spring boot·后端·web安全
Echo娴9 小时前
Spring的开发步骤
java·后端·spring
追逐时光者9 小时前
TIOBE 公布 C# 是 2025 年度编程语言
后端·.net
Victor3569 小时前
Hibernate(32)什么是Hibernate的Criteria查询?
后端
Victor3569 小时前
Hibernate(31)Hibernate的原生SQL查询是什么?
后端
_UMR_10 小时前
springboot集成Jasypt实现配置文件启动时自动解密-ENC
java·spring boot·后端
程序员小假10 小时前
我们来说说 Cookie、Session、Token、JWT
java·后端