【关键字】
版本号 / UUID / IP / OAID / AAID / 唯一标识
【问题描述】
麻烦咨询一下,如何获取一些应用开发必要信息:
-
App信息:如应用版本号、编译版本号
-
唯一标志符信息:如uuid、udid、idfv
-
网络信息:如局域网ip地址、ipv4与ipv6地址
【解决方案】
-
样例代码如下:
import { bundleManager } from '@kit.AbilityKit'
@Entry
@Component
export struct ToLoginPage {
build() {
Column() {
Text('hello')
}
}
onPageShow() {
}
aboutToAppear(): void {
bundleManager.getBundleInfoForSelf(bundleManager.BundleFlag.GET_BUNDLE_INFO_WITH_APPLICATION).then((info)=>{
console.info("info:"+info.name)
})
}
}
-
鸿蒙唯一标识
OAID:https://developer.huawei.com/consumer/cn/doc/harmonyos-references/js-apis-oaid-0000001774280650
AAID:https://developer.huawei.com/consumer/cn/doc/harmonyos-references/push-aaid-0000001775689553
-
获取网络信息:
样例代码如下:
async function getLocalIp() {
try {
hilog.info(0x00000, TAG, '判断是否存在激活的网络连接');
let hasNet = connection.hasDefaultNetSync()
if (hasNet) {
hilog.info(0x00000, TAG, '存在默认激活的网络');
} else {
hilog.error(0x00000, TAG, '不存在激活的网络');
return
}
let handleResult = await connection.getDefaultNet()
if (handleResult) {
let connectionProperties = await connection.getConnectionProperties(handleResult)
if (connectionProperties && connectionProperties.linkAddresses) {
connectionProperties.linkAddresses.forEach((address: connection.LinkAddress, index: number) => {
hilog.info(0x00000, TAG, '索引:' + index + ',值:' + JSON.stringify(address));
})
}
}
} catch (e) {
hilog.error(0x00000, TAG, `获取网络信息出现异常,异常信息 %{public}s`, JSON.stringify(e) ?? '');
}
}