get_network_type: Sort, correct cell network lookup and fix for pc

pull/1022/head
Andy Haden 5 years ago
parent c770f54103
commit e8959e6b1a
  1. 21
      common/android.py

@ -94,34 +94,37 @@ def parse_service_call_bytes(ret):
return None return None
def get_network_type(): def get_network_type():
if not ANDROID:
return NetworkType.none
wifi_check = parse_service_call_string(service_call(["connectivity", "2"])) wifi_check = parse_service_call_string(service_call(["connectivity", "2"]))
if wifi_check is None: if wifi_check is None:
return NetworkType.none return NetworkType.none
if 'WIFI' in wifi_check: elif 'WIFI' in wifi_check:
return NetworkType.wifi return NetworkType.wifi
else: else:
cell_check = parse_service_call_unpack(service_call(['phone', '59']), ">q") cell_check = parse_service_call_unpack(service_call(['phone', '59']), ">q")
# from TelephonyManager.java
cell_networks = { cell_networks = {
0: NetworkType.none, 0: NetworkType.none,
1: NetworkType.cell2G, 1: NetworkType.cell2G,
2: NetworkType.cell2G, 2: NetworkType.cell2G,
4: NetworkType.cell2G,
7: NetworkType.cell2G,
11: NetworkType.cell2G,
16: NetworkType.cell2G,
3: NetworkType.cell3G, 3: NetworkType.cell3G,
4: NetworkType.cell2G,
5: NetworkType.cell3G, 5: NetworkType.cell3G,
6: NetworkType.cell3G, 6: NetworkType.cell3G,
7: NetworkType.cell3G,
8: NetworkType.cell3G, 8: NetworkType.cell3G,
9: NetworkType.cell3G, 9: NetworkType.cell3G,
10: NetworkType.cell3G, 10: NetworkType.cell3G,
11: NetworkType.cell2G,
12: NetworkType.cell3G, 12: NetworkType.cell3G,
13: NetworkType.cell3G, 13: NetworkType.cell4G,
14: NetworkType.cell3G, 14: NetworkType.cell4G,
15: NetworkType.cell3G, 15: NetworkType.cell3G,
16: NetworkType.cell2G,
17: NetworkType.cell3G, 17: NetworkType.cell3G,
18: NetworkType.cell4G, 18: NetworkType.cell4G,
19: NetworkType.cell4G, 19: NetworkType.cell4G
20: NetworkType.cell5G
} }
return cell_networks.get(cell_check, NetworkType.none) return cell_networks.get(cell_check, NetworkType.none)

Loading…
Cancel
Save