2011-07-04 82 views
1

我的活動有Handler對象,並註冊ContentObserver與此處理程序。然後我啓動外部活動,有時可能會更改內容(我使用內容觀察員來捕捉此更改)。 然後活動返回結果,然後檢查我的observer,如果內容在我開始執行結果活動後發生了變化。問題是,有一次,在onActivityResult之前,我的活動得到了onDestroy - onCreate,結果,來自觀察者的所有I catched都丟失了。活動被破壞,然後重新創建之前接收onActivityResult

這項活動已經在AndroidManifest以下屬性:

android:clearTaskOnLaunch="true" 
android:launchMode="singleTop" 

有沒有人遇到這個問題?爲什麼活動可能在獲得結果之前被破壞? 是否有安全的地方把我的觀察員和處理程序(如果活動不安全)?

+1

嗯,你是否正在旋轉另一個活動中的手機?方向更改銷燬/重新創建活動。 – dmon

+0

是的,問題與方向有關。謝謝! – Arseniy

回答

0

嘗試更改啓動模式。當我使用外部活動獲得結果並設置結果時,結果代碼始終取消,當我使用singleTop作爲啓動模式時。將它改爲IE標準就像魅力一樣。也許值得嘗試一下。

相關問題