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的政策要求,并完成必要的应用信息和内容评级设置。

相关推荐
A接拉起0075 小时前
2026 年 JavaScript 开发者需要了解的知识
前端·javascript·后端
Bazingga5 小时前
RAG评测体系保姆级教程:生产级实践指南
后端
tachibana26 小时前
使用for range 的时候,它的地址会发生变化吗?
开发语言·后端·golang·go·语法
蜗牛互联网6 小时前
GPT-6 与 Intelligent UI:从回答到可审计操作的产品迁移
java·人工智能·后端
王中阳Go7 小时前
Go 后端转 AI:非科班怎么补?一张 3 列路线表(可保存)
开发语言·人工智能·后端·python·golang·大语言模型
IT_陈寒7 小时前
Vite热更新失效?你可能也踩了这个坑
前端·人工智能·后端
行百里er7 小时前
Redis 模块——JSON、向量搜索与时序
redis·后端
一条泥憨鱼9 小时前
【从0开始学习计算机网络】| ARP 协议:地址解析,ARP 欺骗,链路层寻址
网络·后端·学习·计算机网络
2501_933923259 小时前
SpringCloud组件:Eureka服务注册与发现
java·开发语言·后端·spring cloud·eureka
leikooo9 小时前
ARTS 1011: 双堆动态对顶求中位数、IPC 注入与空密码串联接管账户与程序从不做决策
后端