am15h / tflite_flutter_plugin

TensorFlow Lite Flutter Plugin
https://pub.dev/packages/tflite_flutter
Apache License 2.0
499 stars 352 forks source link

Adding TensorFlowLiteC.framework to local pub-cache may be a problem for external builds #201

Open tattivitorino opened 2 years ago

tattivitorino commented 2 years ago

Hello! I have a doubt and let's see if anyone got into the same issue.

As of version 0.9.0 you removed the TensorFlowLiteC.framework from the ios and we are supposed to add it to our local pub-cache dir. Problem is, I distribute my apps in Firebase App Distribution and the QA and Prod builds are not made local in my machine but through git workflows using fastlane and these scripts run flutter pub get to fetch the libs, pod install and so on..

So my question is how is it gonna fetch TensorFlowLiteC.framework for ios? Will I have a problem building my apps?

any answers will be very much appreciated..

ghost commented 2 years ago

I've managed to find a workaround for this, the solution is to create a fork of this repo, and upload the TensorFlowLiteC.framework folder into the ios folder via git, then rather than adding the tflite_flutter_plugin to your pubspec.yaml file like this:

  tflite_flutter: ^0.9.0

You can add a link to your repo which already contains the TensorFlow Framework:

  tflite_flutter:
    git:
      url: https://github.com/[URL to your fork with the framework uploaded]
      ref: master

Now there should be no need to download and copy the framework manually, whenever flutter pub get is run for your project, it'll download the plugin with the framework from your repo.

I've seen a few people struggling with this issue, and I know I was stuck on it for a couple of days, so hopefully this will help!