3

我正在构建一个将在用户的 SIM 卡上获得许可的 android 应用程序。我可以检查两个可能的值:

  1. SIM 序列号:TelephonyManager.getSimSerialNumber();
  2. 国际移动卫星系统:TelephonyManager.getSubscriberId();

由于我不想同时使用两者,我想依赖一个或另一个实际上没有区别。我是对的还是我在这里遗漏了什么?

谢谢!

4

2 回答 2

0

这取决于你想要什么。

如果许可证通过检查序列号是否与您的数据库匹配来工作,例如。

如果用户安装了您的应用程序并且 sim 卡序列号存储在您的数据库中,如果用户移除 sim 卡并插入新的 sim 卡,则许可证将失败,因为您的数据库没有存储新 sim 卡的序列号。

如果您根据 IMSI 号码获取许可证,则许可证将与设备一起使用,因此即使用户更换 SIM 卡,许可证仍将作为您使用的设备 ID 传递。

请注意,虽然我不知道 SIM 序列号是否可以工作,也不知道它将如何处理没有 SIM 卡的设备,例如美国的 CDMA 设备。

于 2013-05-30T11:09:19.807 回答
-1

ICCID (SIM Serial) 是 SIM 的序列号。每个 SIM 卡都是唯一的。IMSI 是一个 SubsID。它实际上是一个网络 ID。

更多参考:https ://m.blog.naver.com/framkang/220363349346

于 2020-07-24T20:44:41.830 回答