uni-app App原生语言插件开发文档
uni-app在App侧支持原生扩展插件,允许开发者使用Java、Object-C等原生语言进行功能扩展。从HBuilderX 3.6版本开始,新增了使用uts开发原生插件的支持,为了区分,之前的“App原生插件”现已更名为“App原生语言插件”。本文档将全面介绍App原生语言插件的开发与使用方法。
uni.requireNativePlugin(PluginName)
在App平台上,uni-app提供了uni.requireNativePluginAPI来引入App原生语言插件。该API自HBuilderX 1.4版本起得到支持,适用于vue和nvue文件,使用方式一致。
内置原生插件
uni-app已默认集成了一些内置原生插件,可直接在内置基座中运行。在nvue页面中,支持引入BindingX、animation、DOM.addRule等插件;在vue页面中,则支持引入clipboard、storage、stream、deviceInfo等插件。使用这些内置插件时,直接通过uni.requireNativePlugin调用即可。
对于非内置原生插件,分为本地插件和云端插件。集成这些插件后,需提交云端打包或制作自定义基座才能生效。
本地插件(非内置原生插件)
本地插件是指存放在uni-app项目nativeplugins目录下的原生插件。使用本地插件需遵循以下步骤:
- 获取本地原生插件:有两种方式。一是从uni原生插件市场下载免费插件,解压到项目的“nativeplugins”目录;二是开发者自行开发插件,按指定格式压缩为zip包后放置到该目录。
- 配置本地原生插件:在manifest.json的App原生插件配置中,选择本地插件,勾选需要打包的插件,保存后提交云端打包生效。
- 开发调试本地原生插件:在vue或nvue页面中,通过
uni.requireNativePluginAPI传入插件ID来引入和调试插件。 - 打包发布:调试完成后,应重新提交云端打包(不勾选“自定义基座”)以生成正式版本,避免直接使用自定义基座发布。
云端插件(非内置原生插件)
云端插件是指已在插件市场绑定或购买的插件,无需下载到工程中,云打包时会直接合并到APP中。使用云端插件的步骤如下:
- 购买或下载插件:在uni原生插件市场购买或免费获取插件,确保绑定正确的appid和包名。
- 配置云端插件:在manifest.json的App原生插件配置中,选择云端插件,勾选需要打包的插件,保存后提交云端打包。建议使用自定义基座进行真机调试。
- 开发调试插件:在页面中通过
uni.requireNativePlugin引入插件,并进行使用和调试。 - 打包发布:调试完毕后,需重新提交云端打包生成正式版,不应将自定义基座作为正式版本发布。
注意事项
- 开发者可在插件市场浏览更多插件资源,如需开发uni原生插件,请参考官方开发文档。
- 若插件需传递文件路径,应使用手机文件的绝对路径,可借助5+ IO模块的相关API获取。