java - 以编程方式检测 Android 中的 SIM 卡更改

标签 java android

有什么方法可以在 Android 中以编程方式执行以下操作吗?

  • 知道 SIM 或 IMSI 后才知道手机中存在,如果
  • 发生任何变化我都可以检测到并知道新的 SIM 或 IMSI 输入。

返回新的 IMSI(如果发生更改)或消息告知没有 SIM 更改或 IMSI 更改

请用简单的代码帮助我,因为我是开发新手:( 我尝试遵循这些示例,但无法理解其复杂性

最佳答案

使用以下代码获取SIM卡ID

TelephonyManager tm = (TelephonyManager) 
        getSystemService(Context.TELEPHONY_SERVICE);     
 String simID = tm.getSimSerialNumber();

将数据存储在 SharedPreferences 中,并在每次打开应用程序时再次使用上述代码获取 SIM 卡 ID,并使用存储在 SharedPreferences 中的该 ID 检查新的 SIM 卡 ID。如果数据不同,则说明SIM卡已更换,您可以根据自己的要求进行进一步处理。

关于java - 以编程方式检测 Android 中的 SIM 卡更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46124694/

相关文章:

java - 显示来自 java 应用程序上下文外部的图像。

java - 如何在 Selenium Web 驱动程序中单击下一个 span 元素

java - 使用 VTD-XML 的带有 & 符号的 XML 文件的 ParserException

java - 如何在Android中实现持久队列

java - 在整个类里面具有双重值(value)

java - Grafana 查询使用 prometheus 检索请求计数

android - 强制操作栏显示搜索 View

API 级别 9 及更高版本的 AndroidHttpClient 与 HttpUrlConnection

java - 简单的静音问题?

android - 如何在 Visual Studio 2013 中的 Android 模拟器上运行应用程序