A network channel allocation method, performed by a multi-channel terminal, wherein the method comprises: a) determining, by the multi-channel terminal supporting multiple network channels simultaneously, among a number of network channels candidate network channels based on a network request of a first application, wherein the candidate network channels are a network channel that is of multiple network channels supported by the terminal and on which a communications link port is allowed to be established and network channels on which a communications link port has been established und that do not reach a saturated state; and b1) allocating, by the terminal, a target network channel from the candidate network channels to the first application according to attributes of the first application, wherein the attributes comprise: whether an application has a specified network channel, whether an application is a foreground application, an application priority level, and whether an application has a restricted network channel; wherein b2) the allocating, by the terminal, a target network channel from the candidate network channels to the first application according to the attributes of the first application comprises: b3) determining whether the first application has a specified network channel; and b4) if the first application has no specified network channel, allocating the target network channel from an available network channel of the candidate network channels to the first application, wherein the available network channel is a network channel on which a communications link port is allowed to be established and that is still comprised in the candidate network channels after a target network channel is allocated to a second application. a) determining, by the multi-channel terminal supporting multiple network channels simultaneously, among a number of network channels candidate network channels based on a network request of a first application, wherein the candidate network channels are a network channel that is of multiple network channels supported by the terminal and on which a communications link port is allowed to be established and network channels on which a communications link port has been established und that do not reach a saturated state; and b1) allocating, by the terminal, a target network channel from the candidate network channels to the first application according to attributes of the first application, wherein the attributes comprise: whether an application has a specified network channel, whether an application is a foreground application, an application priority level, and whether an application has a restricted network channel; wherein b2) the allocating, by the terminal, a target network channel from the candidate network channels to the first application according to the attributes of the first application comprises: b3) determining whether the first application has a specified network channel; and b4) if the first application has no specified network channel, allocating the target network channel from an available network channel of the candidate network channels to the first application, wherein the available network channel is a network channel on which a communications link port is allowed to be established and that is still comprised in the candidate network channels after a target network channel is allocated to a second application. b3) determining whether the first application has a specified network channel; and b4) if the first application has no specified network channel, allocating the target network channel from an available network channel of the candidate network channels to the first application, wherein the available network channel is a network channel on which a communications link port is allowed to be established and that is still comprised in the candidate network channels after a target network channel is allocated to a second application.