软件记住设备的方式主要依赖于以下几种方法:
设备特征码
IMEI号:每部手机具有一个唯一的IMEI号,软件在安装时会记录该设备的IMEI号,并通过这个号码来识别设备。即使更换了手机的IMEI串码,Wi-Fi MAC地址等,软件仍然可以识别出是同一部设备。
其他硬件信息:一些软件还会记录设备的CPU、硬盘、主板、显卡、声卡、网卡等信息,这些信息通常也是唯一的,用于进一步确认设备的身份。
残留文件
程序残留文件:如果用户在卸载程序时没有彻底删除手机内存卡上的程序残留文件,软件在下次安装时会自动读取这些文件,从而识别出原来的设备。
网络发现
IP地址和MAC地址:通过被动式的网络发现功能,软件可以获取设备的IP地址和MAC地址,从而识别出设备。
唯一标识
软件内部记录:一些软件会在本地记录一个唯一标识,每次使用都更新一次,累计次数达到上限后停止使用。这个唯一标识的获取或设定与开发语言密切相关。
操作系统和设备管理器
基本参数:通过操作系统中的设备管理器可以获取设备的一些基本信息,如设备名称、制造商等。
隐私和安全问题
IMEI隐私:由于IMEI是手机用户的隐私信息,应用程序私自读取可能会有法律问题,因此一些软件会在手机内存或SD卡生成一个标识文件,通过这个文件来判断是不是同一部手机。
综上所述,软件通过记录设备的特征码、残留文件、网络信息以及内部设定的唯一标识等方式来记住设备。这些方法各有优缺点,但都能在一定程度上实现设备的识别和追踪。