Envie dados de uma atividade para outra regularmente

Eu obtenho minha localização na Atividade principal regularmente pelo provedor de localização fundida a cada 30 segundos. Eu não uso serviço ou qualquer outra coisa. eu recebo localização exatamente quando o usuário está no aplicativo.

Na Atividade principal, tenho um botão que, quando pressionado, vai para a Segunda atividade e mostra minha localização atual no mapa (por esta linha: googleMap.setMyLocationEnabled (true)).

1- Quero enviar meus dados de localização da Atividade Principal para a Segunda Atividade regularmente (a cada 30 segundos que o método onLocationChange chamou), para mover o marcador do meu local atual. Como posso enviar dados de localização regularmente? e onde eu coloquei códigos para isso? no método onChangedLocation? (Ou não é necessário? e minha localização muda automaticamente quando é alterada?)

Além disso, eu envio minha localização atual para o servidor, no método OnLocationChanged, pela biblioteca Volley, assim:

@Override
public void onLocatuionChanged(Location location){
if(location != null)
    sendLocation(location);
}

private void sendLocation(Location location){
Map<String, String> params = new HashMap<String, String>();
params.put("latitude", String.valueOf(location.getLatitude();
params.put("longitude", String.valueOf(location.getLongitude();
jsonObjReq = new VolleyCustomReq(Method.POST,
URL, params,
new Listener<JSONObject>(){
@Override
public void onResponse(JSONObject response){
if(response != null)
    if(response.optString("type").equalsIgnoreCase("1")
        showAlertDialog1();
    else if(response.optString("type").equalsIgnoreCase("2")
        showAlertDialog2();
    else if(response.optString("type").equalsIgnoreCase("3")
        showAlertDialog3();
    else if(response.optString("type").equalsIgnoreCase("addNewMarker")
        addNewMarkerOnMapAsDestinationAndMakePathBetweenBothOfYou();
    ...
}
...
}
}

Se houver uma resposta do servidor, dependendo do tipo de resposta, eu quero fazer algo; por exemplo, mostre a mensagem relacionada ao usuário, adicione um marcador como destino no mapa e faça o caminho entre dois marcadores.

2- O método onLocationChanged funciona mesmo quando estamos em outras atividades?

3- Se sim, o AlertDialog pode aparecer em todas as atividades? (não apenas na Atividade principal que o método showAlertDialog e LocationListener estão lá).

4- Existe uma maneira melhor de lidar com respostas e fazer coisas relacionadas?

questionAnswers(1)

yourAnswerToTheQuestion