A method for managing an application program, characterized by comprising: acquiring type information of a first application program running on a foreground of a terminal; and preventing the first application program from being debugged by other application program if the type information of the first application program is preset type information; wherein preventing the first application program from being debugged by other application programs comprises: continuously monitoring the debugging state of the first application program when the type information acquired by the terminal is the preset type information; acquiring, based on a running log of the first application program, identification information of a debugging initiator, which initiates debugging to the first application program, and determining the debugging initiator according to the identification information when it is detected that the first application program enters a debugging state, wherein the identification information comprises a packet name of the debugging initiator; acquiring a pre-stored list of application programs recording identification information of the application programs allowed to debug the first application program; and determining that the debugging initiator is not allowed to debug the first application program, and closing the debugging initiator when the debugging initiator is not contained in the pre-stored list of application programs. acquiring type information of a first application program running on a foreground of a terminal; and preventing the first application program from being debugged by other application program if the type information of the first application program is preset type information; wherein preventing the first application program from being debugged by other application programs comprises: continuously monitoring the debugging state of the first application program when the type information acquired by the terminal is the preset type information; acquiring, based on a running log of the first application program, identification information of a debugging initiator, which initiates debugging to the first application program, and determining the debugging initiator according to the identification information when it is detected that the first application program enters a debugging state, wherein the identification information comprises a packet name of the debugging initiator; acquiring a pre-stored list of application programs recording identification information of the application programs allowed to debug the first application program; and determining that the debugging initiator is not allowed to debug the first application program, and closing the debugging initiator when the debugging initiator is not contained in the pre-stored list of application programs. continuously monitoring the debugging state of the first application program when the type information acquired by the terminal is the preset type information; acquiring, based on a running log of the first application program, identification information of a debugging initiator, which initiates debugging to the first application program, and determining the debugging initiator according to the identification information when it is detected that the first application program enters a debugging state, wherein the identification information comprises a packet name of the debugging initiator; acquiring a pre-stored list of application programs recording identification information of the application programs allowed to debug the first application program; and determining that the debugging initiator is not allowed to debug the first application program, and closing the debugging initiator when the debugging initiator is not contained in the pre-stored list of application programs.