• 如何在Android Studio上发布Flutter应用


    发布Flutter应用到Android平台是一个多步骤的过程,涉及配置应用、生成签名密钥、配置Gradle文件、构建发布版本APK等步骤。本文将详细介绍这些步骤,帮助你顺利发布Flutter应用。

    1. 准备你的应用

    在发布之前,确保你的应用在开发环境中运行良好,所有功能都已测试通过。

    2. 更新应用版本信息

    打开 pubspec.yaml 文件,更新应用的版本信息:

    version: 1.0.0+1
    

    1.0.0 是应用的版本号,+1 是构建号。你可以根据需要进行修改。

    3. 配置 build.gradle 文件

    打开 android/app/build.gradle 文件,确保以下配置正确:

    android {
        compileSdkVersion 33
    
        defaultConfig {
            applicationId "com.example.your_app_name"
            minSdkVersion 21
            targetSdkVersion 33
            versionCode 1
            versionName "1.0"
        }
    
        signingConfigs {
            release {
                keyAlias keystoreProperties['keyAlias']
                keyPassword keystoreProperties['keyPassword']
                storeFile file(keystoreProperties['storeFile'])
                storePassword keystoreProperties['storePassword']
            }
        }
        buildTypes {
            release {
                // 启用代码压缩和资源缩减
                minifyEnabled true
                shrinkResources true
                // 使用混淆文件
                proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
                signingConfig signingConfigs.release
            }
        }
    }
    好的,继续完成这篇文章。
    
    ---
    
    ## 4. 生成签名密钥
    
    为了在发布时签名你的应用,你需要生成一个签名密钥。
    
    ### 生成签名密钥
    
    在终端中运行以下命令来生成签名密钥:
    
    ```bash
    keytool -genkey -v -keystore D:\Administrator\AndroidStudioProjects\Zhipeng_Wang_Portfolio\android\app\my-release-key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias my-key-alias
    

    运行该命令后,你会被提示输入以下信息:

    • 密钥库密码(storePassword)
    • 密钥密码(keyPassword)— 可以设置为与密钥库密码相同
    • 其他关于证书的信息(例如:名字、组织、城市等)

    创建 key.properties 文件

    android 目录下创建一个名为 key.properties 的文件,并添加以下内容:

    storePassword=your_keystore_password
    keyPassword=your_key_password
    keyAlias=my-key-alias
    storeFile=D:\\Administrator\\AndroidStudioProjects\\Zhipeng_Wang_Portfolio\\android\\app\\my-release-key.jks
    

    请将 your_keystore_passwordyour_key_password 替换为你在生成密钥库时设置的实际密码。

    配置 build.gradle 文件

    编辑 android/app/build.gradle 文件,确保正确引用 key.properties 文件中的信息:

    def keystorePropertiesFile = rootProject.file("key.properties")
    def keystoreProperties = new Properties()
    keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
    
    android {
        compileSdkVersion 33
    
        defaultConfig {
            applicationId "com.example.your_app_name"
            minSdkVersion 21
            targetSdkVersion 33
            versionCode 1
            versionName "1.0"
        }
    
        signingConfigs {
            release {
                keyAlias keystoreProperties['keyAlias']
                keyPassword keystoreProperties['keyPassword']
                storeFile file(keystoreProperties['storeFile'])
                storePassword keystoreProperties['storePassword']
            }
        }
        buildTypes {
            release {
                // 启用代码压缩和资源缩减
                minifyEnabled true
                shrinkResources true
                // 使用混淆文件
                proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
                signingConfig signingConfigs.release
            }
        }
    }
    

    创建 proguard-rules.pro 文件

    确保项目根目录下的 android/app 文件夹中有一个 proguard-rules.pro 文件。如果没有这个文件,可以创建一个简单的 proguard-rules.pro 文件:

    创建 android/app/proguard-rules.pro 文件,内容如下:

    # Add project specific ProGuard rules here.
    # By default, the flags in this file are appended to flags specified
    # in D:\android-sdk\tools\proguard\proguard-android.txt
    # You can edit the include path and order by changing the proguardFiles
    # directive in build.gradle.
    
    # For more details, see
    #   http://developer.android.com/guide/developing/tools/proguard.html
    
    # Add any project specific keep options here:
    
    # If your project uses WebView with JS, uncomment the following
    # and specify the fully qualified class name to the JavaScript interface
    # class:
    #-keepclassmembers class fqcn.of.javascript.interface.for.webview {
    #   public *;
    #}
    

    5. 构建发布版本

    在终端中运行以下命令来构建发布版本的 APK:

    flutter build apk --release
    

    构建完成后,你可以在 build/app/outputs/flutter-apk/app-release.apk 路径下找到生成的 APK 文件。

    6. 发布应用

    发布到 Google Play

    1. 登录 Google Play Console,创建一个新的应用或选择一个现有的应用。
    2. 按照步骤填写应用信息,并上传 app-release.apk 文件。
    3. 提交审核,审核通过后你的应用就会在 Google Play 商店中上线。

    发布到其他平台

    如果你打算发布到其他平台,可以将生成的 APK 文件上传到相应的平台。

    7. 更新应用图标

    你可以使用 flutter_launcher_icons 包来更新应用图标。以下是步骤:

    安装 flutter_launcher_icons

    pubspec.yaml 文件中添加 flutter_launcher_icons 依赖:

    dev_dependencies:
      flutter_launcher_icons: ^0.9.2
    
    flutter_icons:
      android: true
      ios: true
      image_path: "assets/icon/icon.png"
    

    确保你在 assets 文件夹下有一个图标文件,例如 assets/icon/icon.png

    生成应用图标

    在项目根目录运行以下命令生成图标:

    flutter pub run flutter_launcher_icons:main
    

    通过这些步骤,你可以成功地为你的Flutter应用设置新的图标,并生成不同尺寸的应用图标。

    总结

    通过本文的详细步骤,你可以在Android Studio上发布一个Flutter应用。关键步骤包括配置应用、生成签名密钥、配置Gradle文件、构建发布版本APK,以及更新应用图标。希望这篇文章能帮助你顺利发布你的Flutter应用。如果有任何问题或需要进一步的帮助,请随时联系我。

  • 相关阅读:
    JDK的安装
    所有产品都值得用AI再做一遍,让AGI与品牌营销双向奔赴
    背包算法(Knapsack problem)
    北大肖臻老师《区块链技术与应用》系列课程学习笔记[13]以太坊-状态树
    mvc 异常处理源码解析(3)
    java tcp接收日志
    ubuntu下开发can数据的接收和发送案例(开发案例一)
    国泰君安期货:基于分布式架构的智能推送系统,满足单日亿级消息处理量
    数据可视化新秀 DataEase 可否替代 Tableau?
    WinEdt 11.1编辑器的尝鲜体验
  • 原文地址:https://blog.csdn.net/m0_52537869/article/details/139667798