当前位置:首页 > 虚拟机 > 正文

虚拟机imei修改器


一、J2ME请教:WM6.1上运行的虚拟机如何获得IMEI等手机信息?InternationalMobileEquipmentIdentity是一种表示移动设备身份的编码,因此。只能在真机上获取,因为模拟器不可能有这个识别码。模拟器设计的时候不能随便返回一个值,因为它是物理对象的标识,所以在模拟器中会返回null那么,直接在手机上试试吧!


二、如何判断Android设备是真机还是模拟器现在的模拟器的功能太强大了。它可以模拟从蓝牙、传感器和其他配件到IMEI、Mac和手机硬件信息的所有内容。
防止用户通过使用模拟器模仿真实设备来执行恶意操作。订单欺诈、流量欺诈等
为了验证设备的真实性,我们需要获取设备返回的一些信息。
模拟器和真机的区别可以概括为以下几点:
大部分是可以模仿和伪造的,但如果各级监控的话,就不会有大问题。
一、本机方法。
通过C代码读取设备配置和硬件相关信息。
ats
获取闪存的分区状态信息。
intfd=open(“/proc/diskstats”,O_RDONLY);
bytes=read(fd,buf,bytes);
区别:真机上有mmcblk0分区,但是在模拟器上。无分区信息。
地址。
通过socket和ioctl读取mac地址。
sockfd=socket(AF_INET,SOCK_DGRAM,0);
ioctl(sockfd,SIOCGIFCONF,(char*)&ifc);
ioctl(sockfd,SIOCGIFADDR,&ifr[i])
ioctl(sockfd,SIOCGIFHWADDR,(char*)&ifr[i])
区别:真实系统可以获取wlan0的ip和mac地址,但模拟器只能获取ip和mac地址。eth0;
3.有用的道具信息。
__system_property_get(key,buf);
区别:模拟器没有no和no属性,真实系统有系统序列号。
模拟器的re属性是goldfish,真机是它的model。
信息。
intfd=open(“/proc/cpuinfo”,O_RDONLY);
bytes=read(fd,buf,bytes);
区别:模拟器中的cpuinfo硬件是Goldfish。
5、驱动
intfd=open(“/proc/tty/drivers”,O_RDONLY);
区别:模拟器包含goldfish驱动
6.模拟器相关文件。
intfd=open(“/dev/socket/qemud”,O_RDONLY);
intfd=open(“/dev/qemu_pipe”,O_RDONLY);
区别:实际文件而不是特定于模拟器文件您可以在您的机器上使用它。
二、传统方法:
可以使用以下通过Java层代码获取的方法:
1.IMEI和IMSI。移动设备国际识别码。
IMSIIMSI国际移动用户识别码(存储在SIM卡上)
finalTelephonyManagertm=(TelephonyManager)getBaseContext().getSystemService(ONY_SERVICE);
Stringimei=iceId();
Stringimsi=scriberId();
设备1:35​​4273055927169/null(无卡)
设备2:862966024243759/460011040618938
模拟器:000000000000000/310260000000000
2、序列号
Stringserial=;
设备1:4df78680771b117b
设备2:OBAI5HDQZPDIRCQG
模拟设备:未知
3、android_id
Stringandroid_id=ing(getContentResolver(),D_ID);
设备和模拟器均为16位。
地址
WifiManagerwifimanage=(WifiManager)getSystemService(_SERVICE);WifiInfowifiinfo=nectionInfo();
设备1:88:32:9b:1e:49:20
设备2:f8:a4:5f:fd:56:17
模拟器:null
转载自: