public void startup(String dataDir, boolean loadElevationData) throws NoDataException, StartupException { if (dataDir == null) { Log.e(TAG, "No external storage available, cannot load GraphHopper data"); throw new NoDataException(); } gh = new GraphHopper().forMobile(); boolean result; try { gh.setEncodingManager(EncodingManager.create(FlagEncoderFactory.DEFAULT, dataDir)); gh.getCHFactoryDecorator().setDisablingAllowed(true); result = gh.setElevation(loadElevationData).setCHEnabled(true).load(dataDir); } catch (Exception e) { Log.e(TAG, "GraphHopper initialization failed", e); throw new StartupException(e); } if (!result) { Log.e(TAG, "GraphHopper initialization failed"); throw new StartupException(null); } }