Usando $ window o $ location para Redirigir en AngularJS

La aplicación en la que estoy trabajando contiene varios estados (usando ui-router), donde algunos estados requieren que inicies sesión, otros están disponibles públicamente.

He creado un método que verifica válidamente si un usuario ha iniciado sesión, con lo que actualmente tengo problemas es en realidad redirigir a nuestra página de inicio de sesión cuando sea necesario. Cabe señalar que la página de inicio de sesión no se encuentra actualmente dentro de la aplicación AngularJS.

app.run(function ($rootScope, $location, $window) {


    $rootScope.$on('$stateChangeStart', function (event, toState, toParams, fromState, fromParams) {

        if (toState.data.loginReq && !$rootScope.me.loggedIn) {
            var landingUrl = $window.location.host + "/login";
            console.log(landingUrl);
            $window.open(landingUrl, "_self");
        }
    });
});

Console.log muestra la url deseada correctamente. La línea después de eso, he intentado prácticamente todo, desde $ window.open a window.location.href y no importa lo que haya intentado, no ocurre la redirección.

EDITAR (RESUELTO):

Encontró el problema.

var landingUrl = $window.location.host + "/login";
$window.open(landingUrl, "_self");

La variable landingUrl se configuró en 'domain.com/login', que no funcionaría con $ window.location.href (que fue una de las cosas que probé). Sin embargo, después de cambiar el código a

var landingUrl = "http://" + $window.location.host + "/login";
$window.location.href = landingUrl;

Ahora funciona.

Respuestas a la pregunta(5)

Su respuesta a la pregunta