@staticmethod
def _conditions_are_true(conditions, media_session_state=None,
    wake_lock_size=None, audio_state=None):
    """Check whether the conditions in ``conditions`` are true.

        Parameters
        ----------
        conditions : dict
            A dictionary of conditions to be checked (see the ``state_detection_rules`` parameter in :class:`~androidtv.basetv.BaseTV`)
        media_session_state : int, None
            The :attr:`media_session_state` property
        wake_lock_size : int, None
            The :attr:`wake_lock_size` property
        audio_state : str, None
            The :attr:`audio_state` property

        Returns
        -------
        bool
            Whether or not all the conditions in ``conditions`` are true

        """
    for key, val in conditions.items():
        if key == 'media_session_state':
            if media_session_state is None or media_session_state != val:
                return False
        elif key == 'wake_lock_size':
            if wake_lock_size is None or wake_lock_size != val:
                return False
        elif key == 'audio_state':
            if audio_state is None or audio_state != val:
                return False
        else:
            return False
    return True
