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

使用tflite包开发实时目标检测App时构建失败求助

解决Flutter中tflite包构建失败问题

错误原因分析

构建失败的核心原因有两点:

  1. 旧版tflite:1.1.2插件的Android模块未指定namespace,而你项目使用的AGP(Android Gradle Plugin)8.1.0要求所有模块必须显式声明namespace。
  2. 插件内置的AGP版本(3.6.3)与项目使用的AGP 8.1.0版本差异过大,存在兼容性冲突;同时插件依赖的jcenter仓库已停止服务,可能导致依赖下载失败。

解决方案

方案一:修改本地tflite插件配置(临时修复)

找到本地缓存的tflite-1.1.2插件目录(路径为~\tflite-1.1.2\android\),修改build.gradle文件如下:

group 'sq.flutter.tflite'
version '1.0-SNAPSHOT'

buildscript {
    repositories {
        google()
        mavenCentral() // 替换已废弃的jcenter
    }

    dependencies {
        classpath 'com.android.tools.build:gradle:8.1.0' // 与项目AGP版本保持一致
    }
}

rootProject.allprojects {
    repositories {
        google()
        mavenCentral() // 替换已废弃的jcenter
    }
}

apply plugin: 'com.android.library'

android {
    namespace "sq.flutter.tflite" // 新增:指定模块namespace
    compileSdkVersion 33 // 升级到与项目兼容的版本(匹配flutter.compileSdkVersion)

    defaultConfig {
        minSdkVersion 21 // 可与项目minSdk保持一致,或保留19
        testInstrumentationRunner 'androidx.test.runner.AndroidJUnitRunner'
    }
    lintOptions {
        disable 'InvalidPackage'
    }
}

dependencies {
    implementation 'org.tensorflow:tensorflow-lite:2.15.0' // 指定具体版本,避免版本漂移
    implementation 'org.tensorflow:tensorflow-lite-gpu:2.15.0'
}

修改完成后,重新运行flutter run即可构建。


方案二:替换为官方维护的TFLite插件(推荐)

旧版tflite:1.1.2已停止维护,建议替换为TensorFlow官方推出的tflite_flutter插件,它兼容最新的AGP和Flutter版本,支持更多TFLite特性。

  1. 修改pubspec.yaml,移除旧插件并添加新插件:
dependencies:
  cupertino_icons: ^1.0.8
  flutter_svg: ^2.0.10+1
  image_picker: ^1.1.2
  camera: ^0.11.0+2
  tflite_flutter: ^0.10.1 # 官方TFLite插件,可使用最新版本
  # tflite_flutter_helper: ^0.4.0 # 可选,提供图像预处理工具
  1. 执行flutter pub get拉取依赖。
  2. 适配新插件的API(例如模型加载、推理执行的方法与旧插件略有不同,可参考插件官方文档调整代码)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.16 03:23:22