热搜:前端 nest neovim nvim

uniapp如何开发原生插件?踩坑指南(二)

lxf2023-05-12 01:39:00

若还未开发插件,请参考上篇:uniapp如何开发原生插件?踩坑指南(一)

本文主要讲打包插件,并在uniapp中如何配置,并能顺利打包为apk

一、Android studio打包插件

  • 选择gradle,选中module -> other -> assembleRelease
  • 可能会存在没有assembleRelease

uniapp如何开发原生插件?踩坑指南(二)

  • 解决没有assembleRelease的情况,file -> sync...

uniapp如何开发原生插件?踩坑指南(二)

  • 此时再点击assembleRelease

uniapp如何开发原生插件?踩坑指南(二)

  • 打包完成后,在项目下mylibrary>build>outputs>aar找到aar文件

uniapp如何开发原生插件?踩坑指南(二)

二、uniapp项目中引入插件

  • 在uniapp项目中根目录下新建nativeplugins>插件文件夹名称>android目录

uniapp如何开发原生插件?踩坑指南(二)uniapp如何开发原生插件?踩坑指南(二)

  • 在模块文件夹下新建package.json,复制官网的文件内容粘贴,package.json
  • 删除没用的部分,修改package.json,内容参考原工程中的文件内容。

uniapp如何开发原生插件?踩坑指南(二)

  • 使用时需要去掉注释,否则打包会失败。以下注释只为了方便查看
{
  "name": "my-testmodule",  // 插件名称,在插件市场(HBuilderX)中显示的名称。
  "id": "my-testmodule", // id需要与插件文件名一致
  "version": "1.0",
  "description": "测试用",
  "_dp_type":"nativeplugin",
  "_dp_nativeplugin":{
    "android": {
      "plugins": [
        {
          "type": "module",
          "name": "my-testmodule",
          "class":"com.example.mylibrary.testModule"
        }
      ],
      "hooksClass": "",
      "integrateType": "aar",
      "dependencies": [],
      "compileOptions": {  //可选,Java编译参数配置
        "sourceCompatibility": "1.8",
        "targetCompatibility": "1.8"
      },
      "abis": [
        "armeabi-v7a",
        "x86"
      ],
      "minSdkVersion": "21",
      "permissions": [],
      "parameters": {
        "dcloud_appkey": {
          "des": "请填写appid",
          "key": "4c3becfa9552a0cf52b790c9bc5f153d",
          "placeholder": ""
        }
      }
    }
  }
}
  • app插件中使用本地插件

uniapp如何开发原生插件?踩坑指南(二)

三、测试上线

  • 制作自定义基座,进行测试。标准基座中不含有本地插件,需要制作自定义基座

uniapp如何开发原生插件?踩坑指南(二)

  • 打包完成,运行自定义基座,测试无误即可打包上线了

uniapp如何开发原生插件?踩坑指南(二)

uniapp如何开发原生插件?踩坑指南(二)

本网站是一个以CSS、JavaScript、Vue、HTML为核心的前端开发技术网站。我们致力于为广大前端开发者提供专业、全面、实用的前端开发知识和技术支持。 在本网站中,您可以学习到最新的前端开发技术,了解前端开发的最新趋势和最佳实践。我们提供丰富的教程和案例,让您可以快速掌握前端开发的核心技术和流程。 本网站还提供一系列实用的工具和插件,帮助您更加高效地进行前端开发工作。我们提供的工具和插件都经过精心设计和优化,可以帮助您节省时间和精力,提升开发效率。 除此之外,本网站还拥有一个活跃的社区,您可以在社区中与其他前端开发者交流技术、分享经验、解决问题。我们相信,社区的力量可以帮助您更好地成长和进步。 在本网站中,您可以找到您需要的一切前端开发资源,让您成为一名更加优秀的前端开发者。欢迎您加入我们的大家庭,一起探索前端开发的无限可能!