当我启动Camera意图,我注意到onActivityResult在片段生命周期中的onResume之前被调用.
我也注意到onActivityResult是在onStart之后调用的.
但这里是奇怪的部分:我有变量fileUri ==“一些图像路径”.
这个变量是
在onStart中为NOT NULL.
> onActivityResult中的NULL
> onResume中再次NOT NULL
参见logCat
12-03 14:39:42.418: D/Fragment1(29220): onStart fileUri: file:///mnt/sdcard/OPS_IMAGES/IMG_20121203_143933.jpg
12-03 14:39:42.463: W/PhoneWindow(29220): Previously focused view reported id 2131034140 during save, but can't be found during restore.
12-03 14:39:42.463: D/Fragment1(29220): onActivityResult fileUri is NULL!!!
12-03 14:39:42.468: D/Fragment1(29220): onResume fileUri: file:///mnt/sdcard/OPS_IMAGES/IMG_20121203_143933.jpg
最糟糕的是,这只有50%的时间才发生.另外50%的onActivityResult可以访问fileUri值,没有问题…
我该怎么调试这个?
注意:为了简单起见,我没有包含我的onResume,onStart,onActivityResult方法的代码.它们只是具有变量检查和日志调用的基本方法.如果需要,我会编辑问题并添加这些方法.
注2:我使用谷歌支持库来支持旧API版本上的碎片.