【问题标题】:React-Native Firebase ML Kit Vision Image Labeling not working with iOSReact-Native Firebase ML Kit Vision 图像标签不适用于 iOS
【发布时间】:2023-03-02 21:40:01
【问题描述】:

我正在尝试在我的 RN 应用程序中使用 RNFirebase MLKit 图像标签。它在 android 上运行良好,但在 iOS 上我收到以下错误,

NativeFirebaseError: [vision/file-not-found] 指定的本地文件在设备上不存在。

图片通过"@react-native-community/cameraroll"拍摄,ios图片路径如下,

ph://45983F53-3C96-42D0-9337-C9F681293627/L0/001

我尝试过的修复是,

import {utils} from '@react-native-firebase/app';

${utils.FilePath.PICTURES_DIRECTORY}/${
                d[key].node.image.filename
             }
 'assets-library' +
               '://asset/asset.JPEG?id=' +
               d[key].node.image.uri.substring(5).replace('/L0/001', '') +
               '&ext=JPEG'
ph-upload://45983F53-3C96-42D0-9337-C9F681293627/L0/001

以上都不起作用。

构建版本是,

"react-native": "0.62.2".
"@react-native-community/cameraroll": "^1.5.2".
"@react-native-firebase/ml-vision": "^7.1.0",
"@react-native-firebase/app": "^7.1.0",

【问题讨论】:

  • React-Native Firebase ML Kit 维护得不好,你可能会在项目中使用原生 ObjC 或 Swift。我们将在内部讨论对 React-Native 的支持。

标签: ios react-native react-native-firebase firebase-mlkit google-mlkit


【解决方案1】:

目前未维护 React-Native Firebase ML Kit。我们已将 ML Kit 的设备端 API(包括设备端图像标签)移出 Firebase。请查看 g.co/mlkit 以获取新的独立 ML Kit。我们目前正在制定新的独立 ML Kit 中对 React-Native 支持的未来计划,并且很想听听您对在新的独立 ML Kit 中支持 React-Native 支持的重要性的意见。同时,您可以通过 Swift 或 Objective-C API 在 iOS 上直接使用 ML Kit SDK。

【讨论】:

    【解决方案2】:

    我可以使用 RNFS 包解决这个问题,这是我的解决方法,如果有更好的方法,请告诉我

    使用RNFS.copyAssetsFileIOS(imagePath,destination,0,0) 在临时文件目录RNFS.TemporaryDirectoryPath 中创建一个临时文件,并将该路径用于RN-MLKit。完成后使用RNFS.unlink(path) 删除临时文件。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-11-15
      • 1970-01-01
      • 2021-11-15
      • 2017-06-08
      • 2019-01-31
      • 2022-11-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多