import android.content.Intent;
import android.nfc.NfcAdapter;
import android.os.Bundle;
-import android.support.design.widget.FloatingActionButton;
-import android.support.design.widget.Snackbar;
import android.support.v4.app.FragmentActivity;
import android.util.Log;
import android.view.KeyEvent;
import android.support.v4.view.GravityCompat;
import android.support.v4.widget.DrawerLayout;
import android.support.v7.app.ActionBarDrawerToggle;
-import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;
import android.view.Menu;
import android.view.MenuItem;
import java.util.Date;
-import de.dhbwloe.campusapp.nfcreader.NfcCardListener;
-
public class CampusApp extends FragmentActivity {
-
private boolean bSearchActive = false;
private CampusAppContext AppContext = null;
@Override
protected void onCreate(Bundle savedInstanceState) {
Log.i("CampusApp", "Event: onCreate");
+
+ if(CampusAppContext.DEBUG) {
+ final Thread.UncaughtExceptionHandler systemExceptionHandler = Thread.getDefaultUncaughtExceptionHandler();
+ final CampusAppCrashHandler oExceptionHandler = new CampusAppCrashHandler();
+ Thread.setDefaultUncaughtExceptionHandler (new Thread.UncaughtExceptionHandler() {
+ @Override
+ public void uncaughtException(Thread thread, Throwable e) {
+ oExceptionHandler.handleUncaughtException(thread, e);
+ //systemExceptionHandler.uncaughtException(thread, e);
+ System.exit(1);
+ }
+ });
+ }
+
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_campus_app);
// Erstelle neuen AppContext, wenn keiner existiert
AppContext = CampusAppContext.getInstance();
if(AppContext == null)
- AppContext = new CampusAppContext(this, R.id.fragment_container);
+ AppContext = new CampusAppContext(this, R.id.fragment_container, R.id.nav_view);
else
AppContext.setMainActivity(this);
// Handle navigation view item clicks here.
int id = item.getItemId();
- switch (id) { // Navigation Items from res/menu/activity_campus_app_drawer.xml
- case R.id.nav_dashboard:
- AppContext.getNavigationManager().navigatePage("Dashboard");
- break;
- case R.id.nav_vorlesungsplan:
- AppContext.getNavigationManager().navigatePage("Vorlesungsplan");
+ for(CampusAppContext.NavigationItem navitem : AppContext.NAVIGATION_TARGETS) {
+ if(navitem.navItemId == id) {
+ AppContext.getNavigationManager().navigatePage(navitem.navTarget);
break;
- case R.id.nav_mensa:
- AppContext.getNavigationManager().navigatePage("Mensa");
- break;
- case R.id.nav_news:
- AppContext.getNavigationManager().navigatePage("News");
- break;
- case R.id.nav_settings:
- AppContext.getNavigationManager().navigatePage("Settings");
- break;
- case R.id.nav_wifi:
- AppContext.getNavigationManager().navigatePage("WifiSettings");
- break;
- case R.id.nav_impressum:
- AppContext.getNavigationManager().navigatePage("Impressum");
- break;
- default:
- return false;
+ }
}
DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
@Override
public void onResume() {
if(AppContext == null)
- AppContext = new CampusAppContext(this, R.id.fragment_container);
+ AppContext = CampusAppContext.getInstance();
+ if(AppContext == null)
+ AppContext = new CampusAppContext(this, R.id.fragment_container, R.id.nav_view);
else
AppContext.setMainActivity(this);