当前位置: 首页 > news >正文

uniapp引入Android原生第三方的SDK

1、根据厂商提供的SDK,找到其文件中的JAR文件,保存待用。

2、去uniapp官网上面下载uniapp原生插件,找到下方链接,下载Android离线SDKhttps://nativesupport.dcloud.net.cn/AppDocs/download/android.html

下载完使用UniPlugin-Hello-AS文件,下载一个Android Studio,将这个文件在Android Studio中打开,没有使用过Android Studio也没关系,跟着流程走就行了

打开之后文件显示为

这个地方分两种解决方法,一种是使用自己去封装module模块,一种是直接使用uniplugin_module

直接在这个模块中操作,我建议直接用uniplugin_module,直接在里面修改添加就行了,操作比较简单一下。

打开 uniplugin_module 目录下的 build.gradle,确保包含必要的依赖:

dependencies { // uni-app 核心库(必须) compileOnly fileTree(dir: '../app/libs', include: ['uniapp-v8-release.aar']) // fastjson(必须) compileOnly 'com.alibaba:fastjson:1.2.83' // 厂商 SDK:将 SmbdLed 相关的 aar/jar 放入 libs 目录 implementation fileTree(dir: 'libs', include: ['*.jar', '*.aar']) }
将厂商 SDK 放入libs目录

将厂商的jar/aar文件复制到uniplugin_module/libs/目录下

uniplugin_module中编写封装类

uniplugin_module/src/main/java/io/dcloud/uniplugin/目录下,创建 yournameModule.java

询问厂商SDK中使用的方法在哪个文件中,或者自己找到,我根据我的SDK,在文件app\src\main\java\com\itertkled,找到了mainActivity.java中找到了对应的方法,以我的方法举例

里面是几个调用灯光的方法,分别为onGreen、onRed、onYellow、onClose

这个时候就要根据这些方法去创建这个yournameModule.java文件,这个编译就是将jar中的方法转译成uniapp可识别的JS语言。如果不知道怎么创建这个文件,直接AI将上面第三方的java文件的方法丢进去,让ai帮你生成当前模块,就是封装成js能识别的在uniapp可以识别的方法,这样后面生成的arr引入项目,就可以直接调用了。

  • 类必须继承UniModule

  • 暴露给 JS 的方法必须添加@UniJSMethod注解

  • 方法必须是public类型

接下来注册插件

编辑app/src/main/assets/dcloud_uniplugins.json,添加你的插件配置

{ "nativePlugins": [ { "plugins": [ { "type": "module", "name": "ITERTKLED", // 前端调用时使用的模块名 "class": "io.dcloud.uniplugin.ITERTKLEDModule" } ] } ] }

配置完之后记得Ctrl + Shift + O同步一下

这样在右侧Gradle中就有了这个模块

双击运行assemble,arr文件就生成了

文件路径在uniplugin_module/build/outputs/aar/

你会看到两个文件:

  • uniplugin_module-debug.aar

  • uniplugin_module-release.aar← 使用这个

将这个arr文件在uniapp项目中引入,按照我这个目录去存放,libs里面不需要放东西,ITERKTED就是插件名称,这个可以自定义。

package.json

{
"name": "ITERTKLED插件",
"id": "ITERTKLED",
"version": "1.0.0",
"description": "LED控制插件",
"_dp_type": "nativeplugin",
"_dp_nativeplugin": {
"android": {
"plugins": [
{
"type": "module",
"name": "ITERTKLED",
"class": "io.dcloud.uniplugin.ITERTKLEDModule" //使用当前生成的这个aar的类名

// 打包的时候将注释都去掉,不然会报错
}
],
"integrateType": "aar",
"minSdkVersion": "21"
}
}
}

然后在manifest.json中选择本地插件,

在项目中直接调用我上述的哪些方法

最后记得打自定义基座包,运行设备上才能生效。

http://www.jsqmd.com/news/573744/

相关文章:

  • Simulink双矢量MPC实战:从郭磊磊论文到可运行的Matlab Function代码(调制模型预测控制详解)
  • 2026年皮卡市场竞争白热化,谁是最懂用户的销售服务伙伴? - 2026年企业推荐榜
  • leetcode 1550. 存在连续三个奇数的数组-耗时100-Three Consecutive Odds
  • 你的SVG转PDF图片糊了?可能是DPI没设对:CairoSVG高清输出配置详解
  • 从零到一:libiec61850库自学笔记(一)
  • 探索制动能量回收BRS Simulink模型
  • Bidili Generator应用场景:自媒体配图、电商海报、概念设计一键生成
  • OpenClaw可视化监控:实时查看Phi-3-vision任务执行状态
  • 低代码不是「玩具」:企业级低代码平台必须具备的5个核心能力
  • OpenClaw学习助手方案:Qwen2.5-VL-7B解析教材插图生成记忆卡片
  • Linux命令-mysql(MySQL服务器客户端工具)
  • C语言实战:Kruskal算法与并查集在最小生成树中的高效应用
  • Real-ESRGAN-GUI:AI图像超分辨率处理的高效解决方案
  • 7步打造专业提示词链:提示词工程的进阶实践指南
  • 高效全场景iCalendar生成工具:从入门到精通的Node.js实现方案
  • AI辅助开发:描述需求,快马AI自动生成旅行商问题算法与可视化
  • 2026济南打桩机服务商五强揭晓:深度解析市场格局与口碑之选 - 2026年企业推荐榜
  • 珠海内有哪些做专精特新,创新型中小企业。权代理事务通过率高
  • AKS 集群 Helm 部署 Prometheus + Grafana 监控平台
  • Windows下OpenClaw安装避坑:对接Gemma-3-12b-it模型完整流程
  • PVNet复现实战:用PyTorch1.5.1+CUDA10.2搞定3D位姿估计(附数据集处理技巧)
  • 【Java函数计算高可用架构】:基于Spring Cloud Function的弹性扩缩容方案,已落地金融级日均亿级调用
  • OpenClaw+Qwen3-4B-Thinking-2507-GPT-5-Codex-Distill-GGUF:3种低成本内容生成方案对比
  • AI辅助开发新体验:描述你的流程,让快马智能生成和优化流程图代码
  • JSW-8016GM4 加固交换机
  • 如何轻松获取网页媒体资源?猫抓开源工具让资源提取效率提升3倍
  • AI赋能开发:让快马平台智能生成你的下一代oh-my-opencode项目
  • Iptables 实战指南:从基础规则到高级网络防护
  • ai辅助开发:用自然语言让快马生成复杂嵌套的vuedraggable看板应用
  • 告别重复编码,用快马AI生成黑马点评核心模块,开发效率翻倍