2010-09-30 25 views
1

有沒有辦法通過CDMA網絡上的CellID來確定位置?我可以通過編程方式獲得網絡ID,基站ID和系統ID,但在某處是否有api將這些轉換爲經緯度座標? CdmaCellLocation.getBaseStationLatitude()和CdmaCellLocation.getBaseStationLongitude()方法返回一些垃圾數量。我可以將我獲得的CDMA約會轉換成CID和LAC嗎?CDMA的CellID位置

我得到的系統ID爲40,網絡ID爲3,基站ID爲4672,看起來確實沒有價值。

+0

爲什麼不使用'LocationManager'和'NETWORK_PROVIDER'? – CommonsWare 2010-10-01 00:41:58

+0

由於API級別5 CdmaCellLocation類有兩種方法(public int getBaseStationLatitude()....),但在我的測試中,他們總是返回無效結果(Integer.MAX)。他們被定義爲返回int的事實表明他們「不嚴肅」......使用GsmLocation,您可以使用Google Maps API查找位置,但不知道如何處理CDMA。 – 2011-12-25 21:15:39

回答

0

您可以在您的系統中使用相互關聯的googleEarth將CELLID和LAC解釋爲經度和緯度 。

0

好吧,兩年後,但這不是問題,也許有人會從答案中獲利。 Here是一種代碼,它們可以按照您的要求進行操作,即使您每天使用的愛立信API限制爲500個請求。還有一個here,它使用了一個不再適用的Google API,但將代碼的其餘部分作爲參考以及對​​此進行討論是很好的。現在,如果我要編程這樣一個應用程序,我會使用OpenCellID,OpenBmap和FireEagle等服務組合。爲什麼組合?因爲其中一些包含一些國家的塔的信息,而且很少,或者甚至不包括另一個國家的塔。您可以分別檢查他們的API,分別爲here,herehere,並使用類似於鏈接的代碼進行諮詢。

作爲最終評論,this網站提供了一個很好的描述性表格,其中提供了基於單元信息提供位置的服務。有些已關閉,但你應該看看。

0

您可以從opencellid.org下載Cell Towers數據庫。它是一個表,它的列是Cell id,MCC,MNC,Latitude, Logitude等。您可以使用它的cell id查找您的BTS位置。