Obecnie trilateruję mojego Androida z komórkami w mojej sieci. Jest nawet dokładniejsza, niż myślałem. Ale nie tak dokładne, jak tego chcę. Więc chcę zaangażować więcej wież, niż dostaję od getNeighboringCellInfo. Chcę uzyskać identyfikator komórki i siłę sygnału każdej wieży w zasięgu. Z każdego operatora sieciowego. Czy istnieje sposób na "pingowanie" wież, więc odpowiadają one za pomocą cellID, Lac i signalstrength? Jakoś to musi być możliwe. Czy mogę skanować równolegle 2G i 3G (i 4G)? Czy mogę programowo przełączać się między nimi? Jakieś sugestie? Mam nadzieję, że jestem wystarczająco jasny ...Uzyskiwanie CID, LAC i siły sygnału wszystkich wież komórkowych w zakresie
5
A
Odpowiedz
1
Wydaje się, że TelephonyManager
i getNeighboringCellInfo()
są tym, czego szukasz.
Oto przykład, który jest łatwe i proste:
/* first you wanna get a telephony manager by asking the system service */
TelephonyManager tm = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);
/* then you can query for all the neighborhood cells */
List<NeighboringCellInfo> neighbors = tm.getNeighboringCellInfo();
/* here's something you can get from NeighboringCellInfo */
for (NeighboringCellInfo n : neighbors) {
Log.v("CellInfo", "" + n.getCid());
Log.v("CellInfo", "" + n.getLac());
Log.v("CellInfo", "" + n.getPsc());
Log.v("CellInfo", "" + n.getRssi());
}
Upewnij się, że zawierają wszystkie uprawnienia wymagane, takich jak ACCESS_COARSE_LOCATION
lub READ_PHONE_STATE
, w zależności od tego, co API będziesz używania w swoim manifeście plik, lub po prostu się zawiesi.
Oh btw to działa tylko dla 2G. 3G lub nowszy nie obsługuje tego rodzaju operacji.
Powiązane problemy
- 1. Uzyskiwanie siły sygnału WiFi w Androidzie
- 2. Android Wi-Fi Direct odczytanie siły sygnału rssi
- 3. Uzyskiwanie listy dat w zakresie w PostgreSQL
- 4. Wizualizacja algorytmu wież Hanoi w JavaScript
- 5. Get dict wszystkich zmiennych obecnie w zakresie i ich wartości
- 6. Uzyskiwanie wszystkich kombinacji w tablicy
- 7. Porównywanie "numerów komórkowych" i/lub formatu międzynarodowego
- 8. Lisp format i siły wyjście
- 9. cellID i LAC/PSC dla sąsiednich komórek 3G w Androidzie
- 10. Uzyskiwanie wszystkich tapet systemowych
- 11. Siła sygnału emulatora Androida:
- 12. Jak mogę posortować listę getScanResults() na podstawie siły sygnału w porządku rosnącym?
- 13. Brak zasięgu w "wszystkich klasach w zakresie" w Intellij
- 14. Układy różnych modeli telefonów komórkowych
- 15. Uzyskiwanie wszystkich elementów z ArrayAdapter
- 16. jquery uzyskiwanie wszystkich wartości rozwijanych
- 17. Jak obliczyć odległość od routera Wi-Fi za pomocą siły sygnału?
- 18. Uzyskiwanie wszystkich css używanych w pliku html
- 19. Siła sygnału Bluetooth LE Linux
- 20. Uzyskiwanie sygnału dźwiękowego głośnika, a następnie przesłanie go strumieniowo
- 21. Co to jest znaczenie negatywnej dbm w sile sygnału?
- 22. Android - Siła sygnału na poziomie, DBM i ASU
- 23. Get CellID, Lac ... na iOS 8.3
- 24. Linux Bluetooth l2ping z siłą sygnału
- 25. Obrazek odświeżania siły PHP
- 26. window.scrollTo nie działa w telefonach komórkowych
- 27. Haskell: "Cast"/typ siły?
- 28. siły OAuth2Decorator oauth_aware uwierzytelniania
- 29. Jak mogę wyciągnąć dowolną klasę przez jej cid w Backbone?
- 30. Android: Jak uzyskać siłę sygnału GSM dla wszystkich dostępnych operatorów sieciowych
"Dlatego chcę zaangażować więcej wież, niż otrzymuję od getNeighboringCellInfo." Już czytam CID z sąsiednich komórek. Ale chcę uzyskać WSZYSTKIE CIDy KAŻDEGO operatora sieci w zasięgu. – albrechtATnetzfactor
tm.getAllCellInfo() jest lepszym wyborem. – ofskyMohsen