【monkey测试】Fragment not attached to Activity

monkey测试跑出了一个异常:

// CRASH: packgeName (pid)



// Short Msg: java.lang.IllegalStateException



// Long Msg: java.lang.IllegalStateException: Fragment a{422d39d8} not attached to Activity

经过分析和定位,Fragment中一处加载资源报错。

原因是这样的Fragment在Activity中加载前就调用了,获取资源的一些方法。

如:

getResources().getString(R.string.app_name);

如何解决问题呢?

在Fragment中有 isAdded()这个方法,只需要在加载资源前进行判断即可:

if(isAdded()){

        getResources().getString(R.string.app_name);

    }

 

isAdded()官方解释:

final boolean isAdded()
Return true if the fragment is currently added to its activity.

 

解决问题参考:http://stackoverflow.com/questions/10919240/fragment-myfragment-not-attached-to-activity

你可能感兴趣的:(Activity)