Согласно Дэвиду, если isOrentationChnged не установлен в статическое состояние, оно всегда будет ложным, когда ваша деятельность будет воссоздана.
В действительности вам не нужна эта переменная, просто сделайте это в onCreate:
arrGroupelements = (String[][]) getLastNonConfigurationInstance();
if (null==arrGroupelements){
new LongRunning().execute();
} else {
expList.setAdapter(new ExpAdapter(cont));
}
Таким образом, если действие воссоздается, тогда будут использоваться ваши данные, в противном случае будет запущена длительная операция.
Кстати, я не вижу, чтобы вы использовали arrGroupelements в вашемКонструктор адаптера.