我正在尝试从Flutter应用程序使用Google Vision API。我正在使用google_vision包:https://pub.dev/packages/google_vision。从本页的示例中:https://pub.dev/packages/google_vision/example我需要使用auth.json文件来创建Google vision项目。问题是我可以将文件放在哪里以便应用可以找到它。
我尝试将文件添加到asset文件夹中并更新pubspec.yaml文件。但我仍然得到错误代码:
[错误:flutter/运行时/dart_vm_initializer.cc(41)]未处理的异常:文件系统异常:无法打开文件,路径= 'assets/auth/auth.json'(操作系统错误:没有此类文件或目录,errno = 2)
我使用的代码行是:
final googleVision = await GoogleVision.withJwt('assets/auth/auth.json');
作为替代方案,如果有一种方法可以使用API Key而不是json文件,这也是一个很好的解决方案。
1条答案
按热度按时间6mw9ycah1#
您不能直接访问资产文件,因为资产与应用程序捆绑在一起,不是设备文件系统的一部分。您应该使用
package:flutter/services.dart
中的rootBundle
读取资产数据,然后将其再次存储在设备的文件系统中,如GitHub上的google_vision
包示例所示。然后,您可以像这样创建
GoogleVision
-示例: