You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

添加yookassa_payments_flutter包后Flutter应用显示安卓默认图标问题

解决方案:yookassa_payments_flutter导致安卓图标变为默认的问题

这问题大概率是yookassa_payments_flutter的Android模块资源和你的自定义图标冲突了,试试下面几个解决方案:

  • 强制在Manifest中指定图标
    打开android/app/src/main/AndroidManifest.xml,确保application标签明确指定你的图标资源,避免被第三方包覆盖:

    <application
        android:icon="@mipmap/ic_launcher"
        android:roundIcon="@mipmap/ic_launcher_round"
        <!-- 其他属性 -->
        >
    

    确认android/app/src/main/res/mipmap-*目录下存在对应文件名的图标文件。

  • 彻底清理构建缓存
    执行以下命令清除Flutter和Android的旧构建缓存,避免残留资源干扰:

    flutter clean
    cd android
    ./gradlew clean
    cd ..
    flutter pub get
    

    之后重新构建应用:flutter run 或 flutter build apk

  • 提升本地资源优先级
    打开android/app/build.gradle,在android块中添加资源目录配置,确保本地资源优先加载:

    android {
        // 其他配置
        sourceSets {
            main {
                res.srcDirs = ['src/main/res']
            }
        }
    }
    

    或者直接在src/main/res/mipmap-*目录下创建和第三方包同名的图标文件,本地资源会自动覆盖第三方包的资源。

  • 尝试升级包版本
    检查yookassa_payments_flutter是否有更新版本,新版本可能修复了资源冲突问题。修改pubspec.yaml中的版本号为最新稳定版,比如:

    dependencies:
      yookassa_payments_flutter: ^最新版本号
    

    然后执行flutter pub get更新依赖。

  • 用工具重新生成图标
    如果前面的方法都无效,尝试用flutter_launcher_icons工具重新生成图标,确保资源正确注入:

    1. 在pubspec.yaml的dev_dependencies中添加:
      dev_dependencies:
        flutter_launcher_icons: ^0.13.1
      
    2. 在pubspec.yaml末尾添加配置:
      flutter_launcher_icons:
        android: "launcher_icon"
        ios: true
        image_path: "assets/icon/icon.png" # 替换成你的图标路径
      
    3. 执行生成命令:flutter pub run flutter_launcher_icons:main
    4. 重新构建应用。

内容的提问来源于stack exchange,提问作者houssi_em

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.18 02:23:11