【monkey测试】Fragment not attached to Activity

monkey测试跑出了一个异常:html

// CRASH: packgeName (pid)

// Short Msg: java.lang.IllegalStateException

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

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

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

如:api

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

如何解决问题呢?app

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

if(isAdded()){
        getResources().getString(R.string.app_name);
    }

 

isAdded()官方解释:spa

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

 

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