2012-09-19 83 views
0

Android有沒有什麼辦法來檢測該地區所有可用的運營商網絡。我試圖從連接管理器搜索它,它似乎只返回活動的網絡信息。我也嘗試過電話管理器,它只返回有效載波的信號和鄰居信息(例如同一載波的其他信號)。我想創建一個應用程序,可以掃描各個國家/地區的可用蜂窩網絡 - 例如在設置中 - 在漫遊時選擇我的網絡。如何檢測可用的運營商網絡?

回答

1

據我所知,這是不可能的,因爲你只能得到你的SIM卡載波的小區信息,但我們有一個名爲getAllCellInfo()TelephonyManager的新方法。
問題是該方法僅適用於API Level 17,僅適用於帶有Jelly Bean(4.2)的設備。

檢查此link欲知更多信息。

+0

好吧,我試圖上運行果凍豆(HTC傳奇非官方和Galaxy Nexus的4.2.1 ROM OTA更新)2臺設備和方法'getAllCellInfo()'總是返回NULL。我設置了所有需要的權限(Manifest)。有同樣的問題鄉親http://stackoverflow.com/questions/13619586/android-api-listcellinfo – rodrigocoelho

0

即使getAllCellInfo函數也不會報告所在位置空中的「所有網絡」,只是因爲手機只會監聽/測量當前服務小區告訴它測量的頻率/網絡。通常這意味着它只能測量(並能夠報告單元格)與手機當前使用的網絡相同。

如果手機已經從其「家庭PLMN」(家庭或選定網絡)丟失了覆蓋範圍,它將週期性地在其他頻率上進行測量以嘗試返回到「最喜歡的網絡」。

爲了能夠獲得您所在地區所有現有網絡的列表,您需要有其他類型的設備,例如「掃描儀」,它永遠不會鎖定到任何單元,但會不斷掃描許多頻率以找到任何單元網絡和這些頻率內的任何無線接入技術(例如GSM/WCDMA LTE)。

或連續按「選擇網絡」的功能......

/肯尼斯