2 votes

Comment passer les données d'un service Android (depuis onStart ou OnCreate) à une activité Android ?

Comment passer des données depuis un service Android (depuis onStart ou OnCreate) vers une activité Android. J'aimerais passer des données depuis l'intérieur du service en utilisant la fonction setResult(RESULT_OK,intent) à l'expéditeur (activité démarrée par le service) pour OnActivityResult() méthode.

0voto

Rejinderi Points 3584

Lancez-vous l'activité à partir du service ? Si oui, pourquoi ne pouvez-vous pas simplement placer les données dans l'intention ?

Intent intent = new Intent(context, MyActivity.class);
intent.putExtra("DataToBePassed", "some data here..");
startActivity(intent);

setResult est seulement quand vous démarrez l'activité via startActivityForResult et vous définissez le résultat dans l'activité qui est appelée. pas sur le service, le service est celui qui obtiendra le résultat.

lire http://developer.Android.com/guide/topics/intents/intents-filters.html pour plus d'informations.

0voto

user3003883 Points 81

Vous pouvez utiliser l'interface. Comme

public interface YourCallback {
    public void onSuccess(String result);
}

Puis utiliser n'importe où. J'ai utilisé ma méthode onPostExecute.

yourCallback.onSuccess(result);

Et utiliser l'activité oncreate

new YourAsyncTask(new YourAsyncTas() {

     @Override
     public void onSuccess(String result) {
      yourGlobalFeald=result;

     }
    }).execute(if you want to use executable method);

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X