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

Flutter打包APK报错:BorderRadius?无法赋值给BorderRadiusGeometry参数

解决Flutter打包APK时的BorderRadius空类型错误

错误详情

/C:/src/Pub/Cache/hosted/pub.dev/glass_kit-2.0.1/lib/src/glass_container.dart:406:41: 错误:参数类型'BorderRadius?'无法赋值给参数类型'BorderRadiusGeometry',因为'BorderRadius?'可为空而'BorderRadiusGeometry'不可为空。

  • 'BorderRadius'来自'package:flutter/src/painting/border_radius.dart' ('/C:/src/flutter/packages/flutter/lib/src/painting/border_radius.dart')。
  • 'BorderRadiusGeometry'来自'package:flutter/src/painting/border_radius.dart' ('/C:/src/flutter/packages/flutter/lib/src/painting/border_radius.dart')。
    代码行:current = ClipRRect(borderRadius: borderRadius, child: current);

解决方法

方法1:临时修改依赖包源码

  • 找到本地依赖包路径:C:/src/Pub/Cache/hosted/pub.dev/glass_kit-2.0.1/lib/src/glass_container.dart
  • 定位到第406行,将原代码修改为:
    current = ClipRRect(borderRadius: borderRadius ?? BorderRadius.zero, child: current);
    
    通过空合并运算符??给borderRadius设置默认值BorderRadius.zero,确保参数不为空。
  • 保存修改后,重新执行打包命令:flutter build apk

方法2:更新依赖包版本

  • 检查glass_kit包的最新版本,若已有修复空安全适配的版本,在项目的pubspec.yaml中更新依赖:
    dependencies:
      glass_kit: ^最新版本号
    
  • 执行flutter pub get拉取新版本,之后再尝试打包。

方法3:自定义依赖源(可选)

  • 若官方未及时更新,可fork glass_kit仓库,自行修复该空安全问题后,在pubspec.yaml中引用自定义仓库:
    dependencies:
      glass_kit:
        git:
          url: https://github.com/你的用户名/glass_kit.git
          ref: 修复后的分支名称
    
  • 执行flutter pub get后重新打包。

内容的提问来源于stack exchange,提问作者Freaking Boy Hasib

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.12 08:02:38