Vous pouvez faire une chose pour y parvenir. envoyer une diffusion à l'activité. Et sur cette activité où vous voulez mettre à jour voir le registre diffusé là. Une fois que vous obtenez les trucs de localisation, envoyez la diffusion. J'espère que cela vous aidera. Ecrire ce code en service lorsque vous obtenez l'emplacement des choses et de passer ce genre de choses par l'intention, comme mentionné dans le code ci-dessous
Intent broadcastIntent = new Intent(your action here);
broadcastIntent.putExtra(BaseBroadCastReceiver.BROADCAST_KEY_AUDIO_INDEX, audioIndex);
broadcastIntent.putExtra(BaseBroadCastReceiver.BROADCAST_KEY_AUDIO_LIST, mSongList.size());
sendBroadcast(broadcastIntent);
Et dans votre écriture d'activité ci-dessous le code
private void registerMyReceiver() {
IntentFilter filter = new IntentFilter(your action here you passed in service);
registerReceiver(playNewAudio, filter);
}
REMARQUE: votre action peut être tout chaîne, mais la chaîne doit être le même sur les deux côtés
Lorsque la méthode de l'activité oncreate est appelée, appelez registerMyReceiver() méthode et dans la méthode OnDestroy désinscription est ce que vous pouvez obtenir R UNTIME exception
ci-dessous sera votre code pour le récepteur large coulé réelle
private BroadcastReceiver myBroadcast= new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
//do your stuff here... get extra which you passed
// from service and set that value in views
}
};
Merci pour vous répondre. Comment puis-je envoyer une diffusion à l'activité? – Luzwitz
@Luzwitz, j'ai ajouté du code pour votre commodité si cela vous aide s'il vous plaît ne pas oublier d'accepter et de modifier la réponse –
Oui, merci beaucoup. Et comment puis-je communiquer avec mon service depuis mon activité? Pour les valeurs modifiées de variables par exemple ... – Luzwitz