適配小米手機startActivityForResult之後直接調用onActivityResult

今天在測試的過程中遇見一個A activity跳轉B activity之後,結束B之後回傳數據。
使用方法startActivityforForResult(Intent ,requestCode);
然後在onActivityResult中接收處理數據。結果在紅米手機上面一直無法得到結束後intent所傳的數據
然後調試斷點之後發現,在小米手機上面直接調完startActivityForResult方法之後onActivityResult方法立即響應,所以沒發拿到數據
原因是在AndroidManifest.xml 中跳轉到的頁面我自己設置了android:launchMode="singleTask",因爲需要傳值的 Activity 不容許設置該屬性或者 singleInstance,或只能設爲標準模式,不然將在 startActivityForResult()後直接調用 onActivityResult()。搜索
解決辦法:去掉跳轉到的頁面的lanchMode屬性即可。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章