赞
踩
由于公司项目需要,需要开发uni-app的安卓原生插件在项目中使用,第一次接触这东西,看了官网的文档:Android uni-app原生插件开发文档,对小白来说,还是踩了很多坑,折腾了很久,自己整理记录了一下,方便以后查阅。
这个2篇文档写的非常详细,基本够用了:
上面2篇文档和官网的已经写的很详细了,我就不在写了,在这主要是总结一下,当时按照文档确实做出来了,但是开发调试过程中很麻烦,其实官网上提供了2种插件调试方式,但是无论是官网还是参考的文章中第一次看都比较迷糊,在此介绍一下:
第一种调试方式,在HbuildX中:
使用android-studio写好插件,放到HbuildX新建的项目中,进行云打包后运行(必须云打包插件才能生效,否则只是运行无法生效),而且要使用自定义基座的方式
但是这种云打包方式有次数限制,每天只有7次(不是土豪,没开会员的话)打包机会(开始的时候会有各种打包失败,也算次数),建议先用先在android-studio离线运行ok后,再进行云打包
第二种调试方式,使用AndroidStudio(推荐):
过程如下:
1.导入UniPlugin-Hello-AS工程,新建插件模块
(1)去官网下载UniPlugin-Hello-AS工程,导入到android studio中,解决各种编译报错问题,保证能编译成功,并且能运行起来(这里的坑就太多了,就不说了)
(2)新建一个module,选择lAndrod Library
(3) name和package name后面经常会有的,建议一开始就把工具类名字想好,不然后面修改也麻烦
(4)配置dcloud_uniplugins.json插件(这里配置插件后,打包之后才能使用这个插件,这里配置跟HbuildX后面要配置的一样)
type: 类型,有module和component 2中类型
name:插件名
class: 这个是对外暴露的类,需要继承uni app封装的类,如UniModule
(5)在app的build.gradle中添加插件,参照里面给的添加
2.生成uni本地app资源
(1)新建uni项目
(2)在项目中导入插件,调用插件的方式(package.json文件可以先不配置,在云打包的时候再配置)
(3)发行--》原生app本地打包 --》生成本地app资源
3.将生成的app资源配置到android studio中
(1)导入UniPlugin-Hello-AS工程
(2)将生成的本地app资源拷贝到项目的:app/assets/apps 目录下面
(3)在app/assets/data/dcloud_control.xml中配置自己的app id (本地app资源打包的时候可以自动生成,打包后文件夹名字就是的)
4.编译aar文件,运行app
点击Task下面的,other --> assembleRealse脚本打包aar文件(打包成功后,在模块的out目录下,aar文件),点击运行app,然后就可以愉快的调试了
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。