A method of selecting a Voice Over Long Term Evolution, VOLTE, network based on a subscriber identity module, SIM, card performed by a mobile terminal, the method comprising: establishing (S100) a mapping table respectively between Mobile Network Codes, MNCs, and Mobile Country Codes, MCCs, of predetermined Public Land Mobile Networks, PLMNs, and predetermined Identity, ID, values by a Radio Interface Layer Daemon, RILD, for an upper layer service at an Application processor, AP, end of the mobile terminal, and detecting insertion of a SIM card in a real-time manner; acquiring (S200) PLMN information of the SIM card and dynamically looking up the mapping table to determine whether the PLMN information of the SIM card exists in the predetermined PLMNs of the mapping table and whether an update is required when detecting that the SIM card is dynamically inserted into the mobile terminal; acquiring (S300) an ID value of the SIM card according to the mapping table when the PLMN information of the SIM card exists in the predetermined PLMNs of the mapping table and the update is required, and acquiring a default ID value of the PLMN information of SIM card as the ID value when the PLMN information of the SIM card does not exist in the predetermined PLMNs of the mapping table; characterized in that the method comprises: sending (S400) an AT control command and the ID value to a driver layer by a RILD service, the driver layer acquiring and parsing the control command and the ID value, and notifying an upper layer service at a Modulator-Demodulator, MODEM, end through physically sharing a memory; and setting (S500), based on the ID value, a Non-Volatile Random Access Memory, NVRAM, parameter on a bottom layer by the upper layer service at the MODEM end to complete a VOLTE network registration. establishing (S100) a mapping table respectively between Mobile Network Codes, MNCs, and Mobile Country Codes, MCCs, of predetermined Public Land Mobile Networks, PLMNs, and predetermined Identity, ID, values by a Radio Interface Layer Daemon, RILD, for an upper layer service at an Application processor, AP, end of the mobile terminal, and detecting insertion of a SIM card in a real-time manner; acquiring (S200) PLMN information of the SIM card and dynamically looking up the mapping table to determine whether the PLMN information of the SIM card exists in the predetermined PLMNs of the mapping table and whether an update is required when detecting that the SIM card is dynamically inserted into the mobile terminal; acquiring (S300) an ID value of the SIM card according to the mapping table when the PLMN information of the SIM card exists in the predetermined PLMNs of the mapping table and the update is required, and acquiring a default ID value of the PLMN information of SIM card as the ID value when the PLMN information of the SIM card does not exist in the predetermined PLMNs of the mapping table; characterized in that the method comprises: sending (S400) an AT control command and the ID value to a driver layer by a RILD service, the driver layer acquiring and parsing the control command and the ID value, and notifying an upper layer service at a Modulator-Demodulator, MODEM, end through physically sharing a memory; and setting (S500), based on the ID value, a Non-Volatile Random Access Memory, NVRAM, parameter on a bottom layer by the upper layer service at the MODEM end to complete a VOLTE network registration. sending (S400) an AT control command and the ID value to a driver layer by a RILD service, the driver layer acquiring and parsing the control command and the ID value, and notifying an upper layer service at a Modulator-Demodulator, MODEM, end through physically sharing a memory; and setting (S500), based on the ID value, a Non-Volatile Random Access Memory, NVRAM, parameter on a bottom layer by the upper layer service at the MODEM end to complete a VOLTE network registration. <EOS>