如何從android服務(從onStart或OnCreate)向android Activity傳遞數據。我想將使用setResult(RESULT_OK,intent)
的服務內的數據傳遞給發件人(服務啓動活動)至OnActivityResult()
方法。如何將數據從android服務(從onStart或OnCreate)傳遞到android Activity
2
A
回答
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瞭解更多信息。
0
您可以使用界面。 像
public interface YourCallback {
public void onSuccess(String result);
}
然後使用在任何地方。我用我的OM方法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);
如果出現上述情況亙古不工作,那麼我能和意圖代替的setResult()發送數據,因爲的setResult()用於startActivityForResult ();否則我可以使用sendBroadCast()方法。 – Girish 2011-05-21 11:31:28