You are creating an infinite loop by trying to load:
MainActivity with MainActivity in a tab, with MainActivity in a tab, with MainActivity in a tab, with MainActivity in a tab, with MainActivity in a tab, with MainActivity in a tab, with MainActivity in a tab, with MainActivity in a tab, with MainActivity in a tab,
This is the troublesome line:
TabSpec ts = tabHost.newTabSpec("Home").setIndicator("Home").setContent(new Intent().setClass(this,MainActivity.class));
I have the feeling your full LogCat shows the root cause is a StackOverflowException...
Anyway you need to make a new class, call it "Home", where MainActivity loads the tabs and Home is your default screen.