如何将数据从Android服务(从onStart或OnCreate)传递到android Activity。我想使用setResult(RESULT_OK,intent)
将服务内部的数据传递给发件人(服务启动活动)到OnActivityResult()
方法。
答案 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);