我想知道我是否可以依靠Android上的國家,MCC等電話值來查看我的應用。我可以使用setprop在運行中更改它們嗎?我試着改變使用setprop它似乎沒有工作。從我的理解電話管理器是一個類/接口,它表示GSM或CDMA的硬件配置。在GSM的情況下,這可能是SIM卡,在CDMA的情況下,它可能是硬件。我的問題是:電話管理器值是否可靠且可更改(cdma)?
- 誰在這兩種情況下第一次更新這些值?
- 這些值是否被操作系統保存爲只讀?
- 如果用戶旅行到不同的國家或地區,會如何自動更新某些值(如國家代碼和MCC值)?
- 我可以重置這些值嗎?
我無意改變任何這些值,但想了解它的工作!如果有人能幫助我,我將不勝感激。
我找到了解決CDMA手機上這個問題的方法..如果是CDMA手機,那麼手機總是有一個ICC硬件與GSM中的SIM卡相媲美。你所要做的就是使用與硬件相關的系統屬性。以編程方式,您可以使用Java反射來獲取此信息。這與GSM設備不同,即使系統根源也不可改變。 類> c = Class.forName(「android.os.SystemProperties」); 方法get = c.getMethod(「get」,String。類); String homeOperator =((String)get.invoke(c,「ro.cdma.home.operator.numeric」)); – rana 2012-07-23 19:00:30
這是有用的信息,感謝分享! – kenota 2012-07-24 09:15:52
請注意,當某人剛好*靠近邊界時,這不可能導致誤報。就像在你鄰居國家的視野中在海灘上一樣。在我住的所有時間都會發生。 – 2012-07-29 15:33:56