'Unity new Input system not being triggered

I'm having a weird issue where any input is not being triggered 'at all'. Pulling my hairs out; can't find out where this is wrong.

Result is that nothing is being written; although all things are set. In the input asset I have added the 'Interact' and 'Application Quit' entries.

Anyone could have a glimpse of what's wrong here ?

public class InputManager : MonoBehaviour
{
    [SerializeField] private InputActionAsset _actions;

    public InputActionAsset actions
    {
        get => _actions;
        set => _actions = value;
    }

    private InputAction quitInputAction { get; set; }
    private InputAction interactInputAction { get; set; }

    private void OnEnable()
    {
        quitInputAction?.Enable();
        interactInputAction?.Enable();
        Setup();
    }

    private void Setup()
    {

        interactInputAction = actions.FindAction("Interact");
        if (interactInputAction != null)
        {
            interactInputAction.started += OnInteract;
            interactInputAction.performed += OnInteract;
            interactInputAction.canceled += OnInteract;
        }
        else
        {
            Debug.LogError("Missing Interact Binding");
        }

        quitInputAction = actions.FindAction("Application Quit");
        if (quitInputAction != null)
        {
            quitInputAction.started += OnAppQuit;
            quitInputAction.performed += OnAppQuit;
            quitInputAction.canceled += OnAppQuit;
        }
        else
        {
            Debug.LogError("Missing Application Quit Binding");
        }
    }

    protected virtual void OnAppQuit(InputAction.CallbackContext context)
    {
        if (context.started || context.performed)
        {
            Debug.Log("Quit");
            Application.Quit();
        }

        else if (context.canceled)
            Debug.Log("Application Quit Cancelled");
    }

    protected virtual void OnInteract(InputAction.CallbackContext context)
    {
        if (context.started || context.performed)
        {
            Debug.Log("Interact");

        }

        else if (context.canceled)
            Debug.Log("Application Quit Cancelled");
    }
}


Solution 1:[1]

You need to run your setup before attempting to enable them:

private void OnEnable()
{
    Setup();
    quitInputAction?.Enable();
    interactInputAction?.Enable();
}

Source: Disco Fever

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1