Is it possible that , before you move to the fourth activity once, some value in this code is causeing an exception. (app won't crash as you have caught it)
NewNewDataHelper db=new NewNewDataHelper(this);
List<String> list=db.CheckSettingData();
if(db.CheckSettingData().isEmpty())
try to toast a error message in catch block
maybe your CheckSettingData()
is returning null before you instantiate the 4th activity atleast one time. you might update the question with code for CheckSettingData()