A sidelink, SL, transmission method, performed by a terminal device and comprising: performing configuration based on first configuration information, so that the terminal device simultaneously works in both a network device scheduling mode, Mode 1, and a terminal device autonomous mode, Mode 2; characterized in that in a case that the Mode 1 and the Mode 2 share the MAC entity, the performing configuration based on first configuration information comprises: defining that the MAC entity performs at least one of following behaviors: if there is no buffer data in currently configured SL logical channels, triggering a sidelink buffer status report, SL BSR, in a case that an SL logical channel on which data arrives corresponds to the Mode 1; if there is buffer data in at least one of currently configured SL logical channels, triggering an SL BSR in a case that an SL logical channel on which data arrives has a higher logical channel priority and the SL logical channel on which data arrives corresponds to the Mode 1; and if a retransmission SL BSR timer expires, triggering an SL BSR in a case that there is buffer data in at least one of currently configured SL logical channels, and an SL logical channel corresponding to the retransmission SL BSR timer corresponds to the Mode 1. performing configuration based on first configuration information, so that the terminal device simultaneously works in both a network device scheduling mode, Mode 1, and a terminal device autonomous mode, Mode 2; characterized in that in a case that the Mode 1 and the Mode 2 share the MAC entity, the performing configuration based on first configuration information comprises: defining that the MAC entity performs at least one of following behaviors: if there is no buffer data in currently configured SL logical channels, triggering a sidelink buffer status report, SL BSR, in a case that an SL logical channel on which data arrives corresponds to the Mode 1; if there is buffer data in at least one of currently configured SL logical channels, triggering an SL BSR in a case that an SL logical channel on which data arrives has a higher logical channel priority and the SL logical channel on which data arrives corresponds to the Mode 1; and if a retransmission SL BSR timer expires, triggering an SL BSR in a case that there is buffer data in at least one of currently configured SL logical channels, and an SL logical channel corresponding to the retransmission SL BSR timer corresponds to the Mode 1. if there is no buffer data in currently configured SL logical channels, triggering a sidelink buffer status report, SL BSR, in a case that an SL logical channel on which data arrives corresponds to the Mode 1; if there is buffer data in at least one of currently configured SL logical channels, triggering an SL BSR in a case that an SL logical channel on which data arrives has a higher logical channel priority and the SL logical channel on which data arrives corresponds to the Mode 1; and if a retransmission SL BSR timer expires, triggering an SL BSR in a case that there is buffer data in at least one of currently configured SL logical channels, and an SL logical channel corresponding to the retransmission SL BSR timer corresponds to the Mode 1.