更新记录
1.0.1(2021-10-22)
版本更新1.0.1(增加获取的设备信息内容)
平台兼容性
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原生插件配置”->”云端插件“列表中删除该插件重新选择
跳转Google Play升级+获取安卓设备信息(超级全)插件使用文档
原生插件通用使用流程
- 购买插件,选择该插件绑定的项目。
- 在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原生插件配置”->”云端插件“列表中删除该插件重新选择
使用说明
先在manifest.json进行配置,然后制作自定义调试基座
一、引入插件
const appDeviceModule = uni.requireNativePlugin('app-device-module');
// 打开Google Play进行升级的方法
appDeviceModule.openGooglePlay();
// 获取安卓设备信息的方法
appDeviceModule.getDeviceInfo();
二、插件中的方法
1:跳转到Google Play进行升级(方法需要传入参数 ( APP_PACKAGE_NAME )
// 先引入插件
const appDeviceModule = uni.requireNativePlugin('app-device-module');
// App包名
const APP_PACKAGE_NAME = 'com.xx.xxx';
appDeviceModule.openGooglePlay(APP_PACKAGE_NAME);
备注:APP_PACKAGE_NAME为发布到Google Play的App的包名,在HBuilderX选为发行>云打包>Android设置下的Android包名
2:获取安卓设备信息
// 先引入插件
const appDeviceModule = uni.requireNativePlugin('app-device-module');
const deviceDetailInfoObject = appDeviceModule.getDeviceInfo();
const deviceDetailInfo = JSON.parse(deviceDetailInfoObject.data);
// 打印的详情内容请见下方列表
console.log(deviceDetailInfo);
备注:获取出来的为字符串需要使用JSON.parse转一下
注意:要获取部分内容App开启以下权限
android.permission.INTERNET(网络)
android.permission.ACCESS_NETWORK_STATE(访问网络状态)
android.permission.ACCESS_WIFI_STATE(访问无线网络状态)
android.permission.ACCESS_FINE_LOCATION(获取精准的地理位置信息)
android.permission.ACCESS_COARSE_LOCATION(获取模糊的地理位置信息)
获取安卓设备信息内容介绍
名称 | 用途 |
---|---|
adbEnabled | 是否打开usb调试(0否,1是) |
androidId | 安卓id |
availableStorage | 设备可用存储 |
batteryPercent | 剩余电量 |
bluetoothEquipmentName | 设备蓝牙名称 |
codeName | 设备当前的系统开发代号,一般使用REL代替 |
cpu | 设备指令集名称 |
cpuInfo | cpu的信息 |
cpuSpeed | cpuSpeed主频 |
detailAddress | 定位的详细地址–位置信息 |
deviceMac | 使用时的设备设备mac地址 |
deviceModel | 使用时的设备型号 |
deviceSoftwareVersion | 设备的软件版本号:返回移动终端的软件版本 |
deviceVersionType | 版本类型user,eng |
displayMetrics | 屏幕解析率 |
fingerPrint | 出厂签名 |
gaid | google Ad ID |
hardware | 设备硬件名称,一般和基板名称一样 |
imei | 设备IMEI |
imsi | IMSI |
inDoor | 是否在室内(-1不确定 0不在 1在) |
lag | 注册时纬度 |
lng | 注册时经度 |
language | 语言 |
locationAddress | 基站位置信息,可能获取不到 |
locationCity | 定位的城市–位置信息 |
model | 手机名称就是蓝牙名称 |
networkOperator | 运营商,可能获取不到 |
networkOperatorName | 运营商名称,可能获取不到 |
networkType | 网络类型 |
os | 操作系统 |
phoneAvailableRam | 手机可用内存 |
phoneOs | Android/IOS |
phoneTotalRam | 总内存大小 |
product | 整个产品的名称 |
radioVersion | 无线电固件版本号 |
resolutionHeight | 分辨率高度 |
resolutionWidth | 分辨率宽度 |
rooted | 是否被root(0否,1是) |
routerMac | 路由器mac地址 |
runtimeAvailableMemory | apk 可用内存大小 |
runtimeMaxMemory | apk可分配的最大内存 |
serialNumber | 序列号 |
simState | 是否插卡(0插卡,1未插卡) |
simulator | 是否使用模拟器(0否,1是) |
timeZone | 时区 |
totalStorage | 设备总存储 |
uuid | 设备id,可能获取不到 |
uuidOriginal | 设备id原始字符串 |
wifiName | 连接的Wifi名称 |
如有其它问题和需求请联系作者:18380393130(微信同号)