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.
Réponses
Trop de publicités?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.
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);