Asking for GPS and Internet permissions
Well, you don't need to use nested if statements here, but an if / else if ... chain seems unavoidable.

You can neaten up the code like this.  Note: 12 lines of code instead of 25.

private void loadTabsIfGPSAndInternetAvailable() {
    final Utils utils = new Utils(this);
    if (!utils.isConnected()) {
        utils.generateNoConnectivityAlert();
    } else if (!(new LocationClient(this).hasGPS())) {
        utils.generateNoGPSAlert();
    } else if (androidVersion &gt;= Build.VERSION_CODES.M) {
        requestAllPermissions();
    } else {
        loadCameraAndForecastTabs();
    }
}


However, I suspect that there is something wrong with the logic of your original code ... which would make my refactoring incorrect as well.