上一篇文章已经写到了,如何连接iPhone设备,那么该如何知道,我连接的设备是iPhone几呢?系统是多少呢?存储是多大的呢?
解决的方法就是读取设备的信息,读取设备信息的函数是:
AMDeviceCopyValue
它有三个参数
第一个参数是设备句柄,也就是上文说到的iPhonehandle
第二个参数是一个文本数据,提供服务名,某些需要服务支持才能读取到的设备信息(比如电量/容量),这里就要填写服务名,如果不需要服务支持,就填0或者null
第三个参数就是读取设备信息的关键字,比如ProductType,ProductVersion,DeviceName等等等,也是文本数据
如此:
AMDeviceCopyValue(iPhonehandle,0,”
ProductVersion
“) ‘读取系统版本,比如9.3 / 8.4
AMDeviceCopyValue(iPhonehandle,0,”SerialNumber”) ‘读取序列号
那么电量和容量,这些需要服务支持的设备信息,怎么读取呢?
这般:
AMDeviceCopyValue(iPhonehandle,”com.apple.disk_usage”,”TotalDataAvailable”) ‘读取数据区可用空间
AMDeviceCopyValue(iPhonehandle,”com.apple.disk_usage”,”TotalSystemAvailable”) ‘读取系统区可用空间
AMDeviceCopyValue(iPhonehandle,”com.apple.mobile.battery”,”BatteryCurrentCapacity”) ‘读取电量
AMDeviceCopyValue(iPhonehandle,”com.apple.mobile.battery”,”FullyCharged”) ‘读取是否充满的状态
其他还有很多的关键字,这里放上一个,收集的比较多的设备信息值:
点击打开链接
需要注意的是,返回的是一个指针,需要从指针里面读数据,如果是类似FullyCharged这种,逻辑型的数据,还要用到CFBooleanGetValue这个api,出自于CoreFoundation.dll,也是一个依赖的dll