如何将数据从Android服务(从onStart或OnCreate)传递到android Activity

时间:2011-05-21 10:19:13

标签: android service

如何将数据从Android服务(从onStart或OnCreate)传递到android Activity。我想使用setResult(RESULT_OK,intent)将服务内部的数据传递给发件人(服务启动活动)到OnActivityResult()方法。

2 个答案:

答案 0 :(得分:0)

您是否从服务开始活动?如果是这样,为什么你不能将数据放在意图中?

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

setResult只有在通过startActivityForResult启动活动时才会在调用的活动中设置结果。不在服务上,服务是获得结果的服务。

请阅读http://developer.android.com/guide/topics/intents/intents-filters.html了解详情。

答案 1 :(得分:0)

您可以使用界面。 喜欢

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

然后在任何地方使用。我使用了我的onPostExecute方法。

yourCallback.onSuccess(result);
  

并使用活动oncreate

new YourAsyncTask(new YourAsyncTas() {

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

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