更新记录
1.0.0(2022-09-14)
发布插件
平台兼容性
Android | Android CPU类型 | iOS |
---|---|---|
适用版本区间:5.0 - 11.0 | armeabi-v7a:支持,arm64-v8a:支持,x86:支持 | × |
原生插件通用使用流程:
- 购买插件,选择该插件绑定的项目。
- 在HBuilderX里找到项目,在manifest的app原生插件配置中勾选模块,如需要填写参数则参考插件作者的文档添加。
- 根据插件作者的提供的文档开发代码,在代码中引用插件,调用插件功能。
- 打包自定义基座,选择插件,得到自定义基座,然后运行时选择自定义基座,进行log输出测试。
- 开发完毕后正式云打包
付费原生插件目前不支持离线打包。
Android 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/android
iOS 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/ios
注意事项:使用HBuilderX2.7.14以下版本,如果同一插件且同一appid下购买并绑定了多个包名,提交云打包界面提示包名绑定不一致时,需要在HBuilderX项目中manifest.json->“App原生插件配置”->”云端插件“列表中删除该插件重新选择
概述
- 支持PDF查看
- 支持PDF目录
- 支持PDF跳转页码
- 支持PDF横竖屏切换
- 支持PDF试看付费VIP回调、带弹窗、支持自定义文案
温馨提示 如何调用插件
const pluginModule = uni.requireNativePlugin('yuange-YGPDFReadModule');
网络在线查看PDF
onLineReadPDF() {
let that = this;
uni.showLoading({
title: '请稍候...'
});
//网络地址,选调用下载方法下载到本地,再调用插件显示
uni.downloadFile({
url: '网络PDF测试地址',
success: function(res) {
var filePath = res.tempFilePath;
let realFilePath = plus.io.convertLocalFileSystemURL(filePath);
pluginModule.callNativePDFRead(
{
inFilePath: realFilePath,
//目录
catalogue: [{
title: '章节一',
page: 0,
titleLevel: 1 //titleLevel用于标题缩进,值越大,越向右缩进,可用于标识标题类别
},
{
title: '第1小节',
page: 0,
titleLevel: 2
},
{
title: '第2小节',
page: 0,
titleLevel: 2
},
{
title: '章节二',
page: 1,
titleLevel: 1
},
{
title: '第1小节',
page: 1,
titleLevel: 2
},
{
title: '第2小节',
page: 1,
titleLevel: 2
},
{
title: '第3小节',
page: 1,
titleLevel: 2
},
{
title: '章节三',
page: 2,
titleLevel: 1
},
{
title: '第1小节',
page: 2,
titleLevel: 2
},
{
title: '第2小节',
page: 3,
titleLevel: 2
},
{
title: '第3小节',
page: 4,
titleLevel: 2
},
{
title: '章节四',
page: 5,
titleLevel: 1
},
{
title: '章节五',
page: 5,
titleLevel: 1
},
{
title: '结尾',
page: 22,
titleLevel: 1
}
]
},
result => {}
);
},
complete: function() {
uni.hideLoading();
}
});
}
试看PDF付费VIP会员(网络PDF可通过uni.downloadFile下载本地后打开)
tryReadPDFVip() {
let that = this;
pluginModule.callNativePDFRead({
inFilePath: '本地绝对路径PDF测试地址',
catalogue: [
{
title: '章节一',
page: 0,
titleLevel: 1
},
{
title: '第1小节',
page: 0,
titleLevel: 2
},
{
title: '第2小节',
page: 0,
titleLevel: 2
},
{
title: '章节二',
page: 1,
titleLevel: 1
},
{
title: '第1小节',
page: 1,
titleLevel: 2
},
{
title: '第2小节',
page: 1,
titleLevel: 2
},
{
title: '第3小节',
page: 1,
titleLevel: 2
},
{
title: '章节三',
page: 2,
titleLevel: 1
},
{
title: '第1小节',
page: 2,
titleLevel: 2
},
{
title: '第2小节',
page: 3,
titleLevel: 2
},
{
title: '第3小节',
page: 4,
titleLevel: 2
},
{
title: '章节四',
page: 5,
titleLevel: 1
},
{
title: '章节五',
page: 5,
titleLevel: 1
},
{
title: '结尾',
page: 22,
titleLevel: 1
}
],
isVip: true, //是否有vip限制
isShowVipDialog: true ,//是否显示VIP购买提示弹窗
pageRange: [0, 2], //只允许查看的页数
totalPage: 15 ,//PDF总页数
pdfBottomVipTitle:'亲,试看结束,只有VIP会员才能继续观看哦',
vipDiloagTitle:'温馨提示',
vipDiloagContent:'亲,您还不是VIP会员,需要购买吗?',
vipButtonCancel:'取消',
vipButtonConfirm:'去购买'
},
res => {
that.result = JSON.stringify(res)
if (res.code == 3) {
//这里是回调,处理您的业务逻辑
uni.showToast({
title: "亲,这个是VIP购买回调哦",
icon: "none"
})
}
}
);
}
演示
Demo下载链接: https://pan.baidu.com/s/1ePL4ghY8P9Ge9-VqyaMgRQ 提取码:hrqw
有需要定制插件和咨询问题的可以联系QQ 2729404527