uniapp引入Android原生第三方的SDK

张开发
2026/4/18 10:40:28 15 分钟阅读

分享文章

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中就有了这个模块双击运行assemblearr文件就生成了文件路径在uniplugin_module/build/outputs/aar/你会看到两个文件uniplugin_module-debug.aaruniplugin_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中选择本地插件在项目中直接调用我上述的哪些方法最后记得打自定义基座包运行设备上才能生效。

更多文章