2013-11-14 68 views
7

我可以得到MCC &對方的跨國公司,無論是來電還是去電?使用Android API撥打電話時可以獲得什麼信息?

我知道你可以get your own information from the SIM card但我對我的聯繫信息感興趣。

我想我必須能夠在通話期間檢索這些信息。

所以兩個主要問題:
它是否允許來自協議?

Android API中是否存在提供此類信息的類? (擡頭看TelephonyManager但沒有找到)

+1

我相當確定這是不可能的。呼叫路由信息應該遠遠落後於基站,如果終端用戶能夠獲取它,我會感到驚訝(因爲它泄漏了很多特定於位置的信息) – Delyan

回答

4

像payeli已回答說:不,你不能。

首先,因爲沒有訪問對方的蜂窩信息的API。其次,因爲Android實際上並不知道。您可以深入研究into the source code of the TelephonyManager,您會發現它只包含有關本地電話服務提供商的信息。

此外,internal Android class Connection也沒有暗示任何這樣的信息。 (無論它包含哪些信息,都無法從API訪問,甚至不能通過反射訪問。)

這就是說,目前有一些服務可以提供對電話號碼的一些洞察。在荷蘭,KPN提供了一個用於查詢呼叫者信息的API,包括手機的當前覆蓋狀態,是否漫遊以及其他詳細信息。我不確定該API是否公開,但也許在您所在的地區有類似的服務。

1

不,您只能檢索您的手機的MCC和MNC,而不是您撥打或接聽電話的第三方號碼。

原因:呼叫目標電話號碼,而不是發送/接收設備的MCC/MNC。 The MCC/MNC tuple is used to uniquely identify a mobile phone operator/carrier,所以如果用戶目前使用carrierX,他將有一個MCC/MNC值,如果用戶changes mobile carrier/operator but retains same phone number,MCC/MNC的值將會改變,但電話號碼仍然是恆定的。

因此,聯繫人的電話號碼與其運營商的MCC/MNC之間的映射不是固定的。因此:

我可以得到MCC &對方的MNC,無論是來電還是去電? NO