更新记录
0.0.7(2021-05-21)
1、格式化输出mac地址
0.0.6(2021-03-31)
1、添加ipv6判断
0.0.5(2021-02-23)
增加 deviceInfo appInfo isSimuLator canOpen: open: tel: 接口
查看更多平台兼容性
Android | iOS |
---|---|
× | 适用版本区间:9 - 15 |
原生插件通用使用流程:
- 购买插件,选择该插件绑定的项目。
- 在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原生插件配置”->”云端插件“列表中删除该插件重新选择
注意:
获取wifi信息、设备的mac地址
已经测试测试是 没有问题 的。
包含(iOS9~iOS15)
如果接入有问题,请先自行查下 接入流程 、权限配置。
其它需要啥可以留言、或者联系我 1174762990@qq.com
使用:
需要位置权限 在info.plist中设置
获取wifi信息的mac地址 测试确保是没有问题的
注意下 iOS12 之后的
一定要在mobileprovision一定要包含 com.apple.developer.networking.wifi-info 为 true
Identifiers 之前没有选择 Access WiFi Information 的
需要重新生成 mobileprovision 文件 重新制作调试基座
const macInfo = uni.requireNativePlugin('JHF-MacInfoPlugin')
macAddress() {
var ret = deviceInfoModule.macAddress()
uni.showToast({
title: 'SSID:' + ret,
icon: "none"
})
},
isIpv6() {
var ret = deviceInfoModule.isIpv6()
uni.showToast({
title: 'ipv6 信息:' + ret,
icon: "none"
})
},
ipAddress() {
var ret = deviceInfoModule.ipAddress()
uni.showToast({
title: 'ip 地址:' + ret,
icon: "none"
})
}
idfa 获取
standIdfa() { // 中线替换成下划线的idfa 中线有一些特殊条件下无法使用 例如极光推送什么的
var ret = deviceInfoModule.standIDFA()
},
idfa() { // idfa 信息 获取失败的话 会获取uuid 返回 也可使用
var ret = deviceInfoModule.idfa()
uni.showToast({
title: 'idfa:' + ret,
icon: "none"
})
},
钥匙串信息操作 即使卸载应用重新安装也会存在的用 一般用来存储是已登录账号或者 是否领取签到什么的
keychainDeleteServiceKey() { // 钥匙串中删除key为saveKey的信息
var ret = deviceInfoModule.keychainDeleteServiceKey('saveKey')
},
keychainServiceKey() { // 在钥匙串中查找key为saveKey 的信息
var ret = deviceInfoModule.keychainServiceKey('saveKey')
},
keychainSaveServiceKey() { // 钥匙串中保存key为saveKey 值为saveValue_change 的信息
var ret = deviceInfoModule.keychainSaveServiceKey('saveKey', 'saveValue_change')
},
keychainDeleteIDFA() { // 删除钥匙串中保存的idfa 一般用不上
var ret = deviceInfoModule.keychainDeleteIDFA()
},
高度监听返回 高度和大气压 返回 值为 -1 -1 表示设备不支持 返回 值为 0 0 表示监听失败 (测试中 没遇到过) 其它事正常值 hypsographCallback 打开监听 不用时候 关掉监听 hypsographStop 节约资源
hypsographStart() {
// 调用异步方法
deviceInfoModule.hypsographCallback(
(ret) => {
uni.showToast({
title: 'relativeAltitude:' + ret.relativeAltitude +'pressure:' + ret.pressure,
icon: "none"
})
})
},
hypsographStop() {
deviceInfoModule.hypsographStop();
}
faceId(人脸) 和 touchId(指纹) 认证 返回数据说明 code - 1:设备不支持 -2:其它异常 (测试中 没遇到过) 1: 表示touchId 2: faceId result true: 验证通过 false: 验证失败(用户取消或者认证失败都会返回)
idVerify() {
// 调用异步方法
deviceInfoModule.idVerifyHint("测试一下", (ret) => {
uni.showToast({
title: 'code:' + ret.code +'result:' + ret.result,
icon: "none"
})
})
},
canOpen是否可以打开某个应用或者网址 open打开 成功失败 返回 true false
tel() {
// 拨打电话
var ret = deviceInfoModule.tel('186565xxx5')
uni.showToast({
title: 'tel:' + ret,
icon: "none"
})
},
open() {
// 打开某个
var ret = deviceInfoModule.open('weixin://')
uni.showToast({
title: 'open:' + ret,
icon: "none"
})
},
canOpen() {
// 能否打开
var ret = deviceInfoModule.canOpen('weixin://')
uni.showToast({
title: 'canOpen:' + ret,
icon: "none"
})
},