Porque no service se utiliza then e no controller utiliza then novamente. Fiquei um pouco confuso quanto a isto, poderia explicar?
Service
realizarLogin : function(dadosDoLogin){
return $http.get(url + "/login", dadosDoLogin).then(function(response){
return response.data;
})
}
Controller
CarroService.realizarLogin(dadosDoLogin).then(function(dados){
$state.go('listagem');
}, function(erro){
$ionicPopup.alert({
title : "Opa!",
template : "E-mail ou senha incorretos"
});
});