y***@gmail.com
y***@gmail.com
  • 发布:2020-06-25 18:26
  • 更新:2021-06-23 13:58
  • 阅读:1722

ios原生插件在SDK 的 HBuilder-uniPluginDemo 运行正常,生成插件包导入到HBuilderX 本地插件后没反应

分类:HBuilderX

我需要做一个页面内显示摄像头并录像回放保存到相册的功能,之后加上安卓顺便发布一个插件到市场。

在原生插件处理好之后,在 HBuilder-uniPluginDemo 真机调试没问题,然后把插件导出打包后,在 HBuilderX 这边没法用,请问一般是什么情况呢?

也看不到 app 里面运行的调试信息,打开后也没有像 HBuilder-Hello 里面问我是否允许录音和调用摄像头。
调用插件暴露的方法提示这个,感觉插件并没有成功载入进来,也没有任何提示

TypeError: this.$refs.video.startRecord is not a function. (In 'this.$refs.video.startRecord({ 'value': 'Hello' })', 'this.$refs.video.startRecord' is undefined) __ERROR 

真机运行 HBuilder-Hello 项目正常没有问题,xcode 项目用的包就是HBuilderX 里项目打包的本地资源包

然后同一个 uniapp 项目,我把插件导出,配置文件如下:

{  
  "name": "VideoRecorderPlugin",  
  "id": "yellowcr",  
  "version": "1.0.0",  
  "description": "CameraRecordComponent",  
  "_dp_type": "nativeplugin",  
  "_dp_nativeplugin": {  
    "ios": {  
      "plugins": [  
        {  
          "type": "component",  
          "name": "yellowcr",  
          "class": "CameraRecordComponent"  
        }  
      ],  
      "frameworks": [  
        "MobileCoreServices.framework",  
        "AVFoundation.framework",  
        "Foundation.framework",  
        "UIKit.framework",  
        "Photos.framework"  
      ],  
      "integrateType": "framework",  
      "deploymentTarget": "9.0"  
    }  
  }  
}  

HBuilderX 这边项目 nvue 文件我也没动过,目录结构是这样的:
我把这个项目发行生成到本地打包 App 资源,放到 xcode 是可以正常运行的

原生插件的设置也没有问题

ios摄像头相关的权限文字我也随便写了一些

2020-06-25 18:26 负责人:无 分享
已邀请:
1***@qq.com

1***@qq.com

你好,请问原生插件代码怎么在Xcode运行起来

y***@gmail.com

y***@gmail.com (作者)

找到原因了,原来要自定义基座才能调试,我还以为自带基座会自动把插件打包进去呢。

建议这个应该在文档(https://nativesupport.dcloud.net.cn/NativePlugin/course/ios)里写明,不然真的白白浪费很多时间。

因为首页菜单点插件开发手册,再点 iOS 文档跳到上面了,看完整个文档,下面就说要把生成的插件写好 package.json 然后放到 nativeplugins 目录里面然后项目里加这个本地插件就可以使用了,完全没有提到要先自定义基座。

  • z***@qq.com

    自定义基站要求配置文件这些是怎么弄。

    2023-03-29 19:33

该问题目前已经被锁定, 无法添加新回复