如何在安卓手机上检测SIM卡更换?

5

项目现在非常令人沮丧。我在一个地方卡住了。我想完成以下简单的任务:

  1. 当有人更换SIM卡时,检测这个事件并检查这张新的SIM卡是否不同于之前的SIM卡,并根据情况采取行动。
  2. 我不想通过定时器或任何其他方式定期检查SIM_STATE。
  3. Android会通知SIM卡状态的更改吗?如果是,请告诉我如何检测SIM卡更改?

我之前也问过这个问题,但没有得到确切的答案。这似乎是一个非常重要的API,但没有人关注它。如果您有代码片段,请提供给我...

我在android电话服务文档中被卡住了,无法理解任何内容... 如果有人能够为上述问题提供一些代码,那将非常有帮助。


2
SIM卡不能在不关机的情况下更换,对吧?你可能只需要在应用程序启动时检查一下。请参考此问题以了解如何确定SIM卡ID。 - Preet Sangha
6
这个问题有很多重复的询问。这个链接有答案:https://dev59.com/617Va4cB1Zd3GeqPLqEh 还有这个链接 https://dev59.com/L2435IYBdhLWcg3wfQF9 和这个链接http://stackoverflow.com/questions/5548751/phone-sim-change-notification。查看这些帖子,如果它们不起作用,请回来告诉结果。 - gideon
1
如果使用getLine1Number无法获取电话号码,则在启动完成时使用SIM序列号与先前的进行比较。 - Hiren Dabhi
1个回答

1

是的,只有在应用程序重新启动时才能进行操作,在启动时接收器中,因此我们必须在我们的应用程序中注册启动时接收器。当用户更改它时,我们可以分析它。


嘿,你能提供一些关于如何实现你所提到的内容的信息吗? - Sujeet

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接