Я создаю приложение с картой, в которой мне нужно распечатать текущий уровень сигнала в каждом месте. Чтобы быть более понятным, я отслеживаю свой маршрут в дороге и в то же время сохраняю значения сигнала. Я использую эти 2 строки, чтобыПеренесите данные сигнала из активности на карту фрагментов.
TelephonyManager manager=(TelephonyManager)getActivity().getSystemService(Context.TELEPHONY_SERVICE);
manager.listen(new Tab2Signal(this), PhoneStateListener.LISTEN_SIGNAL_STRENGTHS);
Но они не могут обновить сигнал при каждом изменении местоположения, возможно, из-за их положения в коде.Вероятно, это должно перейти в onLocationChanged
, но я не могу сделать это, потому что у меня есть ошибки. Ниже это код из onLocationChanged
public void onLocationChanged(Location location) {
mGoogleMap.setInfoWindowAdapter(new CustomInfoWindowAdapter(Tab2Map.this.getActivity()));
LatLng latlng = new LatLng(location.getLatitude(), location.getLongitude());
String snippet = "SignalStrength:"+current+
'\n'+"Rsrp: " +MapRsrp+'\n'+"Rsrq: "+MapRsrq+'\n'+"Rssnr: "+MapRssnr+'\n'+latlng.toString();
SignalData.add(String.valueOf(latlng)+" SignalStrength:"+String.valueOf(current)+
" Rsrp: " +String.valueOf(MapRsrp) +" Rsrq: "+String.valueOf(MapRsrq)+" Rssnr: "+String.valueOf(MapRssnr)+'\n');
mGoogleMap.addMarker(new MarkerOptions().position(latlng).title("Signal Info").snippet(snippet).icon(BitmapDescriptorFactory.defaultMarker(color)));
CameraPosition position = CameraPosition.builder().target(latlng).zoom(16).bearing(0).build();
mGoogleMap.moveCamera(CameraUpdateFactory.newCameraPosition(position));
}
Также мне нужна ваша помощь, как сохранить значение длякаждое значение latlng, и я могу видеть его в фрагменте маркера, который у меня есть.Спасибо за ваше время