2012-06-13 52 views
4

現在這個項目非常令人沮喪。我一直堅持着。我希望做一個簡單的任務如下如何檢測android手機中的SIM卡更改?

  1. 當有人改變SIM卡,檢測到這一事件,並檢查是否這種新的SIM卡與以往不同的SIM卡,並採取相應的行動。
  2. 我不想通過定時器或任何其他方式定期檢查SIM_STATE。
  3. 請問android會通知SIM卡的狀態改變嗎?如果是,請讓我知道我可以檢測SIM卡的變化?

我問這個問題之前也,但沒有堅實的回答我。這似乎是一個非常重要的API,沒有人關心它。請給我提供了一些代碼片段,如果你有請......

我堅持在這裏和Android電話服務文檔中我不能夠理解什麼...這將非常有幫助,如果任何人都可以提供一些代碼爲上述。

+2

SIM不能在沒有斷電可以改變他們?您可能只需要檢查應用程序啓動。看到這個問題如何確定SIM ID –

+6

這個問題有很多愚蠢的。這其中有一個答案:http://stackoverflow.com/questions/8629766/android-sim-change也有這個http://stackoverflow.com/questions/5389512/event-when-sim-is-changed這http://stackoverflow.com/questions/5548751/phone-sim-change-notification檢查這些帖子,如果他們不工作,回來的結果。 – gideon

+1

如果您沒有使用getLine1Number獲取電話號碼,則使用sim序列號比較上一次啓動完成時的序列號。 –

回答

1

是的,只有當應用程序重新啓動時,在啓動時接收器,所以我們必須在我們的應用程序中註冊啓動時間接收器。當用戶改變它時,我們可以分析它。

1

當你啓動應用程序保存SIM(Subscriber ID)

然後重新啓動每次取SIM(用戶ID),並與前一個其中保存比較。

以及查找SubscriberID數 -

IMSI = m_telephonyManager.getSubscriberId();

+0

你有沒有在漫遊中嘗試過?似乎在漫遊模式下的另一個國家/地區可能會多次更改此ID,或者也可能在使用Google Fi時更改此ID – David

相關問題