今天在测试的过程中遇见一个A activity跳转B activity之后,结束B之后回传数据。
使用方法startActivityforForResult(Intent ,requestCode);
然后在onActivityResult中接收处理数据。结果在红米手机上面一直无法得到结束后intent所传的数据
然后调试断点之后发现,在小米手机上面直接调完startActivityForResult方法之后onActivityResult方法立即响应,所以没发拿到数据
原因是在AndroidManifest.xml 中跳转到的页面我自己设置了android:launchMode="singleTask",因为需要传值的 Activity 不容许设置该属性或者 singleInstance,或只能设为标准模式,不然将在 startActivityForResult()后直接调用 onActivityResult()。
解决办法:去掉跳转到的页面的lanchMode属性即可。

解决办法:去掉跳转到的页面的lanchMode属性即可。
本文介绍了一个关于Android Activity间数据传递的问题。当从Aactivity跳转到Bactivity,并尝试回传数据时,在某些设备上(如红米手机)遇到了无法正常获取回传数据的情况。文章分析了问题的原因在于目标Activity的launchMode被错误地设置为了singleTask,并提供了相应的解决方案。
884

被折叠的 条评论
为什么被折叠?



