uni-app xcode 制作iOS原生插件

官方原生插件教程:

https://nativesupport.dcloud.net.cn/NativePlugin/course/ios.html#导入-uni-app-资源

官方离线SDK,包括插件demo

https://nativesupport.dcloud.net.cn/AppDocs/download/ios.html

官方uni原生插件包格式说明

https://nativesupport.dcloud.net.cn/NativePlugin/course/package.html

1、最好在官方提供的HBuilder-uniPluginDemo demo基础上自己创建iOS framework,这样免去很多xcode运行配置,其他文章也提到了用cocoapod方式,cocoapod方式不建议使用,很多错误无法定位,配置也很容易出错

2、iOS如果自定义的framework中用到了第三方sdk,需要将第三方sdk打包成framework,将第三方framework添加到自定义的framework中,一起编译,builde出来的.a或者.framework文件提供给uni-app使用,同时将引用的第三方framework放到uni-app项目 nativeplugins 目录下,具体的nativeplugins文件配置可以看官方文档;

3、遇到的几个uni-app引用插件包的问题:

module类型的插件文件,可以在uni-app任何位置和页面使用

component类型的组件:

1、只能在nvue中使用,不能在vue中使用,在vue中使用会无效

2、iOS传递事件名称和前端监听事件的名称都用小写字母

3、iOS传递给前端的事件是驼峰命名,vue3会将组件驼峰命名事件转化成'-'连接,例如将onEvent转化成on-event,防止其他情况转化,统一用小写字母命名

4、iOS所有组件的事件函数名称命名都是adevent,前端本地事件接收函数可以是其他的命名,例如:onRewardedAdEvent、onBannerAdEvent

如果在vue2版本中运行项目没有任何问题,在vue3中运行会提示下面这样的警告,如果不影响正常组件的展示和方法事件的调用,就不用处理:

Vue warn: Failed to resolve component: xh-mercad

11:58:16.704 If this is a native custom element, make sure to exclude it from component resolution via compilerOptions.isCustomElement.

11:58:16.704 at <Index __pageId=1 __pagePath="pages/adtest/index" __pageQuery= {} >

相关推荐
2501_915918411 天前
详解iOS App上架至App Store的全流程步骤与注意事项
android·macos·ios·小程序·uni-app·cocoa·iphone
anyup1 天前
终于在今天入选了 Gitee GVP,这真值得庆祝~
前端·uni-app·开源
虚惊一场1 天前
撤销为什么只需要 pop:用事件重放实现离线台球计分
微信小程序·uni-app
虚惊一场1 天前
从一个小程序到一座工具箱:uni-app 分包与 Flask 微服务实践
微信小程序·uni-app
Cry丶1 天前
【已解决】adb devices 能识别手机,但 HBuilderX 搜索不到设备的避坑指南
android·adb·uni-app·hbuilderx·真机调试
清风programmer2 天前
H5与小程序通信
前端·vue.js·uni-app
2501_915918414 天前
深入对比iOS开发中常用性能监控工具的底层原理与优缺点分析
android·ios·小程序·https·uni-app·iphone·webview
AI多Agent协作实战派4 天前
AI多Agent协作系统实战(二十三):Agent读HEARTBEAT.md不读AGENTS.md——openclaw的文件加载之谜
前端·数据库·人工智能·uni-app
tg-zm8899964 天前
uni-app开发经验分享-跨端开发经验总结
uni-app
m0_547486664 天前
《Vue.js + uni-app全栈开发从入门到实践 》全套PPT课件2026版
vue.js·uni-app